CentOS 下apache开启.htaccess 功能教程
一般来说,htaccess文件是Apache服务器中的一个配置文件,它负责相关目录下的网页配置。通过htaccess文件,可以帮我们实现:网页301重定向、自定义404错误页面、改变文件扩展名、允许/阻止特定的用户或者目录的访问、禁止目录列表、配置默认文档等功能。
下面我们就来说说在CentOS系统下,开启.htaccess需注意的几点:
关键都在httpd.conf中,这个配置文件在 /etc/httpd/conf/ ,如果不是centOS话,位置可能不一样,请另行查找吧!
一、是否支持这个模块
在httpd.conf中查找 LoadModule rewrite_module modules/mod_rewrite.so 如果前面为#注释的话,去掉注释,如果没有这句的话查看目录下是否存在文件,存在的话就自己手写吧,如果没有这个文件的话... 就去官网下载或者重装apache。
二、如果你的网站在 网站根目录 请注意<Directory />设置 把里面 AllowOverride None 改为 All 正确形式如下
<Directory />
Options FollowSymLinks
AllowOverride All
</Directory>
三、如果不在根目录,请自行添加虚拟目录并如下设置
<Directory "/var/www/html/222"> #为你网站实际目录
Order allow,deny
Allow from all
AllowOverride All
</Directory>
四、重启apache服务,service httpd restart
经过以上几点可以顺利开启 .htaccess,接下来进行测试:
建立.htaccess文件,并在其中输入:
ErrorDocument 404 /2ky.cn/error.html
建立error.html文件,在其中输入:
我是错误页面!
进入你的网站,随便敲个错误页面,如果能看到 "我是错误页面" ,说明.htaccess启用成功!
- <IfModule mod_rewrite.c>
- Options +FollowSymlinks
- RewriteEngine On
- RewriteCond %{REQUEST_FILENAME} !-d
- RewriteCond %{REQUEST_FILENAME} !-f
- RewriteRule ^(.*)$ index.php/$1 [QSA,PT,L]
- </IfModule>