- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
.htaccess的重写规则
发表于79 天前 ? 外贸建站分享 ? 暂无评论 ? 被围观 205 views+
.htaccess基本语法和应用
.htaccess是Apache服务器的一个非常强大的分布式配置文件。正确的理解和使用.htaccess文件,可以帮助我们优化自己的服务器或者虚拟主机。
如何启用htaccess
以windows为例,进入apache/conf目录,找到httpd.conf文件,去掉LoadModule rewrite_module modules/mod_rewrite.so前面的#,然后设置目录属性AllowOverride All,重启apache即可
常见格式
下面是一个典型的htaccess文件
# 开启URL重写
RewriteEngine on
# URL重写的作用域
# RewriteBase /path/to/url
# 满足怎样的条件
RewriteCond %{HTTP_HOST} !^www\.example\.com$ [NC]
# 应用怎样的规则
RewriteRule .? %{REQUEST_URI} [R=301,L]
来看看RewriteCond,首先有一个%,因为{HTTP_HOST}是一个apache变量,需要用%来指示。从!开始就是匹配的条件,支持 正则。!表示不等于,这句话的意思就是:如果HTTP_HOST不是。后面的[NC](no case)表示忽略大小写,常见的还有
[L](last):终止一系列的RewriteCond和RewriteRule
[R](redirect):触发一个显示的跳转,也可以指定跳转类型,如[R=301]
[F](forbidden):禁止查看特定文件,apache会触发403错误
典型应用
图片防盗链
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://(www\.)?example\.com/ [NC]
RewriteRule \.(gif|jpg|png)$ - [F]
由于是基于HTTP_REFERER的验证,所以只能防止一般的图片盗链,因为HTTP_REFERER是比较容易伪造的
自定义404错误页面如果用户输入了一个不存在的url,那么就显示自定义的错误页面
ErrorDocument 404 /404.html
# 其他同理
ErrorDocument 500 /500.html
处理移动过的文件
Redirect 301 /old.html /new.html
# 也可以是下面这样
RewriteRule /old.html /new.html [R=301,L]
# 如果想隐式跳转(URL地址不变,但实际上内容是其他URL的),就使用下面的
RewriteRule /old.html /new.html [L]
对于RewriteRule还有好多文章可以做,比如
# 把html后缀的url链接到php文件
# $1指代的是前面第1个用括号括起来的内容
RewriteRule ^/?([a-z/]+)\.html$ $1.php [L]
# 或者把旧文件夹的内容链接到新文件夹
RewriteRule ^/?old_directory/([a-z/.]+)$ new_directory/$1 [R=301,L]
# 隐藏文件名
RewriteRule ^/?([a-z]+)$ $1.php [L]
禁止显示目录列表
如果目录里没有index文件,又没有对该目录做过特别的处理,尤其是windows主机,那么该目录里的内容就会显示出来,这时可以在根目录创建 一个.htaccess文件,然后写上
Options -Indexes
# 就这么一句就搞定了
阻止/允许特定IP/IP段
# 禁止所有IP,除了指定的
order deny,allow
deny from all
# 如果想允许IP段,如 ~ 55,则
# allow from 123.123.123.
allow from 23
ErrorDocument 403 /page.html
Files page.html
allow from all
/Files
#如果想禁止特定IP
deny from 23
添加MIME类型
AddType video/x-flv .flv
# 如果设置类型为 application/octet-stream 将提示下载
AddType application/octet-stream .pdf
您可能关注的文档
- E72教程 如何用原装货mail for exchange来真正实现pushmail.doc
- E6000刀片服务器.doc
- EAD特色功能.doc
- Eclipse+tomcat环境配置.doc
- Eclipse项目的配置过程.doc
- EMC-PowerPath 安装配置手册(WINDOWS)-V1.0.doc
- EMC项目安装通用手册.doc
- emjytug怎样_使用手机在笔记本上上网~详细教程~手把手教你~包教包会呵呵.doc
- eMule_协议.doc
- ESX上特有的命令很多.doc
- 实验活动简单配合物的形成课件-高二下学期化学人教版选择性必修2.pptx
- Unit3SectionB(1a-1e)课件人教版八年级英语上册.pptx
- Module6Unit2课件外研版英语九年级上册.pptx
- 第2课これは本です课件-高中日语新版标准日本语初级上册.pptx
- 山西省临汾部分学校2024-2025学年高一下学期期末联考试题政治.docx
- 第19课北洋军阀统治时期的政治经济与文化(互动型课件)-中外历史纲要上册新课件(统编版).pptx
- 第高一下学期统编版必修中外历史纲要下(1).pptx
- 科技擂台第10节捏面人大赛(课件)-科学二年级上册冀人版.pptx
- 第19课北洋军阀统治时期的政治经济与文化(情境化教学课件)历史统编版中外历史纲要上.pptx
- Unit1Lookitup!(Grammar)课件沪教版八年级英语上册(1).pptx
文档评论(0)