我试图将所有请求重定向到 ./index.php?site=$1 而我只想使用最后一个斜杠后面的部分。
所以我想www.mydomain.com/firstpage
成为www.mydomain.com/index.php?site=firstpage
和 www.mydomain.com/subfolder/anotherpage 成为www.mydomain.com/subfolder/index.php?site=anotherpage
但是现在www.mydomain.com/subfolder/anotherpage
变成
www.mydomain.com/index.php?site=subfolder/anotherpage
这就是我所拥有的:
RewriteEngine on
Options +SymlinksIfOwnerMatch
RewriteBase /
RewriteCond %{HTTP_HOST} ^mydomain.com$ [NC]
RewriteRule ^(.*)$ http://www.mydomain.com/$1 [R=301,L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /index.php?site=$1 [L]
我能做些什么来只重定向最后一个斜杠之后的部分?
太感谢了!
解决方案:
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule (.*/)?([^/]+)$ $1index.php?site=$2 [L]