AMH面板设置301跳转www与无www域名及利用nginx来屏蔽指定的user_agent的访问方法


一、AMH面板设置301跳转www与无www域名

vi /usr/local/nginx/conf/vhost/vpscuxiao.com.conf

其中vpscuxiao.com.conf是对应站点域名的.conf文件,按实际情况修改。

在对应站点域名的.conf文件的server中添加下面的代码:

if ($host != 'www.vpscuxiao.com' ) {
rewrite ^/(.*)$ http://www.vpscuxiao.com/$1
permanent;
}

重启nginx:

amh nginx restart

二、AMH利用nginx来屏蔽指定的user_agent的访问

新建agent_deny.conf

vi /usr/local/nginx/conf/agent_deny.conf

添加下面的代码:

if ($http_user_agent ~* (Scrapy|Curl|HttpClient)) {
return 403;
}
if ($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|^$" ) {
return 403;
}
if ($request_method !~ ^(GET|HEAD|POST)$) {
return 403;
}


if ($http_user_agent ~* ApacheBench|WebBench|java){
return 403;
}
if ($http_user_agent ~* (Wget|ab)){
return 403;
} 
if ($http_user_agent ~* LWP::Simple|BBBike|wget) {
return 403;
}

打开对应站点域名的.conf文件

vi /usr/local/nginx/conf/vhost/vpscuxiao.com.conf

其中vpscuxiao.com.conf是对应站点域名的.conf文件,按实际情况修改。

在server中添加:

include agent_deny.conf;

重启nginx:

amh nginx restart

然后测试一下,设置是否成功:

curl -I -A "BaiduSpider" www.test.com

返回:

  • HTTP/1.1 200 OK
    Server: nginx
curl -I -A "JikeSpider" www.test.com

返回:HTTP/1.1 403 Forbidden

标签: ,

文章发布时间:2017-07-28