2015-07-03 58 views
0

我有這樣的代碼在我htaccess文件:HT訪問重寫規則停止子站點

RewriteEngine On 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 

RewriteRule ^(online-shop)/?$ $1/home [L,NC] 
RewriteRule ^(my)/?$ $1/home [L,NC] 

RewriteRule ^(blog)/(post|tags)/([\w-]+)/?$ index.php?id=$1&type=$2&unique=$3 [L,QSA,NC] 

RewriteRule ^(blog)/(archives)/([0-9]{4})/([0-9]{2})?$ index.php?id=$1&type=$2&year=$3&month=$4 [L,QSA,NC] 

RewriteRule ^([\w/-]+)/?$ index.php?id=$1 [L,QSA] 

它停止域的子站點,並顯示404頁的錯誤,因爲它無法找到的index.php

如何我可以修復子域名嗎?

回答

1

您需要在一個條件中檢查您的域名,以便它僅適用於您的主域名。將example.com替換爲您的域名。

RewriteCond %{HTTP_HOST} ^(www\.)?example\.com [NC] 
RewriteRule ^([\w/-]+)/?$ index.php?id=$1 [L,QSA] 
+0

我的域名中有一個'-'。我需要做'^(www \。)?example \ -uk \ .net' – charlie

+0

或者它只是'^(www \。)?example-uk \ .net' – charlie

+0

對此有何想法? – charlie