PHP网站实现地址URL重定向
网站建设中,通常会用到网站地址url的重定向,这样的好处是有利于你网站的seo优化,也就是让你的网站实现伪静态,下面简单介绍一下实现的两种方法:
1、在apache配置文件中设置重定向
首先找到apache配置文件httpd.conf,在配置文件中找到下面代码 loadmodule rewrite_module modules/mod_rewrite.so,将其打开(就是将前面#去除)。
然后打开输出phpinfo()函数,如果在模块中开启了mod_rewrite模块,就说明上面一步成功啦,如下图
然后就是配置url规则啦,如果你没有配置apache虚拟主机,请看下面一篇文章
wamp开发环境配置之配置apache虚拟主机
找到apache配置虚拟主机的文件httpd-vhosts.conf,在标签下写上
rewriteengine on
rewritebase /
rewriterule index.php test.php
注意:(1)你想配置哪个虚拟主机的url重定向就在哪个虚拟主机的标签下写
(2)rewritebase 是指你test.php文件的目录,/表示网站的根目录,如果你test.php在a文件夹下,就写/a/
(3)rewriterule 表示匹配规则,这里的意思是当用户进入index.php页面后,自动跳转到test.php页面中,但是网址意思是index.php
2、通过.htaccess文件实现url重定向
第一步还是打开mod_rewrite模块,第二步在apache配置文件中找到标签,在这个标签下将allowoverride none 改为 allowoverride all
然后创建.htaccess(偷偷告诉你,这个读 h-t-access,不要谢我哦),由于window不允许不带文件名的文件,所以我们可以这样创建.htaccess文件
打开记事本,点击另存为,注意编码是ansi,有时候.htaccess文件失效可能就是因为文件编码不对
下面就是在.htaccess文件中编写啦,编写的内容和第一种方式的内容相同
3、url重定向注意事项
首先举个例子,如果我想将index/,blog/重定向到index.php,blog.php中,可以这样写
然后当我们定义好.htaccess中的规则后,需要注意我们原来网站中的js、css、image等的路径可能就会出错,因为他会当你网站的地址为index/时,浏览器会认为你在index这个文件夹中,所有就会在index文件夹中找你的css、js、image等,所有会出错。解决方法就是用绝对路径,就是在你的路径前面加上 / 符号表示从网站的根目录开始搜索这个文件!
此文章属于王业楼的个人博客原创,若要转载请注明出处:王业楼的个人博客 www.ly89.cn