我想从
开始http://domain.site.com/folder/profile.php?name=some_person
更清晰的网址
http://sub1.site.com/folder/some_person
在我的.htaccess中我有相关部分:
#Prevent from overriding actual directories and files
RewriteCond %{SCRIPT_FILENAME} !-d
RewriteCond %{SCRIPT_FILENAME} !-f
# Rewrite user URLs
# Input: folder/NAME/
# Output: profile.php?name=NAME
RewriteRule ^folder/(\w+)/?$ profile.php?name=$1
然而,当我去
http://sub1.site.com/folder/fred
例如(其中fred是有效用户),我得到404页面未找到错误
我做错了什么?谢谢!
答案 0 :(得分:0)
将您的最后一行更改为:
RewriteRule ^folder/(\w+)/?$ profile.php?name=$1
答案 1 :(得分:0)
试试这个:
RewriteEngine On
RewriteCond %{SCRIPT_FILENAME} !-d
RewriteCond %{SCRIPT_FILENAME} !-f
RewriteCond %{HTTP_HOST} ^sub1.site.com$
RewriteCond %{REQUEST_URI} ^/folder
RewriteRule ^/folder/(\w+)/?$ http://domain.site.com/folder/profile.php?name=$1 [QSA]
注意: 如果您认为域名相同,则只需从规则中删除域名。
您可以在此链接中验证您的重写规则: http://martinmelin.se/rewrite-rule-tester/