2013-04-10 101 views
-4

我的一些页面正在使用IP地址和子文件夹/用户文件夹编入索引。什么是强制所有的流量,例如根文件夹地址的最佳方式:将IP地址和子文件夹重定向到一个新域名

123.456.789.012/~user/path1/path2/ 

重定向到

domainname.com/path1/path2/ 

是它更清晰... 123.456.789.012/~user是我的根域。我需要所有的流量去domainname.com。我不能让新地址显示为domainname.com/~user/,因为该文件夹不是域名地址的一部分。

123.456.789.012/~user ---应完全重定向到 - >domainname.com

+0

使用“.htaccess” – Amirshk 2013-04-10 21:24:05

+0

这通常只会发生,如果你有网站上的IP链接,所以应该修复。 – 2013-04-10 21:27:05

+0

有人用IP地址对链接进行了硬编码,但现在Google拥有了它们,并且仍在向它们发送流量。所以我想将所有流量重定向到新地址,而不是丢失访问者。 – 2013-04-10 21:30:27

回答

1

创建.htaccess文件强制使用您的域:

Options +FollowSymLinks 
RewriteEngine on 

RewriteCond %{HTTP_HOST} !^domainname.com$ [NC] 
RewriteRule ^(.*)$ http://domainname.com/$1 [R=301,L] 

编辑: 或者,也删除~user部分:

RewriteRule ^(?:~user\/)?(.*)$ http://domainname.com/$1 [R=301,L] 
+0

所以我真正的问题是,这是否解决了我无法在domainname.com/之后显示“/〜user /”的事实? – 2013-04-10 21:33:13

+0

@MikeWish我的编辑应该解决这个问题。 – showdev 2013-04-10 21:36:29

+0

因此,您添加的删除/〜user /的最后一行代码是否代替您在第一个代码块中的最后一行? – 2013-04-10 21:39:35

1

启用mod_rewrite的,并通过httpd.conf的.htaccess,然后把这个代码在你.htaccessDOCUMENT_ROOT目录下:

Options +FollowSymLinks -MultiViews 
# Turn mod_rewrite on 
RewriteEngine On 
RewriteBase/

RewriteCond %{HTTP_HOST} !^(www\.)?domain\.com$ [NC] 
RewriteRule^http://domain.com%{REQUEST_URI} [R=301,L] 
+0

所以我真正的问题是,这是否解决了我无法在domainname.com/之后显示“/〜user /”的事实? – 2013-04-10 21:32:38

+0

你在网络服务器上测试了这个答案吗?并澄清你是否希望''/〜user /“'在domainname.com之后显示或不显示? – anubhava 2013-04-11 04:28:22

+0

澄清。该网站的地址为123.456.789.012/~user/。这是该网站的根源。我希望该地址重定向到domain.com。 /〜用户/需要在该重定向和所有其他重定向中移除,例如123.456.789.012/~user/file.pdf。在这种情况下,123.456.789.012/~user/file.pdf需要重定向到domain.com/file.pdf。 – 2013-04-11 13:59:33

1

试试这个,会重定向到/路径1 /路径代替/〜用户/路径1 /路径

Options +FollowSymLinks 
RewriteEngine on 

RewriteCond %{HTTP_HOST} !^domain\.com$ [NC] 
RewriteRule ^~user/(.*)$ http://domain.com/$1 [R=301,L] 
相关问题