清理现有网站的URL

时间:2014-09-23 09:24:38

标签: url url-rewriting clean-urls

快速提问,有没有办法清理现有网站的URl?我的意思是说我有一个像http://www.webawwards.com/website?id=320这样的现有链接,但我想把它http://www.webawwards.com/terna

有没有办法可以清理该网址,但是如果链接仍然可以通过当前网址的任何现有链接?

你能用正确的方法指导我吗?谢谢

1 个答案:

答案 0 :(得分:0)

如果您想将网址硬编码到.htaccess文件中,您只需设置静态重定向:

<IfModule mod_rewrite.c>
    RewriteEngine on

    RewriteCond %{QUERY_STRING}  ^id=320(.*)$
    RewriteRule /website$ /terna [L,NC]

    RewriteCond %{QUERY_STRING}  ^id=321(.*)$
    RewriteRule /website$ /somewhere-else [L,NC]
</IfModule>

但是,如果您想让它更灵活(可能让人们更改自己的重定向或类似内容),您需要将其存储在数据库(redirects表,{{1}列中然后当有人查询时,执行此操作(伪代码):

website_id, redirect_url

在PHP中,实际的重定向将使用if (isset( queryString['id'] )) query( SELECT redirect_url FROM redirects WHERE website_id = queryString['id'] ) redirectTo( redirect_url ); exit 完成,查询部分应该足够简单。