算是弄出来了 , 奉上配置。
思路是重写 ,但最后用了 try_files , 其中区别暂不求甚解。
难点在匹配文件的正则
location ~ /([^/]*)\.(jpg|jpeg|png|gif)$ {
try_files $uri $uri/ /assets/$1.$2;
}
```
server {
listen 80;
server_name
your.domain.com;
# 这个正则的作用
# 1. 匹配图片文件,四种文件格式结尾
# 2. 第一个小括号确定能拿到文件名
location ~ /([^/]*)\.(jpg|jpeg|png|gif)$ {
try_files $uri $uri/ /assets/$1.$2;
}
# 全站的图片文件都在「/usr/share/nginx/Note/assets 」这个文件夹中,没有子文件夹
location ^~ /assets/ {
root /usr/share/nginx/Note;
if (-f $request_filename) {
expires 1h;
break;
}
}
location / {
root /usr/share/nginx/Note/note_by_js;
index index.html;
}
location ~ \.md$ {
root /usr/share/nginx/Note/note_by_js;
}
access_log /var/log/nginx/note.log;
}
```