【搜狗站長平臺】.htacess(301、封禁、防盜鏈)寫法大全

閱讀 ?·? 發(fā)布日期 2018-10-04 15:13 ?·? admin

 【搜狗站長平臺】.htacess(301、封禁、防盜鏈)寫法大全

 

  息心在操盤網站的時候,因為要做集權優(yōu)化所以經常會遇到301的問題,這些問題里服務器和空間可以解決一部分的301跳轉問題,但是隨著網站的發(fā)展,需求逐漸多樣化,這個時候就不得不用網站中的htacess文件來解決301的問題了。今天我在優(yōu)化網站的時候也遇到了,所以干脆出一套寫法大全,記錄在這里,方便自己和讀者隨時瀏覽。

 

  .htacess文件常用seo寫法大全_301/封禁/防盜鏈

 

  閱讀之前,需要明確一件事,就是網站搭建的環(huán)境分為:Nginx和Apache。在虛擬主機中,我們基本上都是Apache環(huán)境,所以本文也是默認認為你的網站屬于Apache環(huán)境。因為htacess文件只會在Apache環(huán)境中生效。下面我們開始,如果你要使用其中的某個寫法,只需要全部復制,然后把yunkeseo.com換成你的域名就行。

 

  第一、強制www域名301跳轉

 

  RewriteEngineon

 

  RewriteCond%{HTTP_HOST}^yunkeseo\.com[NC]

 

  RewriteRule^(.*)$$1[L,R=301,NC]

 

  我們將域名替換成自己的域名即可實現(xiàn)非WWW跳轉到WWW域名,同時這點絕大部分虛擬主機就可以實現(xiàn)

 

  第二、強制和yunkeseo.com/index.html301重定向到

 

  RewriteCond%{http_host}^(www\.)?yunkeseo\.com$[NC]

 

  RewriteCond%{request_uri}^/index.html$[NC]

 

  RewriteRule^(.*)$[L,R=301]

 

  我們在優(yōu)化網站的時候經常會遇到尾巴帶有index.html的可以訪問主頁,不帶這個尾巴的也可以訪問主頁,這對于網站集權是不利的,正確的做法是把帶有尾巴index.html的網址301到不帶尾巴上去,同時考慮了不帶www的帶尾巴index.html的網址也可以正常訪問主頁,所以我這里把它們寫成一條規(guī)則,讓它們都301到帶www的網址上。

 

  結合第一點,我們的網站首頁集權操作基本上就搞定了,總結下來就是:

 

  yunkeseo.com301

 

  yunkeseo.com/index.html301

 

  

 

  這三類同時重定向到,依此實現(xiàn)首頁的集權。

 

  第三、強制https跳轉地址

 

  RewriteEngineOn

 

  RewriteCond%{SERVER_PORT}80

 

  RewriteRule^(.*)$$1[R,L]

 

  如果我們網站采用SSL證書,則一般需要強制跳轉https路徑,這里需要添加強制80端口的跳轉。

 

  第四、阻止無用的蜘蛛爬取

 

  RewriteEngineOn

 

  RewriteCond%{HTTP_USER_AGENT}(^$|FeedDemon|JikeSpider|IndyLibrary|AlexaToolbar|AskTbFXTV|AhrefsBot|CrawlDaddy|CoolpadWebkit|Java|Feedly|UniversalFeedParser|ApacheBench|MicrosoftURLControl|Swiftbot|ZmEu|oBot|jaunty|Python-urllib|lightDeckReportsBot|YYSpider|DigExt|HttpClient|MJ12bot|heritrix|EasouSpider|Ezooms)[NC]

 

  RewriteRule^(.*)$-[F]

 

  關于這點也可以在robots里實現(xiàn),可以參考:robots.txt是什么,如何寫?

 

  第五、強制/斜杠結尾路徑

 

  RewriteEngineOn

 

  RewriteCond%{REQUEST_URI}/+[^\.]+$

 

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

 

  有的網站要求每個目錄的結尾都用斜杠封住,

 

  比如我的博客里的SEO基礎欄目,網址是這樣的:

 

  那么如果我想讓它強制變成:

 

  只需把這個寫法復制到htacess文件里就行了。

 

  第六、取消/斜杠結尾

 

  RewriteEngineOn

 

  RewriteCond%{REQUEST_FILENAME}!-d

 

  RewriteRule^(.*)/$/$1[R=301,L]

 

  有強制加上就有強制下掉,所以這個規(guī)則就出來了。

 

  第七、將目錄下的文章頁面,全部放在www主域名下

 

  RewriteEngineOn

 

  Redirect301://www.yunkeseo.com/a.html

 

  這點就是我們常說的減少目錄層級,減少讓爬蟲爬取的目錄層級。

 

  第八、綁定二級域名

 

  RewriteEngineOn

 

  RewriteCond%{HTTP_HOST}^m\.yunkeseo\.com$[NC]

 

  RewriteCond%{REQUEST_URI}!^/m/

 

  RewriteRule^(.*)$m/$1?Rewrite[L,QSA]

 

  比如我要做移動站,讓m.yunkeseo.com訪問m目錄下的內容,那么我就行需要綁定m.yunkeseo.com到子目錄m

 

  第八、阻止某個IP訪問

 

  RewriteEngineOn

 

  Orderdeny,allow

 

  Allowfromall

 

  Denyfromxxx.xxx.xxx.xxx

 

  第九、禁止圖片盜鏈

 

  RewriteEngineon

 

  RewriteCond%{HTTP_REFERER}!^$

 

  RewriteCond%{HTTP_REFERER}!^http(s)?://(.+\.)?yunkeseo.com[NC]

 

  RewriteRule\.(jpg|jpeg|png|gif|bmp)$-[NC,F,L]

 

  那些盜用了你的內容,還不愿意自己存儲圖片的網站是無恥的,你可以通過這個配置來防止別人盜用你的圖片了。

 

  htacess文件的用法還有很多,以后我遇到了別的優(yōu)化需求再補充出來,如果你對htacess文件有什么問題,可以在評論區(qū)留言,我會及時回復你。