Htaccess RewriteRule在url端添加HTTP / 1.1

时间:2015-08-14 10:35:10

标签: php regex apache .htaccess mod-rewrite

我需要这个网址:
    www.99bankinfo.in/index.php?bank=AxisBank


    www.99bankinfo.in/AxisBank

但看起来是这样的:
    www.99bankinfo.in/AxisBank%20HTTP/1.1 /

我的.htaccess代码:

Options +FollowSymLinks
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond $1 !^(index\.php|robots\.txt)

RewriteRule ^(.*)$ index.php?/$1 [L]

# Redirect non-www to www
RewriteCond %{HTTP_HOST} !^www\.(.*)
RewriteRule (.*) http://www.%{HTTP_HOST}/$1 [R=301,L]

RewriteCond %{THE_REQUEST} ^(GET|POST|HEAD)\ /index\.php\?bank=([^&]+)
RewriteRule ^ /%2/? [L,R=301]

请建议任何解决方案,我被困了几天...... 提前谢谢。

1 个答案:

答案 0 :(得分:0)

您需要在上次重定向规则中调整正则表达式:

Options +FollowSymLinks
RewriteEngine On
RewriteBase /

RewriteCond %{THE_REQUEST} ^(GET|POST|HEAD)\ /index\.php\?bank=([^&\s]+)
RewriteRule ^ /%2/? [L,R=301]

# Redirect non-www to www
RewriteCond %{HTTP_HOST} !^www\.(.*)
RewriteRule (.*) http://www.%{HTTP_HOST}/$1 [R=301,L]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond $1 !^(index\.php|robots\.txt)
RewriteRule ^(.*)$ index.php?/$1 [L]

在重写规则之前还要保留重定向规则。