我的托管中有一个结构文件夹,如:
/public_html/
index.php
aaa.php
bbb.php
ccc.php
我创建了一个文件夹名称“old”,然后将所有旧文件移动到“old”。 Old是一个像old.mysite.com这样的子域名
/public_html/
/old/
index.php
aaa.php
bbb.php
ccc.php
但是,我的网站已经有很多帖子的Google Index
http:/mysite.com/yyyy/dd/example-example-example-abc
http:/mysite.com/yyyy/dd/example-example-example-abc1
http:/mysite.com/yyyy/dd/example-example-example-abc2
.....
http:/mysite.com/yyyy/dd/example-example-example-abc3
我想将所有网址重定向到
http:/old.mysite.com/yyyy/dd/example-example-example-abc.
http:/old.mysite.com/yyyy/dd/example-example-example-abc1.
http:/old.mysite.com/yyyy/dd/example-example-example-abc2.
.......
http:/old.mysite.com/yyyy/dd/example-example-example-abc3.
当我将所有文件移动到“旧”时,Google不是该链接的索引,当访问者点击旧链接时,它将显示“404 Page Not Found”。
我怎么能用.htaccess做到这一点?非常感谢你!
答案 0 :(得分:0)
如果您正在查看永久性网址更改,则需要HTTP 301 redirect。
如何在.htaccess文件中执行此操作取决于您重定向的URL数量,以及重定向整个目录时是否存在任何冲突。
要重定向单个网址,请添加类似于以下内容的行
redirect /2013/11/example http://old.mysite.com/2013/11/example
重定向整个目录
redirect /2013/11 http://old.mysite.com/2013/11
答案 1 :(得分:0)
有几种方法可以实现您想要的效果。谷歌索引的一个方面是响应代码。确保响应为“301 Moved Permanently”。检查http://httpd.apache.org/docs/current/rewrite/remapping.html以获取apache文档。
我认为这可行:
RewriteRule ^(.*)$ http://old.mysite.com/2013/11/$1 [R=301,L]