htaccess重定向与Get和扭曲

时间:2014-03-27 19:16:20

标签: .htaccess redirect get

我正在尝试重定向来自

的表单生成的网址

http://domain.co.uk/check.php?s=WUD092050549Ehttp://domain.co.uk/s/WUD092050549E.html

我试过

RewriteEngine On
RewriteRule ^([a-zA-Z0-9_-]+)/s/$ check.php?s=$1

RewriteEngine On
RewriteRule ^f/([^-]*)\.html$ /check.php?s=$1 [L]

没有成功。我也想知道是否有办法允许人们在同一个url结构中指定格式,即

http://domain.co.uk/check.php?s=WUD092050549&format=jsonhttp://domain.co.uk/s/WUD092050549E.json


修改

我已经提出了以下似乎可以将网址重写回原来的位置

RewriteEngine on 

RewriteCond %{QUERY_STRING} ^(.*)$ 
RewriteRule ^([^.]+).([^?]+)$ /s/check.php?s=$1&format=$2

但我无法理解,当表单发送http://domain.co.uk/check.php?s=WUD092050549E&format=html时,它会重定向到漂亮的网址。

2 个答案:

答案 0 :(得分:0)

以下内容对您有用:

RewriteEngine On
RewriteCond %{THE_REQUEST} ^(GET|POST)\ /check\.php\?s=(.*)&format=(.*)\ HTTP
RewriteRule ^ /s/%2.%3\? [R,L]

答案 1 :(得分:0)

您可以使用此规则:

RewriteEngine On
RewriteRule ^s/([\w-]+)\.(.+)$ check.php?s=$1&format=$2 [L,QSA,NC]