自学内容网 自学内容网

nginx配置静态资源的访问

比如静态资源图片位于/mnt/software/nginx/html/static/images目录下,那么nginx.conf中的配置则为:

    # 静态文件目录
      location /static/images/ {
        root    /mnt/software/nginx/html;
        try_files $uri $uri/ =404; #找不到时提示404
      }

当前端发起的请求地址中带有 /static/images/时,则到 /mnt/software/nginx/html目录下的子目录/static/images/进行查找,图片存储的绝对地址为:/mnt/software/nginx/html/static/images/文件名称。nginx会将它们组合起来,location部分配置的请求路径的地址,root配置的该地址在服务器哪个根目录下。

如果nginx使用的是docker运行,那么root中配置的地址必须是docker容器中nginx静态资源地址,而不是挂载的宿主机的地址。docker启动命令最好包含挂载地址。像下面的启动命令:

docker run -p 80:80 --name nginx \
-v /mydata/nginx/html:/usr/share/nginx/html \
-v /mydata/nginx/logs:/var/log/nginx \
-v /mydata/nginx/conf:/etc/nginx \
-d nginx:1.10

 可以在宿主机目录 /mydata/nginx/html目录下新建static文件夹存放静态资源如images,css。由于 /mydata/nginx/html对应docker里边nginx的/usr/share/nginx/html目录,会将资源同步到容器里边,此时nginx.conf配置静态资源访问时,只需添加如下代码:

# 静态文件目录
      location /static/images/ {
        root    /usr/share/nginx/html;
        try_files $uri $uri/ =404; #找不到时提示404
      }

而不是下面的配置:

# 静态文件目录
      location /static/images/ {
        root    /mydata/nginx/html;
        try_files $uri $uri/ =404; #找不到时提示404
      }


原文地址:https://blog.csdn.net/shenxiaomo1688/article/details/144144940

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!