nginx跨站访问,防盗链
- 跨站访问
从网站A利用AJAX跨站访问网站B


浏览器会根据服务端返回的头部信息(Access-Control-Allow-Origin)判断是否允许跨域访问。如果服务端都允许跨站访问,浏览器段也就没必要做跨域限制!!!
例子:只允许一个网站跨站访问

允许针对多个网站的跨域访问,慎用

- 防盗链
防止网站资源被盗用,合法规矩用户访问网站,防止资源被爬取,没用的用户爬取网站会导致访问的阻塞和浏览性能的降低
一些简单的防盗链设置:如何找出异常用户 http_refer,对http_refer作出限制

准备一段涉及跨域的html代码块

http_refer校验规则

valid_refers代表的含义:none允许没有代理信息的(没有携带http_refer信息的请求),block允许一些非http协议的一些请求refer过来,比如ftp; 上图中 116.62.103.228说白了就是只允许116.62.103.228refer过来的请求,如果不是这个ip地址那么$invalid_refer就等于1;
测试效果如下: -e后面的参数意味着 refer过来的url -I后面的是目标url,由于我们设定了只允许从 116.62.103.228提交过来的请求,因此,第一例测试被Forbidden了

还可以做到正则匹配

nginx跨站访问,防盗链的更多相关文章
- nginx跨域、防盗链、压缩等小功能详解
原文链接:http://www.studyshare.cn/software/details/1173/0 一.跨域 跨域由来,是因为W3C组织制定的浏览器安全规范,不允许一个域名内的网站在没有别的域 ...
- Nginx详解十二:Nginx场景实践篇之跨站访问相关
跨站访问 浏览器请求一个页面的时候,发送了两个域名的请求 此情况不安全,容易出现CSRF攻击,所以浏览器禁止跨域访问 Nginx设置打开跨站访问 配置语法:add_header name value ...
- Nginx作为静态资源web服务-跨站访问
一.跨域访问 1.什么是跨域? 参看我的另一篇博客(https://www.cnblogs.com/chrdai/p/11280895.html) 2.为什么浏览器禁止跨域访问? 不安全,容易出现CS ...
- nginx实战(三)之静态资源web服务(跨站访问)
语法 虽然说浏览器禁止跨站访问以防(CSRF),但出于一些原因还是要进行跨站访问,服务端通过设置头信息Access-Control-Allow-Orign:xxxx,客户端收到后就会允许跨站访问了 实 ...
- 添加Access-Control-Allow-Origin主机头, 授权资源跨站访问
时间 2014-09-24 22:02:48 All by Neil 原文 https://blog.byneil.com/添加access-control-allow-origin主机头-授权资 ...
- nginx rewrite重写与防盗链配置
nginx rewrite重写规则与防盗链配置方法 时间:2016-02-04 15:16:58来源:网络 导读:nginx rewrite重写规则与防盗链配置方法,rewrite规则格式中flag标 ...
- Nginx的优化与防盗链
Nginx的优化与防盗链 1.隐藏版本号 2.修改用户与组 3.缓存时间 4.日志切割 5.连接超时 6.更改进程数 7.配置网页压缩 8.配置防盗链 9.fpm参数优化 1.隐藏版本号: 可以使用 ...
- nginx的优化和防盗链
nginx的优化和防盗链 目录 nginx的优化和防盗链 一.nginx的优化 1. 隐藏版本号 (1)隐藏版本号的原因 (2)查看版本号的方法 (3)隐藏方法一:修改配置文件 (4)隐藏方法二:修改 ...
- 跨站访问如何保证session的正常使用
1.最近公司开发了一个网站项目,一切顺利.由于网页没有兼容手机浏览器,后来添加了一个webapp端,独立于另一个站点,用于解决兼容手机浏览器的问题.其中webapp端的数据全部通过ajax进行请求另一 ...
随机推荐
- airflow_failover启动scheduler
参考: https://github.com/teamclairvoyant/airflow-scheduler-failover-controller 1.stop failover2.stop s ...
- [Agc036C]Triangle_数学
Triangle 题目链接:https://atcoder.jp/contests/agc036/tasks/agc036_a 题解: 我开始的时候以为是$Millar-Rabin$加$Pollard ...
- Design Log Storage System
You are given several logs that each log contains a unique id and timestamp. Timestamp is a string t ...
- WebMvcConfigurationSupport跨域和fastjson全局替换
@Configuration public class WarnWebMvcConfigurationSupport extends WebMvcConfigurationSupport { /** ...
- 位运算解决“一个数组中,只有一个数字出现n次,其他数字出现k次”问题
转自:https://blog.csdn.net/monster_girl/article/details/52928864 在学习完位操作后,经常会遇到一类关于查找缺失整数的问题. 第一类是给你一个 ...
- 安装jenkins时出现 No such plugin: cloudbees-folder的解决办法
今天安装了一下jenkins,在初始化安装插件时出现" No such plugin: cloudbees-folder"错误,根据网上的教程: 1.打开链接"http: ...
- react中数据持久化缓存redux-persist
一.安装redux-persist: npm install redux-persist --save 二..babelrc中增加redux-persist配置: "plugins" ...
- mysql创建表空间和用户
创建表空间名 create database 空间名 default character set utf8 collate utf8_bin; 创建用户create user 用户名 identifi ...
- html homework27
1. 使用框架完成如下功能 将框架先上下分割成两部分(上半部分的为TopFrame).再将下半部分垂直分割为两部分(左侧为BottomLeftFrame,右侧为BottomRightFrame),为T ...
- C# 操作地址 从内存中读取写入数据(初级)
本示例以植物大战僵尸为例, 实现功能为 每1秒让阳光刷新为 9999.本示例使用的游戏版本为 [植物大战僵尸2010年度版], 使用的辅助查看内存地址的工具是 CE. 由于每次启动游戏, 游戏中阳光 ...