我的.htaccess中的条目是这样的:
RewriteRule ^$ dubai/ [R]
RewriteRule ^dubai/$ page/index.php [L]
RewriteRule ^$ pakistan/ [R]
RewriteRule ^pakistan/$ page/index.php [L]
基本上我想制定一个可以处理国家作为重写的一部分的规则,上面的代码是多余的,可能导致文件不必要地增长。
如果网页适用于任何国家/地区,是否可以自动将网页重定向到page/index.php
?我尝试将这一行放在上面的最后一行:
RewriteRule ^([a-zA-Z\/]*)/$ page/index.php
我的问题是它不再读取其他要服务的页面的后续规则。以下行是上面最后一个规则下面的规则样本:
RewriteRule ^([a-zA-Z\/]*)rent/$ page/index.php?methodcall=rent&for=Rent
RewriteRule ^([a-zA-Z\/]*)landlords/$ page/index.php?methodcall=landlords
如果我删除了最后一次重写,则正确读取了密钥变量,会发现index.php文件不再读取get变量。
有什么建议吗?
提前致谢!
答案 0 :(得分:4)
试试这个:
RewriteEngine on
RewriteRule ^([a-z]+)(\/?)$ page/index.php [NC,QSA,L]
RewriteRule ^([a-z]+)/rent(\/?)$ page/index.php?methodcall=rent&for=Rent [NC,QSA,L]
RewriteRule ^([a-z]+)/landlords(\/?)$ page/index.php?methodcall=landlords [NC,QSA,L]