我需要一些mod_rewrite语法的帮助,目前我有
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?page=$1
当用户访问mydomain.com/testpage时显示mydomain.com/index.php?page=testpage。
我还想做更多的事情,但玩其他的例子却无法做到这一点。
首先,我想让mydomain.com/testpage/像mydomain.com/testpage一样工作,因为尾部斜杠对功能没有影响。
其次,我想添加第二个可能并不总是存在的变量,以便mydomain.com/testpage/testvar显示mydomain.com/index.php?page=testpage&var=testvar
非常感谢任何帮助。
提前致谢。
答案 0 :(得分:0)
您需要一个额外的规则并使尾随斜杠可选:
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ - [L]
RewriteRule ^([\w-]+)/?$ index.php?page=$1 [L,QSA]
RewriteRule ^([\w-]+)/([\w-]+)/?$ index.php?page=$1&var=$2 [L,QSA]