解决Nginx的location中root与alias区别——配置找不到路径的原因

2023-11-11

要理解root与alias的区别!!

例一:

注意location中的配置:

server {
        listen       8080;
        server_name  localhost;

        location / {
            root   html;
            index  index.html index.htm;
        }
        location /asr {
            alias   /mnt/demo/asr; #注意这里!!
            autoindex on;
        }

……
}

如上代码,

若想要访问实际目录为 “ /mnt/demo/asr ” 文件夹,则URL为http:localhost:8080/asr

alias:需要配置为 “ alias   /mnt/demo/asr ” 。即给asr文件夹起个别名

root 需要配置为 “ root   /mnt/demo ” 。把asr上层目录替换了,最后合并为:/mnt/demo /asr

若为 “ root   /mnt/demo/asr ” ,则就是:/mnt/demo/asr/asr,所以就访问不到了!!!!!!

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

例二:

location /img/ {
    alias /var/www/image/;
}
#若按照上述配置的话,则访问/img/目录里的文件时,ningx会去/var/www/image/目录里找文件。
location /img/ {
    root /var/www/image/;
}
#若按照这种配置的话,则访问/img/目录里的文件时,nginx会去/var/www/image/img/目录里找文件。

总结:

1. alias是一个目录别名的定义,root则是对上层目录的定义。(所以我个人觉得一般建议使用alias,更直观,易理解!)

2. 还有一个重要的区别是:
①alias中,如果location后面带“/”结束(如:location /img/),则alias后面必须要用“/”结束。
如果location后面不带“/”结束(如:location /img),则alias后面必须没有,否则会找不到文件的。。。
②而root则可有可无~~

 

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

