我的.htaccess文件重写错误

时间:2014-04-27 19:56:44

标签: php .htaccess

我的.htacces文件有问题。 你能告诉我,我在这里做错了吗?

我将向您展示一些截图:此图显示我的Cpanel我的脚本文件在家中/ lulu / public_html /

enter image description here

另一个问题是:当我点击我的朋友图片他/她的个人资料时,它会显示我的个人资料,但网址是www.ecoshoptr.com/rajesh

enter image description here

最后一个问题是当我点击我的朋友按钮页面时说(不是:我没有朋友文件夹)

<li><a href="<?php echo $base_url.'friends/'.$session_username; ?>">Friends</a></li>

enter image description here

RewriteEngine On RewriteBase / RewriteCond%{HTTP_HOST} ^ ecoshoptr.com $ RewriteCond%{REQUEST_URI}!^ / RewriteRule(。*)http://www.ecoshoptr.com/ $ 1

RewriteRule ^([a-zA-Z0-9 _-] +)$ index.php?id = $ 1 RewriteRule ^([a-zA-Z0-9 _-] +)/ $ index.php?id = $ 1

2 个答案:

答案 0 :(得分:1)

更改以下两行:

RewriteRule ^([a-zA-Z0-9_-]+)$ index.php?id=$1
RewriteRule ^([a-zA-Z0-9_-]+)/$ index.php?id=$1

RewriteRule ^(.*)/?$ index.php?id=$1

您的规则只会重写大写字母a-z的大写字母,下划线,-和数字0-9。网址friends/Name与该规则不匹配,因为其中包含/。我的规则将接受这一点。此外,我在?之后添加/,将两条规则合并到一起,因为它会说它可能在那里而且可能不在那里。

答案 1 :(得分:-1)

如果你把它排除在外,我不会这样做,但[L] param会阻止它进一步改写,因此不会以你的最后规则结束

如果你的apache版本上有可用的话,你可以打开你的RewriteLog

RewriteRule foo bar [L]