我无法从链接domain.com/profile/nick获取$_GET['p']
的值。我正在使用htaccess从漂亮的网址获取参数。有什么问题?
htaccess的:
Options +FollowSymLinks
RewriteEngine On
RewriteCond %{SCRIPT_FILENAME} !-d
RewriteCond %{SCRIPT_FILENAME} !-f
RewriteRule ^profile/([A-Za-z0-9-\+]+)*$ ./profile.php?p=$1 [L]
答案 0 :(得分:0)
尝试关闭MultiViews
:
Options +FollowSymLinks -MultiViews
RewriteEngine On
RewriteCond %{SCRIPT_FILENAME} !-d
RewriteCond %{SCRIPT_FILENAME} !-f
RewriteRule ^profile/([A-Za-z0-9+-]+)/?$ profile.php?p=$1 [L,QSA]
MultiViews
使用选项Apache's content negotiation module
在 mod_rewrite
之前运行,并使Apache服务器匹配文件扩展名。因此/file
可以在网址中,但它会投放/file.php
。