我需要转换这3个网址:
1 - Mydomain / view / index.php?make = toyota& model = runner& color = white
2 - Mydomain / view / index.php?make = toyota& model = runner
3 - Mydomain / view / index.php?make = toyota
进入这些:
1 - Mydomain / toyota / runner / white
2 - Mydomain / toyota / runner
3 - Mydomain / toyota
所以我使用了一个在线Mod Rewrite工具生成器并为 FIRST url获取了这个:
RewriteEngine On RewriteRule ^([^ /] )/([^ /] )/([^ /] *)$ /view/index.php?make=$1&model=$2&color= 3美元[L]
当我使用FIRST friently URL时,它工作得很好。然后我只复制并修改了两次RewriteRule并将它们用于其他两个URL,结果如下:
RewriteEngine On
RewriteRule ^([^ /] )/([^ /] )/([^ /] *)$ /view/index.php?make=$1&model=$2& ; color = $ 3 [L]
RewriteRule ^([^ /] )/([^ /] )$ /view/index.php?make=$1&model=$2 [L]
RewriteRule ^([^ /] *)$ /view/index.php?make=$1 [L]
第一个友好的URL仍然可以正常工作。 第二个和第三个URL在500内部服务器错误时停止。
有人会帮忙吗?谢谢!
答案 0 :(得分:0)
您需要排除您要重写的目标uri。要解决循环错误,请在重写行
上的 RewriteEngine 之后立即在htaccess的顶部添加以下内容RewriteRule index\.php$ - [L]