<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>一树博客 &#187; Apache</title>
	<atom:link href="http://www.onono.org/tag/apache/feed" rel="self" type="application/rss+xml" />
	<link>http://www.onono.org</link>
	<description>一树的随想、生活与资料存档。</description>
	<lastBuildDate>Thu, 02 Sep 2010 00:13:33 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>win2003下无法运行cronolog原因探究</title>
		<link>http://www.onono.org/2009/12/404.htm</link>
		<comments>http://www.onono.org/2009/12/404.htm#comments</comments>
		<pubDate>Sat, 19 Dec 2009 13:39:19 +0000</pubDate>
		<dc:creator>一树</dc:creator>
				<category><![CDATA[技术文档]]></category>
		<category><![CDATA[Apache]]></category>
		<category><![CDATA[cronolog]]></category>
		<category><![CDATA[win2003]]></category>

		<guid isPermaLink="false">http://www.onono.org/?p=404</guid>
		<description><![CDATA[cronolog官网：http://cronolog.org/ cronolog的安装很简单，把cronolog.exe扔进apache/bin目录就行了，在设置虚拟主机日志的时候，加入相应的格式即可。 问题是，完全正确的设置以后，Apache服务就不能重新启动了，在windows系统日志和Apache日志里都留下了错误信息，windows系统日志的错误信息看了没用，让人摸不到头脑，Apache日志里写的是Access is denied.  : Couldn&#8217;t start ErrorLog process Unable to open logs 初步分析应该是权限不够，什么权限？不外乎就是读和执行，无论是Apache安装目录还是日志存放目录，Apache进程的运行用户都有读写和运行权限，甚至所有磁盘为Apache进程加上读写运行权限，都行不通。显然，排除了NTFS权限导致的权限不够的原因。后来使用Apache自带的rotatelogs也行不通，而且网上千篇一律的说rotatelogs有漏洞，时间久了会产生大量同名的进程，累积起来就导致日志记录失败。 最后在cronolog的网站上仿佛z找到了答案：http://cronolog.org/security.html 在类Unix系统上运行cronolog，通常需要root权限。在查阅一些英文论坛的时候，提问者说在WinXP下运行Apache+cronolog没有问题，完全移植到win2003上就行不通了，win2003特殊在什么地方呢？ 在Apache官方文档上是这样写的：http://httpd.apache.org/docs/2.2/platform/windows.html windows平台上建议新建一个用户，赋予Users权限，让这个用户运行httpd服务。在winXP上，不会考虑权限等问题，因为几乎所有用户安装的应用程序都是administratiors权限。 受此启发，win2003上运行httpd服务的用户是apache，立即为这个用户赋予administratiors组权限，Apache立刻启动成功！在进程中，多了几个cmd.exe和cronolog.exe进程，所属用户正是apache，每份需要切割的日志会产生2个cmd和2个cronolog进程，切割四份日志就产生了16个进程，每个占用1M左右。 问题解决，但是Apache是不建议以administratiors权限运行的，会带来安全风险，linux上也大多建议以nobody运行Apache。windows上运行Apache还是有令人不爽的地方，凑合着用了。]]></description>
			<content:encoded><![CDATA[<p>cronolog官网：<a href="http://cronolog.org/" target="_blank">http://cronolog.org/</a></p>
<p>cronolog的安装很简单，把cronolog.exe扔进apache/bin目录就行了，在设置虚拟主机日志的时候，加入相应的格式即可。</p>
<p>问题是，完全正确的设置以后，Apache服务就不能重新启动了，在windows系统日志和Apache日志里都留下了错误信息，windows系统日志的错误信息看了没用，让人摸不到头脑，Apache日志里写的是Access is denied.  : Couldn&#8217;t start ErrorLog process<br />
Unable to open logs</p>
<p><span id="more-404"></span>初步分析应该是权限不够，什么权限？不外乎就是读和执行，无论是Apache安装目录还是日志存放目录，Apache进程的运行用户都有读写和运行权限，甚至所有磁盘为Apache进程加上读写运行权限，都行不通。显然，排除了NTFS权限导致的权限不够的原因。后来使用Apache自带的rotatelogs也行不通，而且网上千篇一律的说rotatelogs有漏洞，时间久了会产生大量同名的进程，累积起来就导致日志记录失败。</p>
<p>最后在cronolog的网站上仿佛z找到了答案：<a href="http://cronolog.org/security.html" target="_blank">http://cronolog.org/security.html</a></p>
<p>在类Unix系统上运行cronolog，通常需要root权限。在查阅一些英文论坛的时候，提问者说在WinXP下运行Apache+cronolog没有问题，完全移植到win2003上就行不通了，win2003特殊在什么地方呢？</p>
<p>在Apache官方文档上是这样写的：<a href="http://httpd.apache.org/docs/2.2/platform/windows.html" target="_blank">http://httpd.apache.org/docs/2.2/platform/windows.html</a></p>
<p>windows平台上建议新建一个用户，赋予Users权限，让这个用户运行httpd服务。在winXP上，不会考虑权限等问题，因为几乎所有用户安装的应用程序都是administratiors权限。</p>
<p>受此启发，win2003上运行httpd服务的用户是apache，立即为这个用户赋予administratiors组权限，Apache立刻启动成功！在进程中，多了几个cmd.exe和cronolog.exe进程，所属用户正是apache，每份需要切割的日志会产生2个cmd和2个cronolog进程，切割四份日志就产生了16个进程，每个占用1M左右。</p>
<p>问题解决，但是Apache是不建议以administratiors权限运行的，会带来安全风险，linux上也大多建议以nobody运行Apache。windows上运行Apache还是有令人不爽的地方，凑合着用了。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.onono.org/2009/12/404.htm/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
