48 lines
1.2 KiB
Plaintext
48 lines
1.2 KiB
Plaintext
server {
|
||
listen 443 ssl;
|
||
server_name dl.svc.plus cn-dl.svc.plus;
|
||
|
||
ssl_certificate /etc/letsencrypt/live/svc.plus/fullchain.pem;
|
||
ssl_certificate_key /etc/letsencrypt/live/svc.plus/privkey.pem;
|
||
ssl_protocols TLSv1.2 TLSv1.3;
|
||
ssl_ciphers HIGH:!aNULL:!MD5;
|
||
|
||
root /data/update-server;
|
||
index index.html;
|
||
|
||
location ^~ /.well-known/ { allow all; }
|
||
|
||
# ✅ JSON 专用——放在 / 之前
|
||
location ~* \.json$ {
|
||
try_files $uri =404;
|
||
add_header Cache-Control "public, max-age=60, s-maxage=60, stale-while-revalidate=300";
|
||
default_type application/json;
|
||
}
|
||
|
||
# 目录浏览
|
||
location / {
|
||
autoindex on;
|
||
autoindex_exact_size off;
|
||
autoindex_localtime on;
|
||
add_header Accept-Ranges bytes;
|
||
try_files $uri $uri/ =404;
|
||
}
|
||
|
||
# 大包直出
|
||
location ~* \.(?:dmg|zip|tar\.gz|deb|rpm|exe|pkg|appimage|apk|ipa)$ {
|
||
expires 7d;
|
||
access_log off;
|
||
add_header Cache-Control "public";
|
||
add_header Accept-Ranges bytes;
|
||
}
|
||
|
||
# 隐藏 dotfiles(不拦 /.well-known/)
|
||
location ~ /\.(?!well-known/)[^/]+ { deny all; }
|
||
}
|
||
|
||
server {
|
||
listen 80;
|
||
server_name dl.svc.plus cn-dl.svc.plus;
|
||
return 301 https://$host$request_uri;
|
||
}
|