2010-07-08 98 views
0

這是我htacess文件:如何使用htaccess與子域名友好的網址?

RewriteEngine on  
RewriteCond %{HTTP_HOST} !^www\. 
RewriteCond %{HTTP_HOST} ^(.*)\.mydomain\.com(.*) 
RewriteRule .* inside.php?tx=%1&filter=%2 

這個網址:hello.mydomain.com去www.mydomain.com/inside.php?tx=hello 那是正確的。

現在我需要這個網址hello.mydomain.com/bye/去www.mydomain.com/inside.php?tx=hello & filter =再見,但不工作。只去www.mydomain.com/inside.php?tx=hello

這個htaccess忽略了第二個變量(再見)。請幫助。

回答

0

%{HTTP_HOST}只包含主機名(hello.mydomain.com),所以你的第二個反向引用沒有任何內容。改變你的RewriteRule以下應該給你期望的行爲:

RewriteRule ^([^/]*) inside.php?tx=%1&filter=$1 

編輯:要更正您的評論描述的情況,整個規則集應該如下:

RewriteEngine on 
RewriteCond %{HTTP_HOST} !^www\. 
RewriteCond %{HTTP_HOST} ^(.*)\.mydomain\.com(.*) 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteRule ^([^/]*) inside.php?tx=%1&filter=$1 
+0

謝謝對於你的答案 我改變重寫: RewriteRule ^([^ /] *)inside.php?tx =%1&filter = $ 1 但現在這個網址:hello.mydomain.com/bye/轉到: www .mydomain.com來/ inside.php?TX =你好&濾波器= INSI de.php – Steven 2010-07-08 08:28:46

+0

看我的編輯,這應該解決這個問題。 – 2010-07-08 08:41:05

+0

工作正常!謝謝! – Steven 2010-07-08 10:11:50