HTTP 错误 403 - 禁止访问
Internet Explorer
-----------------------------------------------------------------------------------------------------
去掉显示友好信息的钩后显示Forbidden You don't have permission to access \ on this server. -----------------------------------------------------------------------------------------------------
apache昨天调试了一下午,都没有解决这个问题,到今天上午,仔细检查了一遍配置文件httpd.conf,找到这么一段: <Directory />
Options FollowSymLinks
AllowOverride None
Order deny,allow
deny from all
Satisfy all
</Directory>
然后试着把deny from all中的deny改成了allow,保存后重起了apache,然后再一测试我的网页,哈哈!居然问题就出在这,访问测试网站完全正常了。
[notice] Disabled use of AcceptEx() WinSock2 API
[notice] mod_python: Creating 8 session mutexes based on 0 max processes and 1000 max threads.
[notice] Child 2380: Child process is running
[notice] Child 2380: Acquired the start mutex.
[notice] Child 2380: Starting 1000 worker threads.
okay,似乎错误不再来了。
问题一、
Apache日志中“指定的网络名不再可用”问题的解决
现象:
[Sat Mar 03 13:29:49 2007] [warn] (OS 64)指定的网络名不再可用。 : winnt_accept: Asynchronous AcceptEx failed.
出现这个故障时硬盘灯狂闪,内存占用极大,访问极慢。
分析:
AcceptEx() 是 Microsoft WinSock v2 API 一组提升网路效率 API 中的指令。而且在 Windows 上似乎蛮有可能出问题的。
注:可能為了效能还是预设為开啟 AcceptEx()
解决:
如果无预警的发生问题,我猜可能是 Windows Update 或是防火墙、防毒软体更新了某些网路原件,造成 Microsoft WinSock v2 API 动作不正常,这时可以把这个功能先给关掉。
依照官方说明 , Win32DisableAcceptEx 这个功能,只有 2.0.49 版以后的才可以使用,所以我猜测 AcceptEx() 这个指令大概也是 2.0.49 才会开始支援(目前最新的就是 2.0.49)。
关掉 AcceptEx() 的方式只要在 httpd.conf 找到 区段,加入 Win32DisableAcceptEx 就可以了。
Win32DisableAcceptEx #加入这一行
ThreadsPerChild 250
MaxRequestsPerChild 0
疑问:如果把AcceptEx()这个关掉了,是否会影响访问的速度;如果影响速度,又怎样不让速度慢下来。
问题二、
apache错误日志里面出现"connection reset by peer"
分析:
这个问题一般是客户端在连接还没有完全建立的时候就取消连接,比如用户按了浏览器上面的“停止”按钮,一般来说没有什么问题。但是如果频繁出现,就表示很多客户端连接到Apache服务器的响应时间太长了,可能是网络的问题或者服务器性能问题。
问题三、
apache错误日志里面提示default.ida或者cmd.exe不存在
分析:
这个说明Internet上面的某些机器中了蠕虫病毒比如Nimda或者Code Red。你可以略过这些错误,因为这些病毒对Apache无效。
问题四、
apache错误日志里面出现"fcntl: F_SETLKW: No record locks available
现象:
服务器挂起,或者不能启动,错误日志里面出现"fcntl: F_SETLKW: No record locks available"或者类似的信息。
分析:
这个是文件锁定问题,表示Apache服务器在尝试使用一个NFS文件系统上面的同步文件。由于使用并行操作模式,Apache服务器在访问某些特定资源的时候需要一些同步机制。其中一种同步机制就是文件锁定,这个需要被锁定文件那端的文件系统要支持锁定机制,所以使用NFS文件系统上面的文件会出现这种问题。
解决:
为了解决NFS文件系统的局限性,可以在配置文件里面加入一行:
LockFile /var/run/apache-lock
这个文件对其他人必须是不能写入的。
注意:Redhat Linux7.x版本以后已经提供了NFS锁定机制,应该不会出现此问题。