nginx alias详解程序员

前言

  • nginx version: nginx/1.18.0
  • CentOS Linux release 7.6.1810 (Core)

alias 语法

alias 的官方说明: http://nginx.org/en/docs/http/ngx_http_core_module.html#alias

Syntax:	alias path; 
Default:	— 
Context:	location 

The path value can contain variables, except $document_root and $realpath_root.

示例

location /i/ { 
    alias /data/w3/images/; 
} 
  • 当请求为“/i/top.gif”时, 返回文件“/data/w3/images/top.gif”

配合 location 的正则表达式使用

location ~ ^/users/(.+/.(?:gif|jpe?g|png))$ { 
    alias /data/w3/images/\; 
} 
  • 当请求为“/user/head.png”时, 返回文件“/data/w3/images/head.png”
  • 当请求为“/user/2021/04/18/d3n4iik9.png”时, 返回文件“/data/w3/images/2021/04/18/d3n4iik9.png”

alias 与 root 的区别

location /images/ { 
    alias /data/w3/images/; 
} 
location /images/ { 
    root /data/w3; 
} 
  • 上面两个配置是等效的。
  • 当请求为“/images/head.png”时,且使用 alias 的情况下,返回文件 “/data/w3/images/head.png” (alias path + head.png)。
  • 当请求为“/images/head.png”时,且使用 root 的情况下,返回文件 “/data/w3/images/head.png” (alias path + /images/head.png)。
  • location/images/ ,且 root 目录下包含 images 时,nginx 推荐使用root(上面的例子,nginx推荐使用root)。反之,当 location/images/ ,且 root 目录下未包含 images 时,此时使用root将不能正常工作,需要使用 alias。

原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/1722.html

(0)
上一篇 2021年7月15日
下一篇 2021年7月15日

相关推荐

发表回复

登录后才能评论