我一直在使用' .htaccess'要重写页面网址的外观,而不是: -
details.php?video=how+to+do+this&user=xxx
应该更像这样: -
/details/xxx/how+to+do+this
它的工作和所有,但问题来了;当我尝试添加一个不会一直有用的新的$ _GET类别时,就是"页面"得到变量,因为并非所有视频页面都有这个变量。因此,当我添加此变量时,没有设置任何内容,但它确实显示在URL中。
/details/xxx/how+to+do+this?page=2
以下是我用来重写其中一个面临此问题的页面的实际代码行。
RewriteRule ^user/(.*)/(.*)$ user.php?user=$1&view=$2
答案 0 :(得分:2)
您可以使用:
RewriteRule ^user/(.*)/(.*)$ user.php?user=$1&view=$2 [NC,L,QSA]
QSA | qsappend 当替换URI包含查询字符串时,RewriteRule的默认行为是放弃现有查询 string,并将其替换为新生成的字符串。使用[QSA] flag导致查询字符串被组合。 https://httpd.apache.org/docs/current/en/rewrite/flags.html