nginx配置静态资源的访问的实现

 更新时间:2025年05月16日 09:25:57   作者:moxiaoran5753  
本文主要介绍了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 -p 443:443 --name nginx \
-v /mnt/software/nginx/html:/usr/share/nginx/html \
-v /mnt/software/nginx/logs:/var/log/nginx \
-v /mnt/software/nginx/conf:/etc/nginx \
-v /opt/files/imFilePath:/opt/files/imFilePath \
-d nginx:1.10

 上面的启动命令中,将80和443端口映射到主机,如果未映射443端口会导致https无法访问,

然后分别将nginx里面的html挂载到宿主机指定目录,用于存放前端项目如vue的dist,还有静态资源,logs挂载到宿主机上方便查看nginx日志,还有配置文件,最后一个/opt/files/imFilePath用于上传文件也挂载到宿主机上。

 可以在宿主机目录 /mydata/nginx/html目录下新建static文件夹存放静态资源如images,css,js。由于 /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
      }

location中root 和 alias 的区别

  • root:使用 root 指令时,Nginx会将其值与请求的 URI 拼接起来。例如,访问 /resource/image/test.png 时,Nginx会将请求路径 /resource/image/ 和 root 中指定的路径 /mnt/files/imFilePath 拼接起来,形成 /mnt/files/imFilePath/resource/image/test.png。

  • alias:与 root 不同,alias 会把匹配的路径直接替换为指定的路径。适用于静态资源路径的映射。例如,访问 /resource/image/test.png 时,Nginx会将请求路径 /resource/image/替换为 /mnt/files/imFilePath/resource/image/。

alias的配置:

location /resource/image/ {
    alias /mnt/files/imFilePath/resource/image/;
    try_files $uri $uri/ =404;
}

到此这篇关于nginx配置静态资源的访问的实现的文章就介绍到这了,更多相关nginx 静态资源访问内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • nginx worker进程循环的实现

    nginx worker进程循环的实现

    这篇文章主要介绍了nginx worker进程循环的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-02-02
  • Nginx如何配置前端后端服务

    Nginx如何配置前端后端服务

    本文介绍了如何配置Nginx作为前端静态资源服务器和反向代理服务器以连接后端应用,配置步骤包括设置Nginx的基本配置语法和结构,配置Nginx作为前端静态资源服务器和反向代理服务器,测试和优化Nginx配置,以及提供了一个示例配置
    2025-01-01
  • Nginx服务器屏蔽与禁止屏蔽网络爬虫的方法

    Nginx服务器屏蔽与禁止屏蔽网络爬虫的方法

    今天小编就为大家分享一篇关于Nginx服务器屏蔽与禁止屏蔽网络爬虫的方法,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2019-03-03
  • 详解Nginx防盗链和Nginx访问控制与Nginx解析php的配置

    详解Nginx防盗链和Nginx访问控制与Nginx解析php的配置

    这篇文章主要介绍了详解Nginx防盗链和Nginx访问控制与Nginx解析php的配置的相关资料,这里提供实例帮助大家,学习理解这部分内容,需要的朋友可以参考下
    2017-08-08
  • centos7 docker 修改Nginx文件过程详解

    centos7 docker 修改Nginx文件过程详解

    这篇文章主要介绍了centos7 docker 修改Nginx文件过程详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-08-08
  • CentOS环境下Nginx配置SSL证书实现https请求详解

    CentOS环境下Nginx配置SSL证书实现https请求详解

    这篇文章主要为大家介绍了Nginx实战-配置SSL证书(CentOS环境),实现https请求过程步骤,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-05-05
  • 简单快速搭建Nginx文件服务器

    简单快速搭建Nginx文件服务器

    这篇文章主要为大家介绍了简单快速搭建Nginx文件服务器方法详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-10-10
  • Nginx+Tomcat搭建高性能负载均衡集群的实现方法

    Nginx+Tomcat搭建高性能负载均衡集群的实现方法

    这篇文章主要介绍了Nginx+Tomcat搭建高性能负载均衡集群的实现方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-03-03
  • NGINX服务器配置404错误页面转向的方法

    NGINX服务器配置404错误页面转向的方法

    这篇文章主要为大家详细介绍了NGINX服务器配置404错误页面转向的方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-12-12
  • nginx提示:500 Internal Server Error错误的解决方法

    nginx提示:500 Internal Server Error错误的解决方法

    本文章来给大家总结了大量关于导致nginx中提示500 Internal Server Error错误的原因总结与解决方法分析有需要了解的朋友可参考参考
    2013-04-04

最新评论