美文网首页
nginx的root与alias

nginx的root与alias

作者: 壮语 | 来源:发表于2020-03-11 14:10 被阅读0次

最近在做一个新的项目,以下都称呼为new项目吧。

new项目上测试环境时,要求使用二级域名,https://yuming.cn/new。开始的方案是要把文件都打包到build/new/目录下。这样的话发布到服务器上,访问二级域名https://yuming.cn/new 即可访问到/data/site/new-fe-test/new/index.html文件。nginx的配置如下

server {

    listen  80;

    server_name yuming.cn;

    root /data/site/yuming-fe-test;

    index index.php index.html index.htm;

    location / {

        root /data/site/yuming-fe-test;

        try_files $uri $uri/ /index.html;

    }

    location /new {

        root /data/site/new-fe-test;

        try_files $uri /new/index.html;

    }

    error_log  /var/log/nginx/yuming-fe_error.log;

    access_log /var/log/nginx/yuming-fe_access.log;

}

后来组长提出,放在new/目录的工作下不应该前端项目中操作。然后他对nginx进行了改造,前端项目正常打包到build/目录即可,

nginx修改为如下。

location /new {

    alias /data/site/new-fe-test/;

    try_files $uri $uri/  index.html;

}

延展学习

nginx小白的我进行了一下学习总结,关键词:alias,root,$uri

alias、root是nginx指定文件路径的两种方式,

使用方法和作用域

root

语法: root path

默认值:root html

配置段:http、server、location、if

alias

语法:alias paht

配置段:location

区别

root与alias区别主要在于nginx是如何解释location后边的uri,这会是两者分别以不同方式将请求映射到服务器的文件上。(alias是一个目录别名的定义,root则是最上层目录的定义)。

root的处理结果是:root路径+location路径

alias的处理结果是:使用alias路径替换location路径

实例

location /t/ {

    root /www/root/html/

}

如果请求一个uri是/t/a.html时,web服务器会将服务器上的/www/root/html/t/a.html返回

location /t/ {

    alias /www/root/html/

}

如果请求一个uri是/t/a.html时,web服务器会将服务器上的/www/root/html/a.html返回,因为alias会吧location后边的配置路径/t/丢弃掉。

相关文章

  • Nginx的root和alias

    nginx指定文件路径有两种方式root和alias root alias root与alias主要区别在于ngi...

  • nginx的location、root、alias指令用法和区别

    作者:Gakki root 与 alias 的定义 nginx 指定文件的路径有两种方式 root 和 alias...

  • nginx的root与alias

    最近在做一个新的项目,以下都称呼为new项目吧。 new项目上测试环境时,要求使用二级域名,https://yum...

  • Nginx之alias与root

    Nginx的location块中的root用法,大家应该都知道,就是用来映射路径用的,而alias也是用来映射路径...

  • Nginx虚拟目录alias和root目录

    nginx是通过alias设置虚拟目录,在nginx的配置中,alias目录和root目录是有区别的:1)alia...

  • nginx

    nginx是通过alias设置虚拟目录,在nginx的配置中,alias目录和root目录是有区别的: 1)ali...

  • 知识汇总

    alias与root的区别 root的用法 alias的用法 alias不会把location匹配的路径带上,root会

  • nginx的root和alias指令的区别

    nginx配置下有两个指定目录的执行,root和alias,alias是一个目录别名的定义,root则是最上层目录...

  • Nginx alias root 区别

    alias与root都可以指向到静态文件 root 如果访问 /demo1/a.jpg,实际访问的是 /www/h...

  • Nginx核心配置分析

    1、虚拟主机配置 2、Nginx的日志配置 3、location的语法和匹配规则 4、alias与root的区别 ...

网友评论

      本文标题:nginx的root与alias

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