最近我把博客的静态资源和代码分离开来进行部署的,原来和代码放在一起,访问速度很慢,本来服务器带宽也不高,所以就把静态资源文件给单独弄出来了。
Nginx 提供了 valid_referers 参数用于检查url中refer参数的状态:
Syntax: valid_referers none | blocked | server_names | string ...;
Default: —
Context: server, location
none:表示无Referer值的情况。
blocked:表示Referer值被防火墙进行伪装。
server_names:表示一个或多个主机名称。
以下是我的Nginx配置:
# 博客静态资源===================================
server {
listen 80;
listen 443 ssl http2;
# 配置自己的域名
server_name static.xiaofeivip.top;
# 配置域名证书 这里填写自己的证书位置
ssl_certificate "/www/1.pem";
ssl_certificate_key "/www/1.key";
# 指定客户端可以重用会话参数的时间
ssl_session_cache shared:SSL:10m;
ssl_session_timeout 5m;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
ssl_prefer_server_ciphers on;
# 解决跨域问题
add_header Access-Control-Allow-Origin *;
add_header Access-Control-Allow-Methods 'GET, POST, OPTIONS';
add_header Access-Control-Allow-Headers 'DNT,X-Mx-ReqToken,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Authorization';
# 博客资源*******************************************************************
location /xffjs {
alias /www/wwwroot/static_resource/xffjs/;
# 目录浏览功能 on:开启 off:关闭
autoindex off;
# 缓存一天,一般静态资源不经常去改变他,根据自己需求进行设置
expires 1d;
access_log /dev/null;
# 自己域名 如果别的网站使用了你的文件,他的域名没配置在这里,他则无法访问这个文件
valid_referers none blocked xffjs.com;
if ($invalid_referer) {
return 404;
}
}
# 博客资源*******************************************************************
# 访问其他路径返回404
location / {
if ($invalid_referer) {
return 404;
}
}
# 定义本虚拟主机的访问日志
access_log /www/wwwlogs/static.log;
}
# 博客静态资源 End=======================================
Nginx 配置在线美化:https://xiaofeivip.top/tool/cool/nginx/
打赏
当前共有 0 条评论