PHP使用Apache的伪静态功能实现“网页404时跳转指定页面
这篇文章主要介绍了PHP使用Apache的伪静态功能实现“网页404时跳转指定页面,这是比较常见的页面,文中的方法可以很好的解决,有需要的同学可以借鉴下。
需求:
1、例如我之前的网站域名是“www.phpfensi.com”,有一个文章的链接是"www.phpfensi.com/article-5-1.html"
2、因为业务调整或其他原因,更改了域名和网站结构,域名变更为“www.phpfensixxxx.com”,那么别人访问"www.phpfensi.com/article-5-1.html"这个文章链接时就访问不到了。出现如下404情况:
解决方案:
1、在网站根目录下新建一个.htaccess伪静态配置文件(也可以在宝塔的伪静态设置里添加),添加如下代码:
- RewriteEngine On
- RewriteCond %{HTTP_HOST} ^(.*)?zy13.net$ //如果域名是zy13.net
- RewriteCond %{REQUEST_FILENAME} !-f //访问的页面(或文件)找不到
- RewriteRule ^(.*)$ http://www.phpfensi.com/$1 [R=302,L] //携带原来的URL参数进行
重定向到新的网址
补充:验证来源网址的伪静态规则
RewriteCond %{HTTP_REFERER} !^http://(.+.)?phpfensi.com/ [NC] //如果来源网址不是*.phpfensi.com