.htaccess文件设置
2015-07-22 10:47
459 查看
1.为使.htaccess有效,需要先做httpd.conf设置
2..htaccess文件设置:
(1)错误文件定位:
常用的客户端哀求错误返回代码: (详见/article/6014366.html)
格式:ErrorDocument 错误代码 /目录名/名.扩展名
(2)文件访问密码保护:
密码保护通过建立.htpasswd文件实现,
①先用apache/bin/htpasswd文件对.htpasswd进行密码设置
②建立.htpasswd文件后,对.htaccess文件进行设置
③设置IP访问限制
(3)URL转向:
格式:Redirect /旧目录/旧文档名 新文档目录/新文档名
(4)设置缺省首页:
格式:DirectoryIndex 缺省首页名
(5)防止盗链
(6)设置伪静态
#打开改写模式 Options FollowSymLinks AllowOverride All #打开重写模式,去掉这行注释 LoadModule rewrite_module modules/mod_rewrite.so
2..htaccess文件设置:
(1)错误文件定位:
常用的客户端哀求错误返回代码: (详见/article/6014366.html)
格式:ErrorDocument 错误代码 /目录名/名.扩展名
#例子: ErrorDocument 404 /errors/404.html #如果提示很少的话,也可以直接在指令中输出错误 ErrorDocument 401 "你权限访问该页面,请抛却!"
(2)文件访问密码保护:
密码保护通过建立.htpasswd文件实现,
①先用apache/bin/htpasswd文件对.htpasswd进行密码设置
htpasswd -cd .htpasswd username #在命令行中运行 #生成的.htpasswd文件内容为: username:密文密码
②建立.htpasswd文件后,对.htaccess文件进行设置
#例子: AuthUserFile c:/www/data/.htpasswd #加密文件的目录 AuthGroupFile /dev/null #授权访问的目录 AuthName Name #可定义 AuthType Basic #授权类型,使用缺省即可 require valid-user #设置可以访问的用户,这里是所有用户 #require设置有3种: #require valid-user 密码文件中任何一位用户 #require user username1[username2[username3..]] 指定用户 #require group groupname 指定用户组
③设置IP访问限制
#例子 order allow,deny #生效规则,先允许后禁止 deny from 210.10.56.32 #禁止某IP访问 deny from 219.5.45. #禁止某IP段访问 allow from all #除上述外,允许所有
(3)URL转向:
格式:Redirect /旧目录/旧文档名 新文档目录/新文档名
#例子 Redirect old/old_name new/new_name #转移文档 Redirect old/ new/ #转移文档目录
(4)设置缺省首页:
格式:DirectoryIndex 缺省首页名
#例子 DirectoryIndex index.php index.html index.htm
(5)防止盗链
#例子 RewriteEngine on #打开重写引擎 RewriteCond %{ HTTP_REFERER } !^$ #空链接 RewriteCond %{ HTTP_REFERER } !^http://(www.)?mydomain.com/.*$ [NC] #保护链接 RewriteRule .(gif&line;jpg)$ http://www.mydomain.com/error.jpg [R,L] #设置替代图片
(6)设置伪静态
#例子 <MODULE mod_rewrite.c> #如果打开重写模式 RewriteEngine On #打开重写引擎 RewriteBase / #设置根目录 RewriteRule ^test_(.*).html$ test.php?id=$1 [L] #设置test.php?id=1变为test_1.html </IFMODULE> #结束
相关文章推荐
- RingtoneManager-获得系统当前的铃声
- 【Java】编写一个方法,对字符串数组进行排序,将所有变位词排在相邻的位置
- C#中如何简单的设置session的过期时间
- Target runtime com.genuitec.runtime.generic.jee60 is not defined的解决方案
- 如何使用ListView?
- MATLAB数值取整
- poj 3020 最短路径覆盖 Antenna Placement
- jquery ajax如何传多个值到后台页面
- 一个demo让你彻底了解Activity launch mode
- GRE写作必备句型
- What are the best practices for building something like a News Feed?
- HOW TO CHANGE SYSADM PASSWORD?
- android 数据传递
- Fragment的限定符
- Java开发常用工具类
- mysql学习之三大子查询(where,from,exist)
- iOS 动态类型isKindOfClass, isMemberOfClass
- [C++设计模式] proxy 代理模式
- PHP运行模式
- Elasticsearch 之 Facet