我正在尝试使用htaccess重写URL。 我需要
1> temp.example.com/save.php?item=xxxxx&id=xxx&type=1
2> temp.example.com/save.php?item=xxxxx&id=xxx&type=2
就像
1> temp.example.com/save/xxxxx/xxx
2> temp.example.com/save/xxxxx/xxx
必须隐藏最后一个参数。
我的htaccess有
RewriteCond %{THE_REQUEST} \s/save\.php\?item=([_0-9a-zA-Z-]+)\s&id=([_0-9a- zA-Z-]+)\s&type=([_0-9a-zA-Z-]+)\s [NC]
RewriteRule ^temp/save/%1/%2/%3? [R=301,L]
RewriteRule ^temp/save/([_0-9a-zA-Z-]+)$/([_0-9a-zA-Z-]+)$/([_0-9a-zA-Z-]+)$ /save.php?item=$1&id=$2&type=$3 [L]
由于
答案 0 :(得分:1)
您可以在root .htaccess中使用这些规则:
RewriteCond %{THE_REQUEST} /save\.php\?item=([^\s&]+)&id=([^\s&]+)&type=([^\s&]+)\s [NC]
RewriteRule ^ save/%1/%2/%3? [R=302,L]
RewriteRule ^save/([\w-]+)/([\w-]+)/([\w-]+)/?$ save.php?item=$1&id=$2&type=$3 [L,QSA,NC]
答案 1 :(得分:0)
RewriteEngine On
RewriteRule ^ save.php /([a-zA-Z0-9 _-] +)/(。)/(。)$ /save.php?id=$1&order_id= $ 2& page_no = $ 3 [L] RewriteCond%{REQUEST_FILENAME}!-d RewriteCond%{REQUEST_FILENAME} .php -f RewriteRule ^(。*)$ $ 1.php
现在您可以通过传递来访问三个参数 temp.example.com/save/par1/par2