我想在两个方向上重写或转发两个网址,因为所使用的软件不允许在被叫网址中进行此更改。
调用的网址为“https://example.com/customerarea/cart.php?a=view”,应转发至https://example.com/cart/,并将其重写为被叫网址。
将“cart /”重写为“customerarea / cart.php?a = view”:
RewriteRule ^cart/$ customerarea/cart.php?a=view [QSA,L]
此规则有效。
如果我添加以下条件和规则从“customerarea / cart.php?a = view”转发到“cart /”,它会以连续循环结束。
RewriteCond %{REQUEST_URI} ^/customerarea/cart.php$
RewriteRule ^(.*)$ https://example.com/cart/ [R=301,L]
答案 0 :(得分:1)
你需要2个这样的规则:
RewriteCond %{THE_REQUEST} \s/+customerarea/cart\.php\?a=view [NC]
RewriteRule ^ /cart/? [R=301,L]
RewriteRule ^cart/$ /customerarea/cart.php?a=view [QSA,L]