我有两个参数的Rewriterule,它的工作原理应该如此。 但有时候第二个参数可能不存在或是空白的。
我的代码:
RewriteRule ^(\d+)/?$ ./index.php?firma=$1
RewriteRule ^(\d+)-(.+)/?$ ./index.php?firma=$1&nimi=$2
第一个$ 1是数字值 第二个是带的字母。
我的问题的例子。
我有一个网址:
这样可以正常使用!
这也可以正常工作并打开同一页面。 但由于我有超过25万页,一些页面的2美元部分空白。 然后生成的URL为:
现在这个没有显示,它会说404 我该如何解决?
答案 0 :(得分:0)
您可以在第一条规则中将尾随连字符设为可选:
RewriteRule ^(\d+)-?/?$ ./index.php?firma=$1 [L,QSA]
RewriteRule ^(\d+)-(.+)/?$ ./index.php?firma=$1&nimi=$2 [L,QSA]
建议在重写目标URI中的查询字符串时使用QSA
标志(查询字符串追加)。