php-使用htaccess文件重定向

编辑:

我想重定向一个URL

到:www.example.com/location/sydney

来自:www.example.com/rss.php?pickup = sydney

问题是我无法从www.example.com/location/sydney获得$_GET [‘pickup’]值,并且位置也会更改,例如:它可能是凯恩斯,伦敦等.我在其中有一个名为rss.php的文件我将从$_GET [‘pickup’]获取值.
我试过了:-重定向/ location http://deals.vroomvroomvroom.com.au/rss.php

但是当我输入网址www.example.com/location/sydney时,它给了我一个网址:-http://deals.vroomvroomvroom.com.au/rss.php/sydney

解决方法:

使用以下命令将.htaccess文件放在位置目录中:

RewriteEngine On
RewriteRule (.*) ../index.php?location=$1&e=1 [L,QSA]

这假定您要用于/ location请求的index.php位于location目录上方的目录中

如果您还需要重定向(www.abc.com/?location=sydney到www.abc.com/location/sydney)才能工作,那么我认为做到这一点的最佳方法是将以下内容添加到(单独的)中.位于DocumentRoot中的htaccess文件:

RewriteEngine On
RewriteCond %{QUERY_STRING} ^(.*)location=([^&]*)(.*) [NC]
RewriteCond %{QUERY_STRING} !&e=1 [NC]
RewriteRule ^(.*)$$1/location/%2?%1%3 [R=301,L,NE]
上一篇:php-使用路由为seo目的隐藏或删除url中的控制器名称= codeigniter


下一篇:整个网站的永久URL查询字符串?