2017-01-02 34 views
1

在過去的兩個月中,我一直在我的日誌中看到這組錯誤。Apache通知/ Django網站出錯

[core:notice] AH00094: Command line: '/usr/sbin/httpd -D FOREGROUND' 
[mpm_prefork:notice] AH00173: SIGHUP received. Attempting to restart 
[so:warn] AH01574: module wsgi_module is already loaded, skipping 
[auth_digest:notice] AH01757: generating secret for digest authentication ... 
[lbmethod_heartbeat:notice] AH02282: No slotmem from mod_heartmonitor 
[mpm_prefork:notice] AH00163: Apache/2.4.23 (Amazon) mod_wsgi/3.5 Python/3.4.3 configured -- resuming normal 

在一段時間後,我還能看到這個SIGHUP收到前行。

[cgi:error] AH02811: script not found or unable to stat: /var/www/cgi-bin/php 

這些組通知的/錯誤發生每天1-3次。我對Apache不太瞭解,誰能告訴我這些消息的含義以及我如何解決這個問題。

一些額外的信息:我使用AWS Elastic Beanstalk(Amazon Linux)與Django 1.8一起運行網站。

回答

0

消息:

[so:warn] AH01574: module wsgi_module is already loaded, skipping 

意味着你必須LoadModule指令爲wsgi_module在你的Apache配置文件中多次出現。當它已經在與模塊相關的配置文件中找到時,您可能已將其添加到站點文件。

消息:

[cgi:error] AH02811: script not found or unable to stat: /var/www/cgi-bin/php 

意味着你可能有一個全球性的AddHandlerAddFilter或映射資源的任何要求與.php擴展到PHP類似。特別是作爲過濾器完成時,即使您只運行Django站點,也會觸發以.php結尾的任何請求。隨着人們探索您的網站以查找PHP漏洞,對.php文件的請求將會出現。您應該找到PHP配置並將其註釋掉。

不知道mod_heartmonitor消息,但從來沒有見過它導致問題。

只有其他的東西可以看到錯誤的是,你使用的是古代版本的mod_wsgi。版本3.5實際上是五年前的一個版本,超過了50個版本。你不應該使用這樣一箇舊版本的mod_wsgi。它不被任何人支持。