通过单击链接重写友好URL不起作用

时间:2013-10-25 06:29:07

标签: apache .htaccess mod-rewrite

我正在尝试将我的网站网址重写为更友好的网址,例如:

  

www.mysite.com/profile.php

  

www.mysite.com/profile

到目前为止,我可以通过在URL地址栏中写入重写URL来实现,但是当通过单击链接转到页面时,配置文件页面URL不会更改为重写URL。我在这里错过了什么吗?

这是我的.htaccess代码

Options +FollowSymLinks
RewriteEngine On    # Turn on the rewriting engine
RewriteRule    ^profile/?$    profile.php    [NC,L]   # Handle requests for "profile"

感谢您的任何建议。

3 个答案:

答案 0 :(得分:1)

您需要更改个人资料的网址..

<a href="http://www.mysite.com/profile">Profile</a>

答案 1 :(得分:0)

mod_rewrite不会更改代码中的网址。你必须这样做。

如果您不能或不想,可以使用RewriteRule R选项从旧网址映射到新网址。

答案 2 :(得分:0)

它没有改变,因为你的规则只在内部重写profileprofile.php,你需要一个不同的规则来执行另一种方式,外部以便浏览器被重定向:

RewriteCond %{THE_REQUEST} \ /profile\.php
RewriteRule ^ /profile [L,R]