Apache HTTP Server 版本2.2
这个FAQ的最新版本总是可以从Apache主站点得到,位于<https://httpd.apache.org/docs/2.2/faq/>
如果你的问题在这里没有找到答案,你也可以看看Apache 1.3 FAQ ,看你的问题是否在那里有了答案。
Apache软件基金会(ASF)是一个非营利性组织,它为Apache社区的开源软件项目提供支持。欲知详情,请查看Apache Software Foundation FAQ页面。
Apache HTTP Server(也被称为Apache httpd)是Apache软件基金会的一个创建健壮的、工业级的、功能强大的、开放源代码的HTTP(Web)服务器的项目。欲知详情,请查看About Apache页面。
Apache正在数以百万的网络服务器上运行。它同时经过开发者和用户的充分测试。Apache HTTP Server 项目按照非常严格的标准发布服务器的新版本,并且有70%的WWW服务器在24小时不间断地运行着我们的服务器。一旦有bug被发现,我们将以最快的速度发布补丁程序和新版本。
不可以使用、复制、修改任何来自Apache软件基金会的原始图形。除非满足以下条件:
如果你使用Apache服务器软件遇到了问题,采取以下几步:
/usr/local/apache2/logs/error_log
,但是最后还是看看配置文件中的ErrorLog
指令以确认错误日志在你服务器上的确切位置。Apache拥有一个活跃的、愿意共享知识的用户社区。参与这个社区通常是获得解答的最快最好的办法。
Freenode IRC上的#apache频道也是关于用户支持的。
如果做了以上几个合适的步骤而没有得到解答,那么请务必让httpd的开发者了解这个问题,到这里提交bug报告。
如果你的问题涉及到服务器崩溃并产生了内核dump,请在报告中包含一个backtrace(如果可能)。
因为有数百万用户和区区不到60名志愿开发者,我们无法为Apache提供个体支持。对于免费的支持,我们建议用户参与一个用户论坛。
Apache的专业商业支持可以从许多公司得到。
Apache在可能的平台上使用系统调用sendfile
来加速响应的发送(译者注:Linux2.4/2.6内核都支持)。不幸的是,在某些系统上,Apache会在编译时检测sendfile
的存在,即使它不能正常工作。这经常发生在使用网络或其他非标准文件系统时。
这个问题的表现症状包括上述信息出现在错误日志里及对于非零长度文件请求发送零长度的响应。一般这个问题只发生在静态文件上,因为动态文件通常用不到sendfile
。
要修正这个问题,可用EnableSendfile
指令关闭服务器所有部分对sendfile
的使用即可。同时参看EnableMMAP
指令,对相似的问题有帮助。
如果你在win32系统上得到一个与AcceptEx
系统调用相关的错误信息,参见Win32DisableAcceptEx
指令。
大多数导致这个错误的CGI脚本问题将会向浏览器发送一个"Internal Server Error
"错误信息。要解决这种问题参见:CGI指南。
error_log
中的"Permission denied
"错误伴随一个发送到客户端的"Forbidden
"信息通常表明违反了文件系统的权限,而不是Apache HTTP的配置文件出了错误。检查并确认用于运行子进程的User
和Group
有访问导致问题的文件的足够权限。同时检查一下导致问题的文件所在的目录及其所有父目录是否具有执行(搜索)权限(也就是 chmod +x
)。
最近发行的 Fedora Core 和其它Linux发行版使用了SELinux进行额外的访问控制,违反这些限制也会导致"Permission denied
"消息。参见Fedora SELinux FAQ和Apache SELinux Policy Document以获得更多信息。