Debian下为Apache启用rewrite模块(htaccess)
如果我们是自己编译的apache,那么启用或禁用某个模块应该说是比较容易的事,只要修改apache的配置文件就可以了。但是我们没有理由不用已经做好的二进制文件进行安装,使用apt-get要方便多了。
但是这样的安装,apache默认会启用一部分模块,一般情况下,它已经满足了大部分的需求。但是我们的需求肯定是不能确定的如我们可能要利用apache实现重定向的功能,我们可能需要alias,rewrite模块。
实际上在apache下有两种类型的模块,一种是事先编译到apache中的,另一种是在你运行apache时载入的模块你可以使用下列命令来检查你的apache已经编译了哪些模块:
apache2 -l
事实上,在apache2的安装目录下,有这样的两个目录:
/etc/apache2/mods-enabled/ 已经被启用的模块
/etc/apache2/mods-available/ 当前系统中可用的模块
这是在apache配置文件中一个片断,很明显它是用来载入各个被启用的模块及其配置文件,也就是位于/etc/apache2/mods-enabled/下的所有以.load 和.conf结尾的文件。
# Include module configuration:
Include /etc/apache2/mods-enabled/*.load
Include /etc/apache2/mods-enabled/*.conf
当然最后不要忘了重启apache:apache2 force-reload
你可以使用下列命令来启用或禁用模块:
a2enmod 模块名
a2dismod 模块名
其实它的动作就是在/etc/apache2/mods-enabled/目录创建或删除一个模块对应的链接文件。当然你也可以手工做这个动作了。
测试你的服务器是否支持rewrite功能,将下面的代码保存为.htaccess文件,上传到网站任一目录下.
Options -Indexes
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteBase /
RewriteRule .*$ http://www.banyue.net
</IfModule>
如果可以打开的的网站..就说明你的rewrite模块已经正常工作啦…
九月 20th, 2008 at 17:03
如果自己对主机有控制权,还是把重写规则直接写到conf里更快。矛盾网所有规则都是直接写到conf里的,.htaccess一般适合租用空间的用户自行设置。
九月 21st, 2008 at 21:49
过几天我也要装个Linux了,楼主的博客不错,收藏了
九月 24th, 2008 at 05:39
没问题了~?~迁移成功~?~
九月 24th, 2008 at 09:58
- -!
那么早起来….还没搬..今天搬
九月 24th, 2008 at 13:51
换好啦~?到底是什么问题?能写如了?
九月 28th, 2008 at 23:49
祝半月节日快乐,身体健康,万事如意~