将网址转发到其他位置

时间:2014-01-13 22:52:23

标签: .htaccess forwarding

我有一个没有网站的域名,但我想使用该域名转发到我有网站的网址。 .htaccess文件是否可行?

例如,我有域example.com,并希望根据子目录进行不同的转发:

www.example.com - > www.test.com

www.example.com/membership - > www.test.com/membership

3 个答案:

答案 0 :(得分:1)

如果您使用的是Apache,则可以将此信息直接存储在服务器配置中。

此处的文档:http://httpd.apache.org/docs/current/rewrite/remapping.html

如果这是您首选的方法,您也应该能够直接在.htaccess文件中使用上述任何示例。

如果是永久移动,在服务器配置中实现重定向可能更好,但.htaccess文件应该没问题。

编辑:我添加了要添加到.htaccess的代码,第一个将所有流量重定向到新域,第二个重定向到新域,同时保留子目录路径。

重定向全部:

Options +FollowSymLinks
RewriteEngine on
RewriteRule (.*) http://www.newdomain.com/ [R=301,L]

维护子目录路径:

Options +FollowSymLinks
RewriteEngine on
RewriteRule (.*) http://www.newdomain.com/$1 [R=301,L]

答案 1 :(得分:0)

您可以使用mod_rewrite将所有内容引导到index.php?path=$1,并使用header('Location: <URL>');在那里做出明智的决定,以防您以后需要更改它或者您有一些非常具体的要求。

否则,.htaccess应该没问题。 (对于简单的重定向可能更好)

答案 2 :(得分:0)

是的,如果您安装了Apache服务器,则可以使用.htaccess。

RewriteEngine on
RewriteCond %{HTTP_HOST} ^www.example.com[nc]
RewriteRule ^(.*)$ http://www.test.com/$1 [r=301]

您也可以在其他网络服务器上以类似方式执行此操作,例如nginx或lighttpd。

重写规则是从here生成的。