新手建站教程:Htaccess 各式301用法代码10组

292 阅读1分钟

htaccess文件是Apache服务器中的一个配置文件,它负责相关目录下的网页配置。通过htaccess文件,可以帮我们实现:网页301重定向、自定义404错误页面、改变文件扩展名、允许/阻止特定的用户或者目录的访问、禁止目录列表、配置默认文档等功能。

下面介绍以使用小鸟云服务器建站为例,介绍建站的Htaccess 各式301用法代码10组:

第一、强制www域名301跳转。

  1. RewriteEngine on
  2. RewriteCond %{HTTP_HOST} ^niaoyun.com [NC]
  3. RewriteRule ^(.*)$ http://www.niaoyun.com/$1 [L,R=301,NC]

我们将域名替换成自己的域名即可实现非WWW跳转到WWW域名。

第二、强制非WWW域名301跳转。

  1. RewriteEngine On
  2. RewriteCond %{HTTP_HOST} !^niaoyun.com$ [NC]
  3. RewriteRule ^(.*)$ http://niaoyun.com/$1 [L,R=301]

这里我们可以强制如果访问www域名前缀,会跳转到非www域名。

第三、强制https跳转地址。

  1. RewriteEngine On
  2. RewriteCond %{SERVER_PORT} 80
  3. RewriteRule ^(.*)$ https://www.nioayun.com/$1 [R=30,L]

如果我们网站采用SSL证书,则一般需要强制跳转https路径,这里需要添加强制80端口的跳转。

第四、阻止无用的蜘蛛爬取。

  1. RewriteEngine On
  2. RewriteCond %{HTTP_USER_AGENT} (^$|FeedDemon|JikeSpider|Indy Library|Alexa Toolbar|AskTbFXTV|AhrefsBot|CrawlDaddy|CoolpadWebkit|Java|Feedly|UniversalFeedParser|ApacheBench|Microsoft URL Control|Swiftbot|ZmEu|oBot|jaunty|Python-urllib|lightDeckReports Bot|YYSpider|DigExt|HttpClient|MJ12bot|heritrix|EasouSpider|Ezooms) [NC]
  3. RewriteRule ^(.*)$ - [F]

第五、强制/斜杠结尾路径。

  1. RewriteCond %{REQUEST_URI} /+[^.]+$
  2. RewriteRule ^(.+[^/])$ %{REQUEST_URI}/ [R=301,L]

第六、取消/斜杠结尾。

  1. RewriteCond %{REQUEST_FILENAME} !-d
  2. RewriteRule ^(.*)/$ /$1 [R=301,L]

第七、将A页面301跳转到B页面。

  1. Redirect 301 /a.html http://www.niaoyun.com/b.html

第八、阻止某个IP访问。

  1. Order deny,allow
  2. Allow from all
  3. Deny from xxx.xxx.xxx.xxx

第九、禁止图片盗链。

  1. RewriteEngine on
  2. RewriteCond %{HTTP_REFERER} !^$
  3. RewriteCond %{HTTP_REFERER} !^http(s)?://(.+.)?niaoyun.com [NC]
  4. RewriteRule .(jpg|jpeg|png|gif|bmp)$ - [NC,F,L]

第十、禁止被其他网页套用。

  1. SetEnvIf Request_URI "/starry-night" allow_framing=true
  2. Header set X-Frame-Options SAMEORIGIN env=!allow_framing

常用和不常用的.htaccess伪静态、301、防盗链以及等设置功能。如果需要更多强大的htaccess功能则需要阅读官方文档,这10个用途仅仅是很小的部分。

参考文档:

www.niaoyun.com/docs/16327.…