htaccess显示缩短网址

时间:2013-05-20 21:49:54

标签: php apache .htaccess

我正在使用.htaccess将长网址缩短为更短的漂亮网址 像

www.dom.com/trol to http://www.newdom.com/blog.php?type=user&user=trol

工作正常。但它显示了浏览器的长网址。如何在浏览器地址字段中显示短网址?

我正在使用:

RewriteCond %{HTTP_HOST} ^dom\.com$ [OR]
RewriteCond %{HTTP_HOST} ^www\.dom\.com$ 
RewriteRule ^(.*)$ http://www.newdom.com/blog.php?type=user&user=$1 [NC]

1 个答案:

答案 0 :(得分:2)

规则目标的http://www.newdom.com部分隐式地使重写引擎重定向浏览器。这意味着浏览器窗口顶部的URL将会更改。如果您想重定向到新域,请确保执行此操作而不进行重写

RewriteCond %{HTTP_HOST} ^dom\.com$ [OR]
RewriteCond %{HTTP_HOST} ^www\.dom\.com$ 
RewriteRule ^(.*)$ http://www.newdom.com/$1 [L,R=301]

这会将http://www.dom.com/trol重定向到http://www.newdom.com/trol,以及将要在浏览器的地址栏中显示的内容。然后,在newdom.com文档根目录上,您在内部进行重写:

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /blog.php?type=user&user=$1 [L]

没有http://www.newdom.com,没有重定向,也没有更改浏览器的地址栏。