配置步骤如下:
一、开启.htaccess文件
在apache的conf文件中,打开打开httpd.conf
1、把文档中所有的AllowOverride None全部的都给换成AllowOverride All
2、去掉下面的注释
LoadModule rewrite_module modules/mod_rewrite.so
二、htaccess 写法
1、Apache中的.htaccess是放在工程的根目录(www)中,而且在文件的权限还有一定的要求,所以像在linux和unix中的的时候,要设置相关权限,一般把.htaccess必需以ASCII模式上传,最好将其权限设置为644。
.htaccess文件内容如下:
##
# if you want to use mod_rewrite, set this 'On'
RewriteEngine On
# the path to your site installation
RewriteBase /
# Maintenance Section - Uncomment the lines below according to your need
# Write below your client IP address (e.g.: 127.0.0.1)
# if you need to keep your web access during maintenance
#RewriteCond
%{REMOTE_ADDR}
# Choose your way of closing the access to PMF:
# a. you can simply forbid access (HTTP 403 Error)
#RewriteRule
^(.*)$
# b. return the user an explanation
#RewriteRule
^(.*)$
# url canonicalization
RewriteCond %{http_host} ^test.com [NC]
RewriteRule ^(.*)$ http://www.test.com/$1 [L,R=301]
# 404 page
ErrorDocument 404 /404.html
.htaccess文件的创建方法:新建记事本,再另存为即可。
至此301配置OK了,上面配置指把test.com域名301跳转到www.test.com上。
2、 错误文档的定位
401 Authorization Required
403 Forbidden
404 Not Found
405 Method Not Allowed
408 Request Timed Out
411 Content Length Required
412 Precondition Failed
413 Request Entity Too Long
414 Request URI Too Long
415 Unsupported Media Type
500 Internal Server Error
ErrorDocument 404 /errors/notfound.html (命令[ErrorDocument],错误数,对应的界面)
ErrorDocument 500 /errors/internalerror.html
注意:一条指令一行。上述第一条指令的意思是对于404,也找到所的文档的得显示页面为/errors目录下的notfound.html页面。不难看出语法格局为:
3、文档访问的密码保护
AuthGroupFile /dev/null (授权访问的目录)
AuthName EnterPassword
AuthType Basic (授权类型)
4、 拒绝来自某个IP的访问
我不想某个IP访问到站点的,那.htaccess中加入该IP而将它们拒绝在外。
例如:
order allow,deny
deny from 210.10.56.32
deny from 219.5.45.
allow from all
第一行开启如许和拒绝的功能,第二行拒绝某个IP,第三行拒绝某个IP段,也219.5.45.0~219.2.45.255
5、保护.htaccess文档
deny from all
6、 URL转向
或者整个目录的转向:
Redirect 旧目录 新目录
6.2:改变缺省的首页
6.3:防止盗链(界面跳转或301,302跳转)
RewriteEngine on
RewriteCond %{ HTTP_REFERER } !^$
RewriteCond %{ HTTP_REFERER } !^http://(www.)?mydomain.com/.*$ [NC]
RewriteRule .(gif&line;jpg)$ - [F]
觉得让别人的页面开个天窗不好看,那用一张来代替:
RewriteEngine on
RewriteCond %{ HTTP_REFERER } !^$
RewriteCond %{ HTTP_REFERER } !^http://(www.)?mydomain.com/.*$ [NC]
RewriteRule .(gif&line;jpg)$ http://www.mydomain.com/替代名 [R,L]
此处的配置是正则表达式的形式来实现了!