在搭建测试服务器时,上传的图片需要展示,因此去配置nginx路径映射。却发现访问的时候一直报404。
踩坑记录
# 图片实际存储的位置为 /datat/upload
server{
listen: 80;
server_name: localhost;
location /upload{ # 对外暴露的路径
root /data/upload;
autoindex on;
}
}
浏览器访问地址 192.168.1.188/upload/123.jpg
返回404
原因 root配置后实际的访问路径是 root后面的路径+location后面的路径+静态文件
所以最终访问的路径是地址是/data/upload/upload/123.jpg,所以找不到文件。
# 图片实际存储的位置为 /datat/upload
# 如果使用root配置,正确的配置如下
server{
listen: 80;
server_name: localhost;
location /upload{
root /data/;
autoindex on;
}
}
# 也可以使用alias配置
server{
listen: 80;
server_name: localhost;
location /upload{
alias /data/upload/;
autoindex on;
}
}
浏览器依旧访问 192.168.1.188/upload/123.jpg,这就ok了。