Apache .htaccess常用方法代码

阿豪运维笔记(阿豪同学) 2021-08-26 1.02 K阅读

温馨提示:这篇文章已超过462天没有更新,请注意相关的内容是否还可用!

强制www域名301跳转

RewriteEngine on
RewriteCond %{HTTP_HOST} ^ahaoyw\.cn [NC]
RewriteRule ^(.*)$ http://www.ahaoyw.cn/$1 [L,R=301,NC]

image.png

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

强制非WWW域名301跳转

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

image.png

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

强制https跳转地址

RewriteEngine On
RewriteCond %{SERVER_PORT} 80
RewriteRule ^(.*)$ https://%{HTTP_HOST}/$1 [R=301,L]

image.png

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

阻止无用的蜘蛛爬取

RewriteEngine On
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]
RewriteRule ^(.*)$ - [F]

强制/斜杠结尾路径

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

取消/斜杠结尾

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

将A页面301跳转到B页面

Redirect 301 /a.html http://www.ahaoyw.cn/b.html

image.png

阻止某个IP访问

Order deny,allow
Allow from all
Deny from xxx.xxx.xxx.xxx

PS:xxx.xxx.xxx.xxx 为要禁止的ip如192.168.80.16

禁止图片盗链

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

禁止被其他网页套用

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

以上是常用和不常用的.htaccess伪静态、301、防盗链以及等设置功能。如果需要更多强大的htaccess功能则需要阅读官方文档

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作有参考学习价值
喜欢请点击上方【分享】,如果对您有帮助可点击上方【打赏】打赏本站。谢谢大家对阿豪运维笔记的支持。

文章作者: 阿豪运维笔记(阿豪同学)
本文链接:
文章版权:站长码字很辛苦,除非注明,否则均为阿豪运维笔记原创文章,转载或复制请以超链接形式并注明出处。

取消
微信二维码
微信二维码
支付宝二维码