Docker安装的Nginx无法访问静态资源(404)
最近在使用Docker配置的nginx访问静态资源时出现404的情况。一开始以为是配置文件中资源路径写错导致的问题,因此按照官方文档重新配置资源路径,确定没有产生错误后进行重试,还是出现404的状况。因为出现了404,因此很大可能是因为对应的路径不存在静态资源,于是去查看配置文件映射的静态资源路径。此时想到因为是使用的docker安装的nginx,因此在挂载的卷中所写的root资源路径应该是对应的
·
最近在使用Docker配置的nginx访问静态资源时出现404的情况。
一开始以为是配置文件中资源路径写错导致的问题,因此按照官方文档重新配置资源路径,确定没有产生错误后进行重试,还是出现404的状况。
因为出现了404,因此很大可能是因为对应的路径不存在静态资源,于是去查看配置文件映射的静态资源路径。
此时想到因为是使用的docker安装的nginx,因此在挂载的卷中所写的root资源路径应该是对应的nginx容器中的linux下的路径,所以当然找不到对应的文件。
所以正确的路径应该是找linux容器中存放静态资源的路径。
(-v /opt/docker/nginx/html:/usr/share/nginx/html \)
因为nginx中存放静态资源的文件被挂载到了/opt/docker/nginx/html目录下,所以此时应该将静态资源放到/opt/docker/nginx/html目录下,而对应的配置文件中的路径应该写容器中linux中的路径/usr/share/nginx/html,此时可以正确的访问静态资源路径。
location /www/ {
# root /usr/share/nginx/html;
root /usr/share/nginx/html/;
index index.html index.htm;
# proxy_pass http://cluster;
# proxy_pass http://192.168.56.11:8080;
# proxy_pass http://myserver;
}
location /image/ {
root /usr/share/nginx/html/;
autoindex on;
}
更多推荐
已为社区贡献1条内容
所有评论(0)