是否可以重写网址以使网页保持不变并且网址本身被分配?
E.G:
我在www.example.com/sales有一个页面
我希望此网址显示在地址栏中,如www.example.com/sales_and_repairs
我不是要将www.example.com/sales上的页面重定向到www.example.com/sales_and_repairs上的另一页....只有一页 - 它只是我想要更改的网址因此,如果某人在www.example.com/sales中输入内容,他们将转到该页面,但地址栏中的网址将更改为显示为www.example.com/sales_and_repairs
重写规则可以实现吗?我查过的Anytjhing似乎暗示你必须重定向到第二页 - 但这不是我想做的 - 我只是想改变实际的URL。
有什么建议吗??
答案 0 :(得分:2)
如果您想永久地将www.example.com/sales_and_repairs重定向到www.example.com/sales,您可以使用.htaccess文件进行操作。
首先,你必须在apache中启用mod_rewrite。
然后将以下内容添加到.htaccess文件中:
Options +FollowSymlinks
RewriteEngine on
Rewriterule ^http://www\.example\.com/sales_and_repairs$ http://www\.example\.com/sales [R=301,NC,L]
此方法允许您在两个网址后面只有一个文件。
但是,如果您想在用户操作后修改网址,可以使用Sparda上面给出的答案进行修改。
答案 1 :(得分:1)
似乎你可以通过javascript实现这一点:
location.hash = 'newurl';
但是这会为网址添加一个锚点。 html5的一些早期功能可以做到这一点,但尚未真正支持:
history.pushState(data, 'title', 'newurl');