Apache-2.2
Apache 沒有響應配置更改
我有一個在 Ubuntu 12.04.4 LTS 上執行最新 2.2 版本的 Apache 伺服器。我沒有更改大部分配置。一開始一切正常,但現在它沒有註意到其配置有任何變化。
例如,這裡是一個
.htaccess
文件。<IfModule mod_rewrite.c> RewriteEngine on RewriteRule myfile [F] Header set X-Asdf rewrite_found </IfModule>
這根本沒有效果(即使我確實有
mod_rewrite
),也沒有在.htaccess
.另外,我將此添加到
httpd.conf
:ServerSignature Off ServerTokens Prod
也完全沒有效果。
我試過這些東西,沒有任何效果:
service apache2 reload
service apache2 restart
- 重啟機器
- 添加到
httpd.conf
:<Directory *> AllowOverride All </Directory>
Apache 仍在讀取配置,因為那裡出現的任何語法錯誤都會在重新載入時報告錯誤。
什麼可能導致這種情況?
編輯:
root@my-server:~# apachectl -S VirtualHost configuration: wildcard NameVirtualHosts and _default_ servers: *:80 is a NameVirtualHost default server 127.0.0.1 (/etc/apache2/sites-enabled/000-default:1) port 80 namevhost 127.0.0.1 (/etc/apache2/sites-enabled/000-default:1) Syntax OK
我自己將這個答案發佈為Shane Madden,他在評論中沒有告訴我這一點。
/etc/apache2/sites-enabled/000-default
修復方法是對而不是進行更改httpd.conf
,因為前者是在後者之後讀取的,因此那裡的指令會覆蓋。