设为首页 收藏本站
查看: 905|回复: 0

[经验分享] 详解Apache下.htaccess文件常用配置

[复制链接]

尚未签到

发表于 2018-11-27 13:07:56 | 显示全部楼层 |阅读模式
  .htaccess文件是Apache服务器中最常用的一个配置文件,它负责相关目录下 的网页配置。通过htaccess文件,可以帮我们实现:网页301重定向、自定义404错误页面、改变文件扩展名、允许/阻止特定的用户或者目录的访 问、禁止目录列表、配置索引入口等功能。
  另外,.htaccess手动编辑方法是使用UE或notepad2等高级文本编辑器。如果不方便下载或手动编写的文件出错,也非常推荐在线 htaccess文本编辑器,目前这款编辑器已经非常完善,并且在二次开发下已经增加了很多新功能,简单易用,完美支持多条件复杂任务的htaccess 文件智能生成任务。
  1、开启网站的图片防盗链功能
  如果网站的流量有限,那么图片防盗链是非常必要的。不仅可以减少流量浪费,而且可以减轻服务器负担。开启图片防盗链功能需要在htaccess文件中加入以下代码:
  RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://(www\.)?allow1.com(/)?.*$ [NC]
RewriteCond %{HTTP_REFERER} !^http://(www\.)?allow2.com(/)?.*$ [NC]
RewriteRule .*\.(gif|jpg|jpeg|bmp|png)$ [R,NC,L]
  上面的代码中,allow1.com与allow2.com分别是允许访问网站图片的域名,后面的baidu.com则是替换成的目标图片地 址。上面还包含了图片文件的后缀参数,可以自行更改。如果通过htaccess在线生成器生成此段代码,仅仅需要填写几个允许访问的域名(不带www与 http),然后再填写好准备替换的图片地址。
  2、自定义404、500等错误返回页
  如果你不希望网站在找不到网页的时候出现“404该页无法显示”,就试试自己定义一个找不到网页的出错页面吧!需要在htaccess文件中加入
  ErrorDocument 404 /404.htm
  前面的404是其错误代号,后面的/404.htm是自己定义的404页面的路径。需要注意的是,如果这个404页面的大小小于512B,则 IE会忽略此页面,也就不会生效了。后面的参数需要使用网站相对路径。在htaccess在线生成程序中,请切换到“自定义错误页面”选项卡,然后在 “404(未找到)”后面的输入框中输入你的错误页面地址即可。在线生成工具还可以处理其它类型的错误,以此类推即可。请预先将404错误页面制作好上传 到网站目录。
  3、屏蔽网站目录列表
  目录列表是在网站找不到默认文件时的应急措施,服务器将毫无保留的返回一个当前目录下的所有文件。这将给网站带来非常大的安全隐患。因此,现在 很多程序都会在任何子目录下面放一个index.htm文件来避免这种疏漏。但是,通过htaccess文件我们可以彻底的解决这个问题。
  在文件中加入以下代码:
  Options -Indexes
  这将彻底关闭网站的目录列表功能,但对于网站的正常访问是没有任何影响的。如果想显示文件列表,则只需要将“-”更改为“+”。如果使用 htaccess在线生成工具,只需要把“是否在没有默认文档的目录显示文件列表”菜单选择成“隐藏”即可,程序将自动生成相关代码。
  4、WWW统一网址格式与重定向
  在SEO的观点里认为,如果it591.org与www.it591.org都能访问,这对于搜索引擎来说是个非常不好的体验,也很容易造成权重分散。而我们要做的就是将带www的网址与不带www的网址进行统一。
  我们不建议手动编写该段代码,自动生成程序已经做了完善的判断,你只需要切换到“WWW域名重定向”选项卡,在WWW域名重定向后面的地址栏中 填入你希望最终使用的域名即可!注意,此处填写的域名必须为完整网址,比如 http://www.it591.org 或者  http://it591.org 。程序将根据您的输入自动判断使用正重定向还是逆重定向。
  5、默认入口页面
  有些虚拟主机就是另类,不适用默认的文件名,或顺序非主流。那么通过以下的代码就可以自己定义这个页面的文件名了。比如index.htm 、default.php等等:
  DirectoryIndex index.php
  这行代码将index.php作为默认首页。其他页面请直接替换例子中的index.php。如果网站有多个页面需要作为首页,请按照 DirectoryIndex index.php  index2.php的格式编写文件。此项设置在htaccess生成器中,仅仅需要你依次填入首页的文件名即可,非常方便。
  6、通过htaccess开启网站图片缓存
  某些虚拟主机限制了网站的流量,如果浏览器每次都从服务器下载最常用的图片文件,将会浪费大量的带宽。因此可以开启图片缓存,浏览器在缓存过期前将会自动从缓存区载入图片文件。此功能在文件中加入以下代码:
  Header set Cache-Control “max-age=3600″
  需要注意的是,上面的3600单位为秒,即超时时间,上图中的gif等为图片文件后缀,表示对这些文件生效。如果使用自动生成工具,为了开启此选项,请将“开启站点的图片缓存”选项卡选择一个超时时间。目前有十分钟、一小时、一天等选项可供设置。
  7、固定301、302网页重定向
  由于页面转移位置造成的404错误是我们大家都非常头痛的问题,但我们只需要做一个301的重定向就会完全解决这个问题了。在htaccess文件中加入以下代码:
  Redirect permanent /old.htm http://www.it591.org
  前面一个参数使用相对路径,也可以使用目录名,后一个参数必须填写完整网址。这样才能生效,并且不出错误。在SEO中,搜索引擎也很快就会按照你的设置,将收录的网页更新。
  此外,htaccess还可以实现比如MIME文件类型修改、域名重定向等功能,因此,能充分利用好该文件将能让你的网站建设更加得心应手。





运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-640351-1-1.html 上篇帖子: apache多域名多端口 下篇帖子: apache不能解析php文件提示403或者下载php文件
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表