【】.htacess(301、封禁、防盗链)写法

息心在操盘网站的时辰,由于要做集权优化以是常常会碰着301的题目,这些题目里处事器和空间可以办理一部门的301跳转题目,可是跟着网站的成长,需求逐渐多样化,这个时辰就不得不消网站中的htacess文件来办理301的题目了。本日我在优化网站的时辰也碰着了,以是爽性出一套写法,记录在这里,利便本身和读者随时赏识。
.htacess文件常用写法大全_301/封禁/防盗链
阅读之前,必要明晰一件事,就是网站搭建的情形分为:Nginx和Apache。在假造主机中,我们根基上都是Apache情形,以是本文也是默认以为你的网站属于Apache情形。由于htacess文件只会在Apache情形中见效。下面我们开始,假如你要行使个中的某个写法,只必要所有复制,然后把yunke.com换成你的域名就行。
第一、逼迫www域名301跳转
RewriteEngineon
RewriteCond%{HTTP_HOST}^yunkeseo.com[NC]
RewriteRule^(.*)$$1[L,R=301,NC]
我们将域名替代本钱身的域名即可实现非WWW跳转到WWW域名,同时这点绝大部门假造主机就可以实现
第二、逼迫和yunkeseo.com/index.html301重定向到
RewriteCond%{http_host}^(www.)?yunkeseo.com$[NC]
RewriteCond%{request_uri}^/index.html$[NC]
RewriteRule^(.*)$[L,R=301]
我们在优化网站的时辰常常会碰着尾巴带有index.html的可以会见主页,不带这个尾巴的也可以会见主页,这对付网站集权是倒霉的,正确的做法是把带有尾巴index.html的网址301到不带尾巴上去,同时思量了不带www的带尾巴index.html的网址也可以正常会见主页,以是我这里把它们写成一条法则,让它们都301到带www的网址上。
团结第一点,我们的网站首页集权操纵根基上就搞定了,总结下来就是:
yunkeseo.com301
yunkeseo.com/index.html301
这三类同时重定向到,依此实现首页的集权。
第三、逼迫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里实现,可以参考:robots.txt是什么,怎样写?
第五、逼迫/斜杠末了路径
RewriteEngineOn
RewriteCond%{REQUEST_URI}/+[^.]+$
RewriteRule^(.+[^/])$%{REQUEST_URI}/[R=301,L]
有的网站要求每个目次的末了都用斜杠封住,
好比我的博客里的SEO基本栏目,网址是这样的:
那么假如我想让它逼迫酿成:
只需把这个写法复制到htacess文件里就行了。
第六、打消/斜杠末了
RewriteEngineOn
RewriteCond%{REQUEST_FILENAME}!-d
RewriteRule^(.*)/$/$1[R=301,L]
有逼迫加上就有逼迫下掉,以是这个法则就出来了。
第七、将目次下的文章页面,所有放在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文件的用法尚有许多,往后我碰着了此外优化需求再增补出来,假如你对htacess文件有什么题目,可以在评述区留言,我会实时回覆你。