.htaccess 重写包含两个动态参数且可能缺少一个参数的规则
我已经用两个参数重写了这个规则,并且它应该正常工作。 但有时第二个参数可能不存在或为空 我的代码:.htaccess 重写包含两个动态参数且可能缺少一个参数的规则,.htaccess,mod-rewrite,.htaccess,Mod Rewrite,我已经用两个参数重写了这个规则,并且它应该正常工作。 但有时第二个参数可能不存在或为空 我的代码: RewriteRule ^(\d+)/?$ ./index.php?firma=$1 RewriteRule ^(\d+)-(.+)/?$ ./index.php?firma=$1&nimi=$2 第一个$1是数字值 第二个是有字母的 我的问题的例子 我有一个网址: 这很好用 这将很好地工作,并打开同一页。 但由于我有超过250000页,有些页面有2美元的空白部分。 那么生成的U
RewriteRule ^(\d+)/?$ ./index.php?firma=$1
RewriteRule ^(\d+)-(.+)/?$ ./index.php?firma=$1&nimi=$2
第一个$1是数字值
第二个是有字母的
我的问题的例子
我有一个网址:
这很好用
这将很好地工作,并打开同一页。
但由于我有超过250000页,有些页面有2美元的空白部分。
那么生成的URL是:
现在这不显示,它将显示404
我怎样才能修好它 您可以在第一条规则中选择尾随连字符,如下所示:
RewriteRule ^(\d+)-?/?$ ./index.php?firma=$1 [L,QSA]
RewriteRule ^(\d+)-(.+)/?$ ./index.php?firma=$1&nimi=$2 [L,QSA]
在目标URI中重写查询字符串时,建议使用
QSA
标志(查询字符串附加)。您可以在第一条规则中选择尾随连字符,如下所示:
RewriteRule ^(\d+)-?/?$ ./index.php?firma=$1 [L,QSA]
RewriteRule ^(\d+)-(.+)/?$ ./index.php?firma=$1&nimi=$2 [L,QSA]
在目标URI中重写查询字符串时,建议使用QSA
标志(查询字符串附加)