欢迎光临 Rick 's BLOG
日志首页  | C# .Net编程  | 原创作品  | 生活点滴  | C\C++相关  | 多媒体相关※ERMP  | VB相关  | 其它运维与编程  |  留言簿
C# 使用 HttpClient错误?SocketException:现有连接被远程主机强行关闭 记录群辉NAS添加新硬盘的操作步骤
晴天  Nginx配置中location下的 root和 alias 使用及区别
[ 发布日期:11个月前 (12-23) ]   [ 来自:本站原创 ] [分类:其它运维与编程]
在 Nginx 配置中,root 和 alias 都是用于指定服务器上文件的物理位置,但nginx在处理的行为上有一些不同点。

相同点:
  • 两者都可以用于确定请求的文件的物理位置,并将其发送给客户端。
  • root和alias都可以在location块内使用。


不同点:
nginx在处理物理路径时的规则不一样。

  • root指令定义了一个根目录,它将请求的URI附加到该路径来确定最终的文件路径。
    [复制到剪贴板]

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



    当访问/images/logo.jpg时,Nginx 会实际读取文件 /var/www/images/logo.jpg 。
    这种方式适合 URI中的目录名称和物理文件夹名称一致的情况。

  • alias指令也指定了文件的物理路径,它实际上是一个相对路径。location部分的URI会替换为alias中的路径名。
    [复制到剪贴板]

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



    当访问/images/logo.jpg时,Nginx 会实际读取文件 /var/www/logo.jpg 。
    这种方式比较适合 URI的目录名和物理文件夹不一致的情况。



URI路径和物理路径不一致的情况root和alias都是可以实现设置的。
相对来说alias设置简单一些

之前的文章在CodeIgniter4中实现文件下载,以及nginx实现上传文件夹名的重写  提到的重写文件夹名称是使用root方式设置,如果改为alias会简单一些。
[复制到剪贴板]

location /uploads/{
      
root /var/www/writeable/rickuploads/;
      
rewrite ^/uploads/(.*)$ /$break;
   } 



[复制到剪贴板]

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



以上两种设置方式的最终效果是一样的。

引用通告地址 (0):
复制引用地址https://www.rickw.cn/trackback/318
复制引用地址https://www.rickw.cn/trackback/318/GBK
[ 分类:其它运维与编程  | 查看:907 ]

暂时没有评论,快来发表一个评论吧。
发表评论
作者:   用户:[访客] 
评论:

表  情
禁止表情 | 禁止UBB | 禁止图片 | 识别链接
对不起,你没有权限上传附件!
验证:
 
PoweredBy R-Blog V1.00 © 2004-2024 WWW.RICKW.CN, Processed in second(s) , 7 queries    京ICP备17058477号-5