[转载]nginx简单防盗链及设置默认虚拟主机(禁止通过IP访问)
2012-10-22 17:26
921 查看
原文地址:nginx简单防盗链及设置默认虚拟主机(禁止通过IP访问作者:soulmate
(2010-03-29 17:16:35)
一.禁止IP访问:
nginx的默认虚拟主机在用户通过IP访问,或者通过未设置的域名访问(比如有人把他自己的域名指向了你的ip)的时候生效
最关键的一点,在server的设置里面添加这一行:
listen 80 default;
后面的default参数表示这个是默认虚拟主机。
这个设置非常有用。
比如别人通过ip或者未知域名访问你的网站的时候,你希望禁止显示任何有效内容,可以给他返回500.
目前国内很多机房都要求网站主关闭空主机头,防止未备案的域名指向过来造成麻烦。就可以这样设置:
server {
listen 80 default;
return 500;
}
也可以把这些流量收集起来,导入到自己的网站,只要做以下跳转设置就可以:
server {
listen 80 default;
rewrite ^(.*) http://www.myip.net permanent;
}
在虚拟主机最前面加上如下即可,记住一定要以它开头(不然不生效)。
server {
listen 80 default;
server_name _;
return 500;
access_log off;
}
server {
listen 80;
server_name l.domain.com;
charset utf-8,GB2312;
index track.gif;
if (-d $request_filename) {
rewrite ^/(.*)([^/])$ http://$host/$1$2/ permanent;
}
二.简单防盗链:
1.针对photos目录,如果不是从www.mydomain.com和mydomain.com来访问,就返回403
location /photos/ {
valid_referers none blocked www.mydomain.com mydomain.com;
if ($invalid_referer) {
return 403;
}
}
(2010-03-29 17:16:35)
一.禁止IP访问:
nginx的默认虚拟主机在用户通过IP访问,或者通过未设置的域名访问(比如有人把他自己的域名指向了你的ip)的时候生效
最关键的一点,在server的设置里面添加这一行:
listen 80 default;
后面的default参数表示这个是默认虚拟主机。
这个设置非常有用。
比如别人通过ip或者未知域名访问你的网站的时候,你希望禁止显示任何有效内容,可以给他返回500.
目前国内很多机房都要求网站主关闭空主机头,防止未备案的域名指向过来造成麻烦。就可以这样设置:
server {
listen 80 default;
return 500;
}
也可以把这些流量收集起来,导入到自己的网站,只要做以下跳转设置就可以:
server {
listen 80 default;
rewrite ^(.*) http://www.myip.net permanent;
}
在虚拟主机最前面加上如下即可,记住一定要以它开头(不然不生效)。
server {
listen 80 default;
server_name _;
return 500;
access_log off;
}
server {
listen 80;
server_name l.domain.com;
charset utf-8,GB2312;
index track.gif;
if (-d $request_filename) {
rewrite ^/(.*)([^/])$ http://$host/$1$2/ permanent;
}
二.简单防盗链:
1.针对photos目录,如果不是从www.mydomain.com和mydomain.com来访问,就返回403
location /photos/ {
valid_referers none blocked www.mydomain.com mydomain.com;
if ($invalid_referer) {
return 403;
}
}
2.正对以下后缀名结尾的,如果不是从www.mydomain.com和mydomain.com来访问,就返回403 location ~ .*.(gif|jpg|jpeg|swf|png|flv)$ { valid_referers none blocked www.mydomain.com mydomain.com; if ($invalid_referer) { return 403; } } error_page 403 =200 /200.jpg; #将403返回成为200 location /200.jpg { empty_gif; #返回空白图片 } 这样,nginx在处理HTTP请求时,如果发现其URL匹配到Empty Gif所属的Location(本例中为/200.jpg), 则使用ngx_http_empty_gif作为处理函数,这个函数直接向浏览器写回一幅1×1的空白gif图片。
相关文章推荐
- Apache服务器虚拟主机设置问题-如何使通过IP访问为默认的apache页面 <转载>
- Nginx禁止直接通过IP地址访问网站以及限制IP登陆某目录(关闭默认站点或空主机头)
- nginx简单防盗链及设置默认虚拟主机
- Nginx禁止直接通过IP地址访问网站以及限制IP登陆某目录(关闭默认站点或空主机头)
- nginx简单防盗链及设置默认虚拟主机
- nginx上设置禁止通过ip访问服务器,只能通过域名访问
- 设置nginx禁止通过IP访问服务器的方法
- 设置nginx禁止通过IP访问服务器的方法
- 设置nginx禁止IP直接访问,只能通过指定的域名访问
- nginx 验证默认虚拟主机和用户认证(设置网站需要账号密码访问)
- nginx上设置禁止通过ip访问服务器,只能通过域名访问
- Nginx设置禁止通过IP访问服务器并且只能通过指定域名访问
- nginx默认虚拟主机,用户认证,域名重定向,日志,静态文件不记录日志,防盗链,访问控制,php解析
- nginx禁止通过IP的方式访问http、https
- Nginx禁止通过IP,未绑定域名访问服务器
- Nginx访问状态统计、虚拟主机设置
- apache 和nginx 的禁止IP 访问设置
- nginx禁止某个IP访问站点的设置方法
- nginx 禁止某个IP访问立网站的设置方法
- nginx禁止WEB通过IP访问