nginx跨域请求的配置
在nginx.conf文件中可server语句中可添加如下配置,即可实现跨域请求:
#允许跨域请求的域,*代表所有
add_header 'Access-Control-Allow-Origin' *;
#允许带上cookie请求
add_header 'Access-Control-Allow-Credentials' 'true';
#允许请求的方法,比如 GET/POST/PUT/DELETE
add_header 'Access-Control-Allow-Methods' *;
#允许请求的header
add_header 'Access-Control-Allow-Headers' *;
nginx为静态资源配置root路径和alias别名
假设服务器路径为:/home/imooc/files/img/face1.png
- root路径完全匹配访问 配置的时候为
location /imooc {
root /home
}
用户访问的时候请求地址:url:port/imooc/file/img/face1.png
- 也可以是用alias为路径做别名,可隐藏部分信息,对于上述的路径,可使用别名配置为
location /static {
alias /home/imooc
}
用户访问的时候请求地址:url:port/static/file/img/face1.png
nginx location匹配规则
语法规则
模式 | 含义 |
---|---|
location=/uri | =表示精确匹配,只有完全匹配上才能生效 |
location ^~/uri | ^~开始对URL路径进行前缀匹配,并且在正则之前 |
location ~ pattern | 开头表示区分大小写的正则匹配 |
location ~* pattern | 开头表示不区分大小写的正则匹配 |
location /uri | 不带任何修饰符,也表示前缀匹配,但是在正则匹配之后 |
Location / | 通用匹配,任何未匹配到其他的location的请求都会匹配到,相当于switch中的default |
nginx防盗链配置支持
# 对原站点进行检查
valid_referers *.imooc.com;
# 非法引入会进入下方判断
if($invalid_referer){
return 404;
}