我试图让我的PHP脚本网址友好。我的脚本是root。
这些网址:
http://www.example.com/foo/blah
http://www.example.com/foo/bar
http://www.example.com/foo/snoopy
正在改写:
RewriteRule ^foo/([0-9a-zA-Z-+]+)$ ./script.php?x=$1 [L,QSA]
这样做很好,我的剧本正在变得越来越糟糕"等等。 "杆"和#34;史努比"一切都进入了x param。
但如果我尝试这个网址:
http://www.example.com/foo
我得到了404.如何重写script.php?x = all then?
另外,我对类似的网址提出了一些旧请求:
http://www.example.com/foo/?oldstuff=2&oldid=55
如果将oldid参数设置为:script.php?x=55
如果未设置oldid param,我想重定向到script.php?x=all
。我在这里不关心其他参数。
仍然保持最重写?
答案 0 :(得分:0)
对于http://www.example.com/foo
,在模式中的斜杠后面加上一个问号:
RewriteRule ^foo/?([0-9a-zA-Z-+]+)$ ./script.php?x=$1 [L]
对于查询参数,请查看http://httpd.apache.org/docs/trunk/rewrite/remapping.html#rewrite-query。手册中有例子。