【发布时间】:2017-03-26 05:01:52
【问题描述】:
我成功地重定向了一个页面并且它工作正常,但是当我对其他页面做同样的事情时它不起作用。在不影响 CSS、JS、IMG 的情况下,使用 htaccess 重定向和设置 url 的最佳方法是什么?下面是我用来重定向的代码。
RewriteCond $1 ^
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ search.php?loc=$1&q=$2 [L,QSA]
# Redirect to SEO Friendly Url search page
RewriteCond %{THE_REQUEST} ^[A-Z]{3,}\s/+(?:search\.php)?\?loc=([^\s]+)&q=([^\s]+)? [NC]
RewriteRule ^ /%1/%2? [R=301,L]
#RewriteRule ^([^/]*)/([^/]*)$ /search.php?loc=$1&q=$2 [L]
我的网址是
https://www.zesteve.com/search.php?loc=Guntur&q=manjunath-cake-shop
成功改成
https://www.zesteve.com/Guntur/manjunath-cake-shop
我不希望我的网址显示页面名称search.php
现在我正在尝试更改以下网址
https://www.zesteve.com/vendor.php?city=Hyderabad&type=bakers-and-confectioners&vname=manjunath-cake-shop&vid=87411490256961
到
https://www.zesteve.com/Hyderabad/bakers-and-confectioners/manjunath-cake-shop/87411490256961
下面的代码
# Redirect to SEO Friendly Url Vendor page
RewriteCond %{THE_REQUEST} ^[A-Z]{3,}\s/+(?:vendor\.php)?\?city=([^\s]+)&type=([^\s]+)&vname=([^\s]+)&vid=([^\s]+)? [NC]
RewriteRule ^ /%1/%2/%3/%4? [R=301,L]
RewriteCond $1 ^
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ vendor.php?city=$1&type=$2&vname=$3&vid=$4 [L,QSA]
它不工作我做得对吗?
如果有不懂的请留言
【问题讨论】:
标签: php apache .htaccess redirect