改变可选参数的 htaccess
Altering htaccess for optional parameters
我有一个 htaccess 重写规则,允许使用正斜杠传递 3 个参数。第三个参数是可选的。我现在正在尝试更改它以获得第四个可选参数。
RewriteRule ^.*$ - [NC,L]
RewriteRule ^([^/]+)/([^/]+)/?(.*)$ index.php?1=&2=&3=&4= [NC,QSA,L] ^^
此代码无法识别第 4 个参数。
所以我尝试了以下方法
RewriteRule ^.*$ - [NC,L]
RewriteRule ^([^/]+)/([^/]+)/([^/]+)/?(.*)$ index.php?1=&2=&3=&4= [NC,QSA,L] ^^
但这会添加一个必需的第 4 个参数,如果第 4 个参数被关闭,它将不起作用。
有什么想法可以将其更改为仅需要 2 个参数,其中第 3 个和第 4 个参数是可选的但已被识别?
如能提供任何帮助,我们将不胜感激!
谢谢。
您可以使用:
RewriteRule ^([^/]+)/([^/]+)(?:/([^/]*)(?:/([^/]*))?)?/?$ index.php?1=&2=&3=&4= [QSA,L]
我有一个 htaccess 重写规则,允许使用正斜杠传递 3 个参数。第三个参数是可选的。我现在正在尝试更改它以获得第四个可选参数。
RewriteRule ^.*$ - [NC,L]
RewriteRule ^([^/]+)/([^/]+)/?(.*)$ index.php?1=&2=&3=&4= [NC,QSA,L] ^^
此代码无法识别第 4 个参数。
所以我尝试了以下方法
RewriteRule ^.*$ - [NC,L]
RewriteRule ^([^/]+)/([^/]+)/([^/]+)/?(.*)$ index.php?1=&2=&3=&4= [NC,QSA,L] ^^
但这会添加一个必需的第 4 个参数,如果第 4 个参数被关闭,它将不起作用。
有什么想法可以将其更改为仅需要 2 个参数,其中第 3 个和第 4 个参数是可选的但已被识别?
如能提供任何帮助,我们将不胜感激!
谢谢。
您可以使用:
RewriteRule ^([^/]+)/([^/]+)(?:/([^/]*)(?:/([^/]*))?)?/?$ index.php?1=&2=&3=&4= [QSA,L]