【Nginx】location中的root、proxy_pass和alias

这篇具有很好参考价值的文章主要介绍了【Nginx】location中的root、proxy_pass和alias。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

前言

root、proxy_pass和alias都是用来配置Nginx服务器上的URL重写的指令

1、指令

1.1 root指令

root:用于指定文件系统中某个目录作为请求的根目录,Nginx会在该目录下寻找请求的文件。例如:

location /images/ {
    root /var/www;
}

上述配置使得访问/images/目录下的资源时,Nginx会到/var/www/images/目录下查找。
最后请求的路径:root指定的URL/var/www + location上的URL/images/

1.2 alias指令

alias:用于将请求映射到另一个目录或文件上(用于将请求的URL路径与文件系统路径进行映射),常用于处理静态资源的请求,这个指令的功能类似于root,只不过可以指定不同的路径。例如:

location /uploads/ {
    alias /var/www/uploads/;
}

上述配置使得访问/uploads/目录下的资源时,Nginx会在/var/www/uploads/目录下查找。注意,使用alias指令时,URI路径会被转换成文件系统路径,例如/uploads/test.jpg会被映射到/var/www/uploads/test.jpg
最后请求的路径:alias指定的静态资源URL/var/www/uploads/

1.3 proxy_pass指令

proxy_pass :用于配置反向代理,将客户端发送的请求转发给指定的后端服务器,并返回后端服务器的响应结果。例如:

location /api/ {
    proxy_pass http://backend_server/;
}

上述配置使得访问/api/目录下的请求会被转发到http://backend_server/服务器上处理。
最后请求的路径:proxy_pass指定的后端服务URLhttp://backend_server/

2、总结

  1. root适用于指定请求的根目录,
    最后请求的路径:root指定的URL + location上的URL

  2. alias则适用于将URL路径映射到文件系统路径,方便访问资源
    最后请求的路径:alias指定的静态资源URL

  3. proxy_pass适用于配置反向代理,让Nginx将请求转发给后端服务器。
    最后请求的路径:proxy_pass指定的后端服务URL文章来源地址https://www.toymoban.com/news/detail-688536.html

到了这里,关于【Nginx】location中的root、proxy_pass和alias的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Linux中Nginx的HTTP和HTTPS常用配置以及proxy_pass详解

    如果出现 (configure arguments: --with-http_ssl_module), 则已安装(下面的步骤可以跳过,直接进行 第3步 )。 解压缩下载好的证书(证书一般是pem文件和key文件,这里名字可以随便改) 将下载好的证书上上传到服务器,我将证书放在了root目录下的card文件夹 配置如下:

    2024年02月01日
    浏览(58)
  • nginx 常用配置之 pass_proxy

    大家好,我是 17。 今天和大家聊聊 pass_proxy 代理。 在前端代理主要是为了跨域。虽然前端跨域有多种方法,各有利弊,但用代理来跨域对开发是最友好的。用代理可以不用修改产品代码切换线上线下,非常安全。pass_proxy 默认会把 cookie 也一同转发。 常用的配置非常简单。

    2024年02月13日
    浏览(38)
  • 理解nginx的 location 和root

    1.如果理解 location 和root 当用户输入 localhost:8080 / 时,首先会匹配到 location / 即 箭头1所指向 ,然后再去 root 下寻找根目录 /home/www 即 箭头2所指方向 , 总结来说当用户在浏览器输入 localhost:8080 / 时(当然你不加/也默认也是访问的也是根目录/),nginx 会向 本机的 /home/www / 寻找资源

    2023年04月08日
    浏览(35)
  • nginx部署前端项目时location时root和alias配置

    1、nginx目录中html目录下放置green 前端项目 监听端口:8181 以上三种 方式结论验证 用root属性指定的值是要加入到最终路径中的,匹配条件会拼接到路径中 即最终获取的静态页面路径为:域名 + root + 区配条件 + index 即找到 localhost:8181/html/green/index.html 备注:方式2 和方式2.1 用

    2024年02月03日
    浏览(35)
  • 分布式 - 服务器Nginx:基础系列之Nginx静态资源配置指令server_name | listen | location | root | alias | index| error_page

    通过浏览器发送一个HTTP请求实现从客户端发送请求到服务器端获取所需要内容后并把内容回显展示在页面。这个时候,我们所请求的内容就分为两种类型,一类是静态资源、一类是动态资源。静态资源即指在服务器端真实存在并且能直接拿来展示的一些文件,比如常见的ht

    2024年02月04日
    浏览(47)
  • 【nginx】nginx之location规则详解:

    一、语法规则: 二、优先级: 三、验证: 1、精确匹配: 在conf.d文件夹下创建配置文件test.com.conf,内容如下: 上图中第一个和第二个location匹配条件一样,都是/test.html,但第二个为精准匹配到静态路径,因此第一个不会执行,会执行第二个,www.test.com为本地域名解析,ac

    2024年02月15日
    浏览(43)
  • Nginx location

    location块是nginx配置文件中,配置在http块中的server块中,匹配的是uri location匹配uri的方式 : 精确匹配: location = /[ ...} 正则匹配: location - /{ ...} 一般匹配: location /{ ....} 匹配的规则: = :精确匹配,完全匹配,错一个字都匹配到,必须完全一致。 ^~ : 匹配普通字符,前缀匹配

    2024年02月14日
    浏览(40)
  • Nginx Location 基本配置

    基本语法格式: 1.等于匹配符:= 等于匹配符就是等号,特点可以概括为两点: 精确匹配,优先级最高,匹配成功后则停止向下搜索 不支持正则表达式 2.空匹配符 空匹配符的特点是: 匹配以指定模式开始的 URI,区分大小写,字符串匹配 不支持正则表达式 3.正则匹配符:~

    2024年02月08日
    浏览(47)
  • 【Nginx06】Nginx学习:HTTP核心模块(三)Location

    Location 是整个 HTTP 模块中非常重要的一个子模块,它是为某个请求URI(路径)建立配置。这个模块又是属于 Server 模块的子模块,同时它还可以嵌套在另一个 Location 模块下面,因此,它的作用范围是 server 和 location 。其实,说白了,也就是我们可以为指定的一些路径去做一些

    2024年02月15日
    浏览(41)
  • Nginx扩展篇之Location语法规则

    语法规则: location [=| | *|^~] /uri/ {… } 首先匹配 =,其次匹配^~,其次是按文件中顺序的正则匹配,最后是交给 /通用匹配。当有匹配成功时候,停止匹配,按当前匹配规则处理请求。 符号 含义 = = 开头表示精确匹配 ^~ ^~开头表示uri以某个常规字符串开头,理解为匹配 url路径即

    2024年02月08日
    浏览(44)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包