我的其他文章中整理了docker安装nginx的步骤,安装了nginx后,我们可能要用它做代理服务器,图片服务器等,如果访问出现404 not found的问题,可能是下面两个原因造成的。
1.docker安装的nginx相当于是在我们宿主机上又安装了一个linux系统,所以不能直接访问我们宿主机的文件夹,前面启动nginx容器时挂载了宿主机配置文件和日志目录,在nginx配置文件中配置的内容都是相对容器而言的,所以直接写宿主机的目录会出现404,这种情况需要我们启动时将我们的资源目录一并挂载,对应着容器的某个目录,也就是我们配置文件中配置的目录,挂载之后,其实就是容器可以直接访问宿主机对应的目录以及目录下的所有文件了,挂载的命令-v 宿主机资源目录:容器目录,可以参考我之前写的docker启动nginx的命令,修改配置文件之后需要重启nginx容器,docker restart 容器ID/名称。
2.另一种出现404的原因,可能就是我们配置文件配置的不对,例如下面两种写法,实际访问的路径不同。
location /images/ {
root /home/file/;
autoindex on;
}
👆这种写法,实际访问的路径是/home/file/images/
location /images/ {
alias /home/file/;
autoindex on;
}
👆这种写法,实际访问的路径是/home/file/
大家参考一下,看看是不是出现这两种问题导致的404
这是我觉得不错的学习网站之一,里面还是比较全面的,如果大家都能学完,保证可以找到一个不错的工作,点击进去看看吧!