美文网首页
nginx location 匹配规则

nginx location 匹配规则

作者: AD刘涛 | 来源:发表于2021-07-11 12:17 被阅读0次

处理静态内容

root 指令

首先,创建/data/ www目录并在该目录下创建index.html文件,其次创建/data/images目录并在该目录下放入一些图片。

接下来,打开配置文件。默认配置文件已经包含多个服务器块的几个示例,大部分注释掉了。现在,注释掉所有这些块,并启动一个新的服务器块。内容如下:

server {
    listen 90;
    location / {
        root /data/www;
    }

    location /images/ {
        root /data;
    }
}

当我们在浏览器输入以下地址时,http://127.0.0.1:90,则会显示/data/www目录下的index.html文件;当我们在浏览器输入以下地址时,http://127.0.0.1:90/images/1.jpeg,则会显示/data/images目录下的图片。

我们在浏览器中输入以下地址 http://127.0.0.1:90/images/1.jpeg 访问图片的时候,路由中的/images/会拼接在/data后,然后去访问/data/images/目录下的图片资源。

alias 指令

我们也可以使用alias 指令。如下

   #location /images/ {
   #   root /data;
   #}

   location /images {
       alias /data/images;
   }

当我们在浏览器输入以下地址时,http://127.0.0.1:90/images/1.jpeg,则会显示/data/images目录下的图片。

root 指令与 alias 指令的区别

假如图片在服务器中的路径为 /data/images/file/img/1.jpeg

  • root 路径完全匹配访问
location /images {
    root /data
}

用户访问的时候,请求为:url:port/images/file/img/1.jpeg

  • alias 则可以为该路径起个别名
  location /hello {
       alias /data/images;
  }

用户访问的时候,请求为:url:port/hello/file/img/1.jpeg。如此相当于为目录/data/images做了一个别名。

相关文章

网友评论

      本文标题:nginx location 匹配规则

      本文链接:https://www.haomeiwen.com/subject/tjkkpltx.html