以下示例說明了我的問題。.htaccess捕獲所有子域&GET作爲GET變量
這是我的.htaccess代碼
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{HTTP_HOST} !^www
RewriteCond %{HTTP_HOST} ^([^\.]+)\.([^\.]+)\.([^\.]+)$
RewriteRule ^(.*)$ /user.php?user=%1
RewriteRule ^user\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ /user.php?path=$1 [L,QSA]
預計:
http://example.com > /index.php
http://example.com/contact > /index.php?path=contact
http://example.com/cat/sub1/sub2 > /index.php?path=cat/sub1/sub2
http://jack.example.com > /user.php?user=jack
http://jack.example.com/contact > /user.php?user=jack&path=contact
http://jack.example.com/cat/sub1/sub2 > /user.php?user=jack&path=cat/sub1/sub2
發生的經過:
http://example.com > OK
http://example.com/contact > It opens user.php?path=contact
http://example.com/cat/sub1/sub2 > It opens user.php?path=cat/sub1/sub2
http://jack.example.com > OK
http://jack.example.com/contact > OK
http://jack.example.com/cat/sub1/sub2 > OK
我試過很多方法,但並沒有解決這個問題。任何幫助?
順便說一句我認爲你在你的規則中將user.php與index.php混淆了。因爲在你的.htaccess中你有兩次。 –