2014-05-11 36 views
0

我試圖強制WWW。在Apache的httpd.conf文件中,不是.htaccess,以提高性能。但是,當我將這些行粘貼到httpd.conf的第一行並重新啓動服務器時,Apache說:「請求的操作失敗!」。嘗試強制WWW時,Apache不啓動。在httpd.conf

RewriteEngine on 
RewriteCond %{HTTP_HOST} !^www\. 
RewriteRule^http://www.%{HTTP_HOST}%{REQUEST_URI} [R=301,L] 

爲什麼會發生這種情況,我該如何解決這個問題?

+0

你從哪裏瞭解到這種性能提升? – Stijn

+0

@Stijn Apache官方文檔。 –

+0

這是一個相當小的性能增加,你可能會有其他重寫,你會想成爲特定於應用程序。只要你這樣做,你會失去任何微不足道的增加,把它放在httpd.conf –

回答

0

好像你正試圖在不加載模塊的情況下重寫。無論如何,這種事情通常更適合在VirtualHost中進行配置,因爲您正在映射某個站點的重寫。 你得到的錯誤基本上只是意味着你有一個語法錯誤。

<VirtualHost *:80> 
<IfModule mod_rewrite.c> 
    RewriteEngine On 
    RewriteCond %{HTTP_HOST} !^www\. 
    RewriteRule^http://www.%{HTTP_HOST}%{REQUEST_URI} [R=301,L] 
    </IfModule>  
</VirtualHost> 
+0

我取消了註釋重寫模塊,現在服務器啓動,並WWW。被迫。但是,在取消註釋模塊之前,我複製並粘貼了您的代碼,但它不起作用。感謝您的建議! –