apache配置rewrite及.htaccess文件
2016-09-25 15:01
441 查看
转自:http://www.cnblogs.com/banruo/archive/2010/11/02/1867536.html
因为我是用wampserver配置的,用的是thinkphp框架,发现没有运生.htaccess,很不好用啊,然后我用了第一步重启apache就成功了,就是搜索/mod_Rewrite.so。去掉前面的#号!道理就不用说了,一看就明白!为了以后自己会碰到这种问题,先转载吧
今天看到一个哥们的帖子发了个rewrite的帖子,以前也写过一个,配置挺简单的,但当时没注意这个问题,当时没有用到.htaccess文件,在机子上测试了一下,发现确实没法用,于是开始找问题的所在。
自己从头搭建了一下:1. 首先确定您使用的 Apache 版本,及是否加载了 mod_Rewrite 模块。
简单方法 echo phpinfo(); 看apache的mod里有没有rewrite
如果有跳过此步
Apache 1.x 的用户请检查 conf/httpd.conf 中是否存在如下两段代码:
LoadModule Rewrite_module libexec/mod_Rewrite.so
AddModule mod_Rewrite.c
Apache 2.x 的用户请检查 conf/httpd.conf 中是否存在如下一段代码:
LoadModule Rewrite_module modules/mod_Rewrite.so
注:如果前面有#,将其去掉。并且保证你的apache文件里有mod_Rewrite.so文件(1.X版的要有mod_Rewrite.c)。
2. 配置Apache配置文件httpd.conf实现rewrite
找到
<IfModule mod_Rewrite.c>
</IfModule>
没有的自己添加,然后之间写入你的rewrite规则,例如:
<IfModule mod_Rewrite.c>
RewriteEngine On
RewriteRule ^test.htm$ test.php
</IfModule>
3.此时请务必注意,如果网站使用通过虚拟主机来定义,请务必加到虚拟主机配置,即 <VirtualHost> 中去,如果加在虚拟主机配置外部将可能无法使用,重启apache,rewrite配置就完了。
4.让apache支持.htaccess
把<IfModule mod_Rewrite.c>里的代码删除掉
找到
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
把里边的AllowOverride None 改为 Allow Override All 这样.htaccess文件才能启用。
5.创建一个.htaccess文件,win下可以用notepad++之类的编辑器建(记事本不行),要是嫌麻烦此文档附件中有,放在项目目录下,然后在里边写上自己的规则。
RewriteEngine on
Rewriterule ^test.htm$ test.php
6.重启apache就行了
7.一般的apache以上配置就行了,但我的还不行,所以研究了一下apache的配置文件发现了这样一个参数:
AccessFileName access.ht
意思是;AccessFileName定义每个目录下的访问控制文件的文件名,缺省为.htaccess (大多数人直接就是.htaccess,所以好多网上教程都没写这步,而我的是access.ht),可以通过更改这个文件,来改变不同目录的访问控制限制。
将之改为
AccessFileName .htaccess
8.重启apache就行了。
题外:.htaccess位置问题:htaccess文件(或者"分布式配置文件")提供了针对每个目录改变配置的方法,即在一个特定的目录中放置一个包含指令的文件,其中的指令作用于此目录及其所有子目录。(每一个文件夹下都可以有个.htaccess文件)
相关文章推荐
- apache配置rewrite及.htaccess文件(转载)
- Object not found之Apache的Rewrite配置让其支持.htaccess文件
- 详解Apache下.htaccess文件常用配置
- 详解Apache下.htaccess文件常用配置
- WAMP配置笔记,Apache开启.htaccess支持,通过vhost文件管理本地多个站点
- shopex后台提示服务器不是apache,无法使用htaccess文件.请手动启用rewrite,否则无法启用伪静态.
- apache .htaccess文件详解和配置技巧总结
- .htaccess 文件不起作用?| (Apache Rewrite)
- Apache 目录配置文件--[.htaccess]
- apache中使用.htaccess文件缓存图片的配置方法
- Apache 配置文件:.htaccess
- 详解Apache下.htaccess文件常用配置
- 详解Apache下.htaccess文件常用配置
- .htaccess文件的创建 / 联动天下空间伪静态(isapi_rewrite)配置方法
- 通过 Apache 配置 Rewrite 支持 .htaccess
- Apache服务器的htaccess文件配置 rewrite/防盗链/屏蔽爬虫蜘蛛
- Apache 配置文件:.htaccess
- 详解Apache下.htaccess文件常用配置
- 详解Apache下.htaccess文件常用配置
- apache的配置文件.htaccess的理解