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

1.jpg

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


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


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


  第一、強(qiáng)制www域名301跳轉(zhuǎn)


  RewriteEngineon


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


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


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


  第二、強(qiáng)制www.yunkeseo.com/index.html和yunkeseo.com/index.html301重定向到www.yunkeseo.com


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


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


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


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


  結(jié)合第一點,我們的網(wǎng)站首頁集權(quán)操作基本上就搞定了,總結(jié)下來就是:


  yunkeseo.com301www.yunkeseo.com


  yunkeseo.com/index.html301www.yunkeseo.com


  www.yunkeseo.com/index.html301www.yunkeseo.com


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


  第三、強(qiáng)制https跳轉(zhuǎn)地址


  RewriteEngineOn


  RewriteCond%{SERVER_PORT}80


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


  如果我們網(wǎng)站采用SSL證書,則一般需要強(qiáng)制跳轉(zhuǎn)https路徑,這里需要添加強(qiáng)制80端口的跳轉(zhuǎn)。


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


  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]


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


  第五、強(qiáng)制/斜杠結(jié)尾路徑


  RewriteEngineOn


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


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


  有的網(wǎng)站要求每個目錄的結(jié)尾都用斜杠封住,


  比如我的博客里的SEO基礎(chǔ)欄目,網(wǎng)址是這樣的:www.yunkeseo.com/jichu


  那么如果我想讓它強(qiáng)制變成:www.yunkeseo.com/jichu/


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


  第六、取消/斜杠結(jié)尾


  RewriteEngineOn


  RewriteCond%{REQUEST_FILENAME}!-d


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


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


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


  RewriteEngineOn


  Redirect301http://www.yunkeseo.com/jichu/a.htmlhttp://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目錄下的內(nèi)容,那么我就行需要綁定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]


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


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