Apache Web服务器.htaccess文件配置


  htAccess是Apache服务器的一个配置文件, 存在 壮大的 性能,本文介绍如何编辑该文件,让网站实现 封闭某国家IP网段、 预防图片、文件盗链、 掩护主机下的目录与文件、 缔造自定义的出错页面、把某些特别的IP地址的 申请重定向到别的站点、把老的域名转像新的域名,这些 性能 。

 

  htAccess 文件(Hypertext Access file)是Apache Web服务器的一个十分 壮大的配置文件,关于这个文件,Apache有一堆参数 可以让你配置出 几乎为所欲为的 性能 。

 

   使用.htaccess挡掉 搜索引擎机蜘蛛

 

  挡掉百度 搜索引擎

 

  百度是传说中的暴力 搜索引擎,不 恪守 搜索引擎的 规定,若你尝试 使用robot.txt来挡住,那十分 恭喜你,绝对无效 。所以 定然要 使用 比较暴力、强硬的 目的 威力, 因此透过.htaccess就 可以 解决了,假如你要挡掉一些 搜索引擎(像是百度、搜狗等),那请将以下程式码贴到htaccess.txt文件中 。

 

SetEnvIfNoCase User-Agent "^Baidu" bad_bot
SetEnvIfNoCase User-Agent "^sogou" bad_bot
SetEnvIfNoCase User-Agent "^Bloghoo" bad_bot
SetEnvIfNoCase User-Agent "^Scooter" bad_bot
Deny from env=bad_bot

 

  挡掉Google 搜索引擎

 

  假如你想要挡掉Google 搜索引擎,固然也 可以透过.htaccsee挡掉, 惟独输入以下程式码就 可以了,假如要连同暴力百度 搜索引擎一同 封闭,那就把这两串程式码放在同一个htaccsee.txt文件中 。

 

SetEnvIf User-Agent "^Googlebot" google
Deny from env=google

 

  用.htaccess 封闭某国家IP网段

 

  有时候自己可能会规画网站的进展方向,有不 欢送某些特定的国家来访,这时候第一个想法应该是要锁该国家的IP,然而却不知从何做起?由于不晓得那个国家的IP跟本不能锁,这时候 可以透过「blockcountry」线上工具网站产生的htaccess语法来替自己 封闭想要 封闭的IP网段国家 。

 

  第1步 来到Block country(http://www.blockcountry.com) 网站首页,首先你会看到一个框框,框框中有许多国家,请您 取舍要 封闭的国家, 可以复选, 取舍 实现后请点击下方的﹝Block Now!﹞ 。

 

htAccess

 

htAccess 

 

  第2步 将方才网页上产生的程式码贴到htaccess文件中, 而后 储存 。Apache关于被 回绝的IP会返回403 舛误 。

 

  用.htaccess 预防图片、文件盗链

 

  一个图文并茂的网站,最怕的便是文章转贴, 固然现向来在尊重着作权法,但还是有许多人 假装没看见?许多人喜爱「复制→贴上」,但这样一个转贴动作却会对一个网站造成莫大的损害,除了辛苦写的文章被偷走外,连图片也盗链!图片或文件被盗连最怕的便是后续的流量,为了幸免这种问题,我们必须自立自强, 预防盗链这种可恶的行为!

 

  假如是cPanel 虚构主机,防盗连的 步骤不外乎便是到cPanel 后盾进行设定 。假如你是 其余类型的空间 后盾或者是说你惟独FTP权限的空间,那该怎么办呢?其实 惟独你的空间 支撑.htaccess文件而且 支撑ReWrite,你都 可以 预防图片与文件的盗链!

 

  通过.htaccess来 预防网站的图片、压缩文件、或视频等非Html文件被盗链的 步骤相当 方便,通过在该文件中加入几句命令即可 掩护我们珍贵的带宽 。例如chinaz.com的设置如下:

 

RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$ [NC]
RewriteCond %{HTTP_REFERER} !nobing.cn [NC]
RewriteCond %{HTTP_REFERER} !google.com [NC]
RewriteCond %{HTTP_REFERER} !baidu.com [NC]
RewriteCond %{HTTP_REFERER} !www.domain.com [NC]
RewriteRule .*.(gif|jpg)$ http://www.chinaz.com/no.png [R,NC,L]

 

  利用.htaccess来 掩护主机下的目录与文件

 

  普通来说众多 虚构主机预设是没有开启 掩护网站主机目录下的文件,其实很惊险的,假若你的目录下 淡忘 搁置index文件,那很可能您目录就被看光,一个不小心很可能主要 材料就被拿走,这是蛮严峻的一件 事件 。假如是Linux主机,我们 可以透过简易的.htaccess语法来 掩护网站主机目录下的文件,让别人 无奈轻易看见 。

 

  寻常我们 使用的最 方便 掩护目录的 步骤,莫过于 使用「index.php」、「index.html」等等之类的网站index文件,由于主机内预设的设定在目录中预设便是要抓index文件,而index文件通常会有众多种,主机会依续罗列下来抓取,所以 可以设定index文件来让主机抓取,以达到 掩护目录的 动机 。但假如主机需求的index文件没有一个存在,这时候主机就会直接显示目录内的东西了,由于主机不晓得要抓取谁当作主要网页,所以会所有显示 。

 

   固然 使用index文件来 掩护目录是可行的,然而每个子目录都需求传一个index文件其实蛮累人的,这时候我们就 可以利用「.htaccess」来批量 解决 。

 

Options -Indexes

 

  语法的进阶 使用

 

  固然该语法还有 其余 有关的 用处,以下列出 方便的几项供大家参考 使用,假如你感觉以下的语法不是你想要或是想学更多,你 可以到Apache官方网站来看看英文 注明书,查看看还有什么关于「indexoptions」的 用处或是 其余不错的 性能喔!

 

Options +Indexes:显示目录下所有文件

Options -Indexes: 潜藏目录下所有文件 (上面已经介绍过)

IndexOptions +FancyIndexing:显示目录下所有文件,文件前面包括档案类型的小图示

IndexOptions -FancyIndexing : 显示目录下所有文件,但不包括文件类型的小图示

IndexIgnore *.php *.exe: 潜藏特定的文件, 其余文件 畸形显示( 潜藏所有的php和exe文件)

 

   使用.htaccess 缔造自定义的出错页面

 

  关于Linux Apache来说这是一项极其 方便的 事件 。 使用下面的.htaccess语法你 可以轻松的 实现这一 性能 。(把.htaccess放在你的网站根目录下)

 

ErrorDocument 401 /error/401.PHP

ErrorDocument 403 /error/403.php

ErrorDocument 404 /error/404.php

ErrorDocument 500 /error/500.php

 

   把某些特别的IP地址的 申请重定向到别的站点

 

ErrorDocument 403http://www.youdomain.com

Order deny,allow

Deny from all

Allow from 124.34.48.165

Allow from 102.54.68.123

 

  把老的域名转像新的域名

 

# redirect from old domain to new domain

RewriteEngine On

RewriteRule ^(.*) $http://www.yourdomain.com/$1 [R=301,L]