来源:自学PHP网 时间:2015-04-14 14:51 作者: 阅读:次
[导读] 用Linux主机的网站可以通过.htaccess做301跳转,这个大家都很清楚。如果能对.htaccess的规则非常了解的话,那么使用起来肯定得心应手。但是如果不熟悉的话,只能做到只是更换域名不更换...
用Linux主机的网站可以通过.htaccess做301跳转,这个大家都很清楚。 如果能对.htaccess的规则非常了解的话,那么使用起来肯定得心应手。但是如果不熟悉的话,只能做到只是更换域名不更换文件路径的跳转。比如从a域名跳转到b域名,只能做到类似a域名/123.html到b域名/123.html。 但是如果从zblog迁移到wordpress博客程序,那么就需要比如从类似于http://blog.cocold.com/post/25.html 跳转到http://blog.icoa.cn/25.html和从http://blog.cocold.com/catalog.asp?tags=301 跳转到http://blog.icoa.cn/tag/301 等这种更换了域名并更换了博客平台的情况来说就无能为力了。 安装了Wordpress的朋友都知道,Wordpress支持URL静态化。实现的方法就是通过在网站根目录自动创建一个.htaccess的文件,实现所有的url都指向首页index.php。然后在通过首页PHP代码的解析来显示不同的内容。 于是我将blog.cocold.com指向一个linux主机,然后在网站根目录创建.htaccess,把Wordpress创建的.htaccess内容复制出来放进去: # BEGIN WordPress RewriteEngine On RewriteBase / RewriteRule ^index\.php$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ./index.php [L] # END WordPress 然后新建一个index.php放到根目录下,index.php的内容如下:
$pageurl=str_replace("/catalog.asp?tags=","/tag/", $pageurl); $pageurl=str_replace("&page=", "/page/",$pageurl); $pageurl=str_replace("/catalog.asp?date=","/date/", $pageurl); $pageurl=str_replace("-","/",$pageurl); Header("HTTP/1.1 301 Moved Permanently"); header("location: http://blog.icoa.cn/".$pageurl); ?> 这样就可以实现下面的跳转: http://blog.cocold.com/post/25.html 跳转到 http://blog.icoa.cn/25.html http://blog.cocold.com/catalog.asp?tags=301 跳转到 http://blog.icoa.cn/tag/301 http://blog.cocold.com/catalog.asp?date=2011-5 跳转到 http://blog.icoa.cn/date/2011/05 …… 如果还有其他路径依然可以写进去。 完美的实现了从Zblog跳转到wordpress。 原文地址:逍遥博客 |
自学PHP网专注网站建设学习,PHP程序学习,平面设计学习,以及操作系统学习
京ICP备14009008号-1@版权所有www.zixuephp.com
网站声明:本站所有视频,教程都由网友上传,站长收集和分享给大家学习使用,如由牵扯版权问题请联系站长邮箱904561283@qq.com