解决Nginx的location中root与alias区别——配置找不到路径的原因 的相关文章

  • 通过 nginx 入口控制器进行基本身份验证

    我正在使用 nginx 入口控制器 https kubernetes github io ingress nginx deploy https kubernetes github io ingress nginx deploy 在 AWS
  • 如何将亚马逊颁发的免费证书配置到nginx.config

    我已经安装了nginx服务器在Amazon Linux 2环境 在创建弹性负载均衡器期间 我创建了 Amazon 的免费证书 现在 我想通过以下方式访问我的服务器https port 443 我该如何配置这个SSL证书在nginx conf
  • Kubernetes nginx 入口控制器返回 502,但仅适用于 AJAX/XmlHttpRequest 请求

    我有一个在 nginx 入口控制器后面运行 Kubernetes 的 Web 应用程序 它对于请求浏览工作正常 但来自浏览器的任何 AJAX XMLHTTPRequest 都会从 nginx 收到 502 错误 我捕获了常规请求和 AJAX
  • Node + Express + Nginx 未设置 Cookie

    我有一个使用 Express 的 Node 应用程序 我尝试为我的客户端设置 cookie 它在本地环境 http 上运行良好 但是一旦我投入生产 https 我就很好地收到了cookie 我可以在响应中看到它 但它没有设置 任何想法 Ng
  • 当请求太大时,Nginx(我认为)会以错误的权限保存文件

    所以 我对托管和 Linux 等都是完全陌生的 所以如果我说错了 请原谅我 我还在学习 我正在使用 Django 创建一个小型个人网站 我想把它放到网上看看是否一切正常 我从 linode 买了一台便宜的服务器 并使用 Digital Oc
  • Android Google Maps API OnLocationChanged 仅调用一次

    每当我的位置发生变化时 我都会尝试更新我的相机 然而 onLocationChanged 只被调用一次 当我随后在模拟器中发送新位置时 不会调用 onLocationChanged 我已经尝试了几个小时了 但似乎无法修复它 public c
  • 如何将多个域路由到多个节点应用程序?

    我习惯了典型的 Lamp Web 托管环境 您只需单击 cpanel 中的几个按钮 您的域就会被分区并映射到 htdocs 中的文件夹 我经常使用 Node js 但做同样的事情似乎并不那么简单 如果我有多个节点应用程序 并且我想将doma
  • 正确别名向量

    我无法在其他地方找到答案 所以我想我只需要问这个 我正在尝试获取向量 其中存储 int 指针 的别名 如下所示 void conversion Engine ENGINES The Engine class has a vector of
  • Nginx 背后的多个 Meteor 站点

    这个问题与this https stackoverflow com questions 10936242 how can i correct the meteor base url in a nginx reverse proxy conf
  • Docker:Nginx 和 php5-fpm docker 不说话

    我想进行完全 Docker 化的 Drupal 安装 我的第一步是让容器与 Nginx 和 php5 fpm 一起运行 两者都基于 Debian 我在 CoreOS alpha 频道 使用 Digital Ocean 我的 Dockerfi
  • Nginx反向代理返回404

    我的 Nginx 安装并运行 下面是配置 etc nginx nginx conf 我要全部转发 api 到我的 tomcat 服务器 该服务器在同一服务器上的端口 9100 上运行 类型http myhost 9100 api apps有
  • WebSockets 监听 UNIX 域套接字?

    是否可以在 nginx 服务器后面设置一个 WebSockets 服务器来处理 UNIX 域套接字上的连接 我目前在同一台计算机上有多个 WebSocket 服务器实例 并且存在端口共享问题 所有实例都必须分配一个唯一的端口 我想避免这种情
  • 使用 Nginx 或 Apache 来提供动态内容? [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • 如何在运行 NGINX Docker 容器的 AWS EC2 上启用 HTTPS?

    我在 AWS 上有一个运行 Amazon Linux 2 的 EC2 实例 在上面 我安装了 Git docker 和 docker compose 完成后 我克隆了我的存储库并运行docker compose up让我的生产环境启动 我访
  • nginx server_name 在流块内可能吗?

    目前设置如下 stream server listen 9987 udp server name subdomain EXAMPLE com this line is resulting in an error proxy pass loc
  • 为什么 opcache 没有刷新?

    我用guzzlehttp guzzle封装在拉拉维尔 8 升级到后PHP 8 I get Symfony Component ErrorHandler Error FatalError Invalid opcode 117 2 0 in f
  • 常规请求期间 Django AJAX 请求未通过

    我有一个带有登录网页的 Django 站点 当提交页面上的登录表单时 它会执行登录视图 该视图会在其中运行一个需要很长时间处理 30秒左右 的函数 因此 为了在登录期间向客户端显示进度 一旦提交表单 登录页面上的 JS 函数就会开始向服务器
  • nginx位置正则表达式,匹配多次

    如何在 nginx 位置正则表达式中多次匹配 看来 x x 语法永远不起作用 例如 location abc w 1 3 从来不工作 您必须引用包含以下内容的位置 or 人物 location abc w 1 3 否则 nginx 将其解析
  • Kubernetes Ingress 在 nginx 反向代理后面运行

    我已经在可以从互联网访问的服务器上安装了 minikube 我创建了一个可用的 kubernetes 服务 gt kubectl get service myservice NAME CLUSTER IP EXTERNAL IP PORT
  • Nginx 是否也缓冲来自客户端的 http 请求?

    我知道 Nginx 可以缓冲来自上游服务器的响应 我的问题是 Nginx 是否也缓冲来自客户端的 http 请求 我的意思是 如果 Nginx 从客户端收到 http 请求 它是否立即与上游服务器建立连接 或者它会在收到整个http请求后创

随机推荐

  • 最佳实践:MySQL CDC 同步数据到 ES

    作者 于乐 腾讯 CSIG 工程师 一 方案描述 1 1 概述 在线教育是一种利用大数据 人工智能等新型互联网技术与传统教育行业相结合的新型教育方式 发展在线教育可以更好的构建网络化 数字化 个性化 终生化的教育体系 有利于构建 人人皆学
  • C++运算符重载

    一 运算符重载简介及意义 c 语言预定义的运算符只能操作基础数据类型 比如int double 对于用户自定义的类型 比如class中的私有成员变量类型无法进行运算操作 在平时进行运算时也需要类似的运算操作时 则需要进行运算符重载 实现自定
  • eclipse如何导入idea中的springboot项目以及如何删除项目

    eclipse中如何打开idea中的springboot项目 第一步 打开eclipse 第二步 打开项目 第三步 在eclipse中删除导入的idea项目 第一步 打开eclipse 首先打开eclipse 如下图 第二步 打开项目 选择
  • 2-1 编译型语言

    1 编译语言的层次和类型 机器语言 汇编语言 编译型语言 解释型语言 脚本语言 编译型语言一般需要经历编译和链接的过程 才能变成真正的可执行程序 编译链接的过程如下图所示
  • 求输入1~50的数字但是只有5次的机会

  • 一文读懂 PyTorch 显存管理机制

    点击上方 视学算法 选择加 星标 或 置顶 重磅干货 第一时间送达 作者丨米阿罗 知乎 已授权 来源丨https zhuanlan zhihu com p 486360176 编辑丨极市平台 首发于踢翻炼丹炉 https www zhihu
  • Oracle Sql Loader中文字符导入乱码的解决方案

    Oracle Sql Loader中文字符导入乱码的解决方案 服务器端字符集NLS LANG SIMPLIFIED CHINESE CHINA ZHS16GBK 控制文件ctl LOAD DATA CHARACTERSET ZHS16GBK
  • linux下安装jdk8

    jdk官网下载地址 官网下载页 https www oracle com technetwork java javase downloads jdk8 downloads 2133151 html 解压 解压到指定目录下 tar xzvf
  • RecycleView的scrollbar在xml中默认显示以及在代码中隐藏

  • MongoDB 启动及常用操作(随记)

    首先是启动服务 下面是一些常用的操作 mongoose 链接 var mongoose require mongoose var db mongoose createConnection mongodb 127 0 0 1 27017 No
  • MySQL MHA

    1 什么是 MHA MHA MasterHigh Availability 是一套优秀的MySQL高可用环境下故障切换和主从复制的软件 MHA 的出现就是解决MySQL 单点的问题 MySQL故障切换过程中 MHA能做到0 30秒内自动完成
  • 在美团,我从暑期实习到转正

    作者 酸菜鱼摆摆 整理 NewBeeNLP https zhuanlan zhihu com p 54732860 近期各个公司的秋招都陆续开始了 今天分享学妹 摆摆 的美团暑期实习转正经验 非常详细 今年参加秋招的同学可以好好看看噢 有问
  • python反编译chm文件并生成pdf文件

    1 coding utf 8 2 3 import os 4 import os path 5 import logging 6 import pdfkit 7 8 original chm r C Users hushaojun Docu
  • minio开源的对象存储服务器安装及使用

    1 minio的介绍 MinIO是一个开源的对象存储服务器 设计用于实现高性能 可扩展的云存储 它兼容Amazon S3云存储服务的API 因此可以与现有的S3兼容应用程序进行集成 MinIO可以部署在本地服务器 私有云环境或公共云上 如A
  • Burg法参数化功率谱估计(Python实现版)

    Burg法参数化功率谱估计是在Yule Walker方程法和Levinson Durbin快速递推法之上建立的 如果对于Yule Walker方程法和Levinson Durbin快速递推法不熟悉的话可以参考我的其他博客 Levinson
  • VS2015下封装Qt ui界面为dll的做法

    VS2015下封装Qt ui文件为dll的做法 最近被要求将以前项目的比较复杂的ui界面及其内部函数封装成dll 在网上查阅了一些资料 发现大部分要么是vs封装qt无界面的 要么是qt creator封装成dll的 有一篇较好的参考是htt
  • elasticsearch-head如何连接设置密码的elasticsearch

    先修改配置 在elasticsearch yml文件中加入以下配置 配置开启跨域 http cors enabled true 配置允许任何域名访问 http cors allow origin 设置密码后的访问配置 http cors a
  • defaulted函数和deleted函数

    Defaulted 函数 背景问题 C 的类有四类特殊成员函数 它们分别是 默认构造函数 析构函数 拷贝构造函数以及拷贝赋值运算符 如果程序员没有显式地为一个类定义某个特殊成员函数 而又需要用到该特殊成员函数时 则编译器会隐式的为这个类生成
  • 完整NFT Web开发

    完整NFT Web开发课程 自互联网早期以来 NFT 作为最具颠覆性的技术 区块链 的一部分 正在改变世界开展业务的方式 你可以构建和学习如何使用它们来塑造现代数字艺术 游戏 和网络应用程序 本课程教你如何从头开始深入构建 NFT 市场 以
  • 解决Nginx的location中root与alias区别——配置找不到路径的原因

    要理解root与alias的区别 例一 注意location中的配置 server listen 8080 server name localhost location root html index index html index ht