2012-11-11 44 views
4

這裏是我的.htaccesshtaccess的缺少www

AddDefaultCharset UTF-8 

<IfModule mod_rewrite.c> 
    RewriteEngine On 
    RewriteBase /xcrud 
    RewriteCond %{REQUEST_FILENAME} !-f 
    RewriteCond %{REQUEST_FILENAME} !-d 
    RewriteRule ^(.*)$ index.php/$1 [L] 
</IfModule> 

除非用戶跳過www作爲URL的一部分,這一切的偉大工程。有沒有簡單的方法來改變這一點,以避免310循環錯誤?一個完整的例子.htaccess將是偉大的,而不是1班輪。謝謝。

+2

這些都是你的重寫規則嗎?這裏沒有證據表明會導致基於所使用的HTTP_HOST的重寫循環。你有沒有其他的重定向到位的www。域已經? –

+0

就是這樣。我的意思是,因爲我是一個noob任何嘗試改變這只是讓我陷入循環條件。所以這上面不會導致循環,但只是404的 – Drew

+0

啓用[RewriteLog](https://httpd.apache.org/docs/2.0/mod/mod_rewrite.html#rewritelog)併發布一些相關的輸出。 –

回答

1

這解決了它。我無法獲得任何301的聲明,但這確實如此。

AddDefaultCharset UTF-8 
<IfModule mod_rewrite.c> 
     RewriteEngine On 
     RewriteBase /demo2 
     RewriteCond %{HTTP_HOST} ^mathpdq\.com 
     RewriteRule ^(.*)$ http://www.mathpdq.com/demo2/$1 [R=permanent,L] 
     RewriteCond %{REQUEST_FILENAME} !-f 
     RewriteCond %{REQUEST_FILENAME} !-d 
     RewriteRule ^(.*)$ index.php/$1 [L] 
</IfModule>