繁体   English   中英

使用$ _GET参数的mod_rewrite网址

[英]mod_rewrite url with $_GET parameter

老实说,我看不出mod_rewrite出了什么问题。 我想建立一个基本的社交网络,但我希望用户个人资料网址看起来像子域,例如“ www.mysite.com/user/fred”,而不是“ www.mysite.com/user?u=fred” 。 我的.htaccess页面如下所示:

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([^\.]+)$ $1.php [NC,L,QSA]
RewriteRule    ^user/([A-Za-z]+)/(0-9]+)/?    user?u=$1     [L,QSA]

但是导航到www.mysite.com/user/fred会给我一个404错误。 我从不同的教程网站和stackoverflow问题中尝试了几种不同的方法,但是它们都不起作用。 我知道肯定在服务器上安装了mod_rewrite,因为我检查了php_info(),并且正常URL的重写规则正常工作(“ www.mysite.com/browse”而不是“ www.mysite.com/browse.php” )。

尝试将您的第三和第四行替换为:

RewriteRule ^user/(.*) user.php?u=$1 [QSA]
RewriteRule ^([^\.]+)$ $1.php [NC,L]

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM