可以检查.htaccess文件的代码并让我知道它有什么问题以及为什么它不起作用?
Options +FollowSymLinks
RewriteEngine on
RewriteRule ^itinerary/([a-zA-Z0-9_-]+)/([0-9]+)\$ itinerary-details.php?tId=$2
我想重写网址如下:
www.domain.com/itinerary-details.php?tId=2&tName=agra-delhi-tour
到
www.domain.com/itinerary/2/agra-delhi-tour
和
www.domain.com/itinerary-details.php?page=1&tId=2&tName=agra-delhi-tour
到
www.domain.com/itinerary/2/agra-delhi-tour/1
请帮我这样做。
由于
答案 0 :(得分:0)
似乎你的正则表达式中的两个部分是相反的。这适用于您的两种情况:
^itinerary/([0-9]+)/([a-zA-Z0-9_-]+)/?(.*) itinerary-details.php?tId=$1&tName=$2&page=$3
我也注意到你正在逃避$
,这也会导致问题。
答案 1 :(得分:0)
通过httpd.conf
启用mod_rewrite和.htaccess,然后将此代码放在.htaccess
目录下的DOCUMENT_ROOT
中:
Options +FollowSymLinks -MultiViews
# Turn mod_rewrite on
RewriteEngine On
RewriteBase /
RewriteRule ^itinerary/([^/]+)/([^/]+)/?$ /itinerary-details.php?tId=$1&tName=$2 [L,QSA,NC]
RewriteRule ^itinerary/([^/]+)/([^/]+)/([^/]+)/?$ /itinerary-details.php?page=$3&tId=$1&tName=$2 [L,QSA,NC]