初试Apache的重写模块

URL重写(Rewrite)是截取传入web请求并自动重定向到其他的URL的过程

URL重写在SEO(search engine optimization)搜索引擎优化是有很大的好处的,可以更好的利于搜索引擎的蜘蛛进行抓取.
重写的好处可以分为三点:

  1. 利于SEO
  2. 用户体验
  3. 给攻击(非DDOS/CC)造成阻碍

要使用Apache的重写模块,要先在httpd.conf中将LoadModule rewrite_module modules/mod_rewrite.so前的#号去掉(去掉注释.#号是shell风格的注释),Apache默认是不开启rewrite模块的.(开启之后,要重启Apache才能正常使用rewrite模块)
1.jpg

然后在对应网站的配置中设置AllowOverride All,如果此项配置为none,则.htaccess配置不会生效
2.jpg

在网站根目录中新建一个.htaccess文件,用于书写重写规则.(windows下是新建不了这个文件的,可以通过编辑器或者命令行中输入echo >.htaccess完成新建)
3.jpg

书写重写规则如下:

#open rewrite 
RewriteEngine on
#rewrite index.html to index.php(rewrite rule 伪静态把index.php重写成index.html
RewriteRule index.html index.php
#重写规则 将index.html结尾的网址重写为index.php
RewriteRule index\.html$ index.php [NC]
#NC代表的是大小写不敏感.
RewriteRule test.html$ index.php [NC]
#可以有多条重写规则.

上面的规则是将index.html重写为index.php,访问之前新建一个index.php文件,"",此时我们访问网站:
4.jpg

发现是可以成功的将index.html重写为index.php的.[#祝贺祝贺#]

2016年12月17日23:34:45
本人是个PHP菜鸟,也希望能学习到更多东西,如有错误之处请留言指出,万分感谢.

posted @ 2018-04-22 12:12  Masker。  阅读(99)  评论(0编辑  收藏  举报