我有以下代码,可以完美地重写和重定向
domain.com/pais.php?nombre=Andorra to domain.com/Andorra /
RewriteEngine On
RewriteCond %{THE_REQUEST} ^GET\s/+pais\.php [NC]
RewriteCond %{QUERY_STRING} (^|&|\?)nombre=(.*)(&|$) [NC]
RewriteRule . /%2/? [R=301,L,NC]
RewriteRule ^([^/]*)/$ /pais.php?nombre=$1 [L]
我需要知道的是用
做同样的事情domain.com/ciudad.php?nombre=Andorra&ciudad=Andorra+La+Vella
应该去
domain.com/Andorra/Andorra+La+Vella/
我不确定如何在重写条件下使用2个变量。
任何人都可以帮助我吗?感谢
答案 0 :(得分:0)
您需要另一套规则,但需要更长的规则才能获得:
RewriteEngine On
RewriteCond %{THE_REQUEST} ^GET\s/+pais\.php [NC]
RewriteCond %{QUERY_STRING} (^|&|\?)nombre=(.*)&ciudad=(.*)(&|$) [NC]
RewriteRule . /%2/%3/? [R=301,L,NC]
RewriteRule ^([^/]*)/([^/]+)/$ /pais.php?nombre=$1&ciudad=$2 [L]
RewriteCond %{THE_REQUEST} ^GET\s/+pais\.php [NC]
RewriteCond %{QUERY_STRING} (^|&|\?)nombre=(.*)(&|$) [NC]
RewriteRule . /%2/? [R=301,L,NC]
RewriteRule ^([^/]*)/$ /pais.php?nombre=$1 [L]