我们的网站在一段时间(2-3天)后无法从外部访问(非本地主机)。
我们使用Apache HTTP Server 2.4。服务器上托管了4个网站,主要使用端口443使用自签名服务器证书。到目前为止,一切都运行良好。由于我使用Alias指令和PHP添加了一个新网站,过了一段时间所有网站都无法从远程访问。但是,我可以从服务器上的localhost访问它们。
错误日志不再显示网站不再可访问时的任何条目。我们目前通过简单地重新启动Apache HTTP Server来解决问题,一切都恢复正常。问题是,我们需要全天候提供服务。
这是当前的httpd.conf:
Listen 443
SSLSessionCache "shmcb:${SRVROOT}/logs/ssl_scache(512000)"
SSLSessionCacheTimeout 300
<VirtualHost *:443>
DocumentRoot "D:/htdocs"
ServerName myserver.net:443
Alias /site2 "${WEBROOT}/site2"
Alias /site3 "${WEBROOT}/site3"
ScriptInterpreterSource Registry-Strict
Options +ExecCGI +FollowSymLinks -Indexes
DirectoryIndex index.cgi index.html index.php
SSLEngine on
SSLCertificateFile "${SRVROOT}/ssl/server.crt"
SSLCertificateKeyFile "${SRVROOT}/ssl/server.key"
</VirtualHost>
和
LoadModule php5_module "${PHPROOT}/php5apache2_4.dll"
<IfModule php5_module>
AddHandler application/x-httpd-php .php
PHPIniDir "${PHPROOT}"
</IfModule>
有没有人知道在哪里看?非常感谢。
更新
服务器运行了13天,然后由于一些配置更改我们不得不重新启动它。花了一天时间,问题就出现了。我查看了服务器状态页面,但我找不到可能出现问题的线索:
Server Version: Apache/2.4.16 (Win64) OpenSSL/1.0.1p PHP/5.6.12
Server MPM: WinNT
Server Built: Jul 13 2015 12:31:58
Distributed by: The Apache Haus
Compiled with: Visual Studio 2012
Current Time: Tuesday, 06-Oct-2015 11:38:01 Mitteleuropäische Sommerzeit
Restart Time: Sunday, 04-Oct-2015 23:40:51 Mitteleuropäische Sommerzeit
Parent Server Config. Generation: 1
Parent Server MPM Generation: 0
Server uptime: 1 day 11 hours 57 minutes 9 seconds
Server load: -1.00 -1.00 -1.00
Total accesses: 326772 - Total Traffic: 4.2 GB
2.52 requests/sec - 33.8 kB/second - 13.4 kB/request
1 requests currently being processed, 63 idle workers
答案 0 :(得分:1)
AcceptFilter http无 AcceptFilter https none
发生这种情况时,error.log应显示“Asyncroneous AcceptEx Failed”以及“网络名称不再可用”的内容。
这两个指令是Apache 2.2.x中Win32DisableAcceptEx的替代品。