一. 动静分离
- 基于目录实现
server {
listen 80;
server_name *.abc.com;
root /usr/www/abc;
location / {
index index.html;
}
location /static {
alias /usr/www/static;
}
}
- 基于正则实现
location ~* \.(gif|jpg|png|css|js)$ {
root /usr/www/static;
}
二. 防盗链
Nginx的ngx_http_referer_module模块通常用于阻止来源非法的请求,但是伪装Referer头信息是非常简单的,所以该模块只是能阻止大部分非法请求,另外,由于受浏览器、防火墙或代理服务器处理的影响,有些合法请求是不携带Referer头信息或者Referer的值被删除,这种情况也应该要考虑在内。
详情请参考官方文档。
在server或location配置块内加入以下指令:
# none:允许请求头缺少Referer参数的请求访问资源。
# blocked:允许请求头中Referer参数值为空的请求访问资源。
# *.abc.com:设置来源白名单,只允许来自域名*.abc.co