nginx root && alias 文件路径配置

文章摘自:http://www.ttlsa.com/nginx/nginx-root_alias-file-path-configuration/

nginx指定文件路径有两种方式root和alias,这两者的用法区别,使用方法总结了下,方便大家在应用过程中,快速响应。root与alias主要区别在于nginx如何解释location后面的uri,这会使两者分别以不同的方式将请求映射到服务器文件上。

[root]
语法:root path
默认值:root html
配置段:http、server、location、if

[alias]
语法:alias path
配置段:location

实例:

location ~ ^/weblogs/ {
root /data/weblogs/www.ttlsa.com;
autoindex on;
auth_basic "Restricted";
auth_basic_user_file passwd/weblogs;
}

1

2

3

4

5

6

location ~ ^/weblogs/ {

root /data/weblogs/www.ttlsa.com;

autoindex on;

auth_basic            "Restricted";

auth_basic_user_file  passwd/weblogs;

}

如果一个请求的URI是/weblogs/httplogs/www.ttlsa.com-access.log时,web服务器将会返回服务器上 的/data/weblogs/www.ttlsa.com/weblogs/httplogs/www.ttlsa.com-access.log的文 件。
[info]root会根据完整的URI请求来映射,也就是/path/uri。[/info]
因此,前面的请求映射为path/weblogs/httplogs/www.ttlsa.com-access.log。

location ^~ /binapp/ {
limit_conn limit 4;
limit_rate 200k;
internal;
alias /data/statics/bin/apps/;
}

1

2

3

4

5

6

location ^~ /binapp/ {

limit_conn limit 4;

limit_rate 200k;

internal;

alias /data/statics/bin/apps/;

}

alias会把location后面配置的路径丢弃掉,把当前匹配到的目录指向到指定的目录。如果一个请求的URI是/binapp /a.ttlsa.com/favicon时,web服务器将会返回服务器上的/data/statics/bin/apps/a.ttlsa.com /favicon.jgp的文件。
[warning]1. 使用alias时,目录名后面一定要加"/"。
2. alias可以指定任何名称。
3. alias在使用正则匹配时,必须捕捉要匹配的内容并在指定的内容处使用。
4. alias只能位于location块中。[/warning]

时间: 2024-10-13 20:58:27

nginx root && alias 文件路径配置的相关文章

nginx root&alias文件路径配置

转:https://www.ttlsa.com/nginx/nginx-root_alias-file-path-configuration/ 总结: alias 改变了访问路径.root对应location匹配位置的 第一个/  alias对应location匹配位置的最后一个 / 如:root /var/www    alias /var/ttt/   location 匹配 /a/  访问/a/b/a.html   root 对应结果 /var/www/a/b/a.html  alias

django中静态文件路径配置

#环境:ubuntu12.04+python27+django1.4.2+[ngix]+fastcgi; #如果经过ngix服务器的话无疑可以在任意位置放置,只要在ngix中配置相关的路径文件,但很多时候在调试时我们不想经过ngix服务器,那就需要对django进行静态文件的路径配置. #首先我想把我的静态文件放在项目的根目录下,创建一个static的文件夹,为了便于显示效果,我在static下放置了一个sa.txt文件,里面随意写一些内容! #文件目录如图所示: #打开settings.py文

django2.2 版本static静态文件路径配置出错的问题解决方案。

1. 创建目录 static 和 templates首先你需要在自己的应用程序目录下面创建2个子目录 static 和 templates,static下存放静态文件,templates下存放网页模板文件 2. settings.py设置STATICFILES_DIRS打开settings.py,在底部添加: STATIC_URL = '/static/'STATICFILES_DIRS = (    os.path.join(os.path.join(BASE_DIR, '应用程序名字/sta

nginx学习笔记之基于端口的虚拟主机基于主机名的虚拟主机root、alias、index配置

nginx学习笔记之基于端口的虚拟主机基于主机名的虚拟主机root.alias.index配置 实验环境: centos 测试节点IP:172.16.3.101 基于端口的虚拟主机: vim /etc/nginx/nginx.conf # 向里面的http {}里面加入如下内容   server { # server定义一个虚拟主机         listen 8080; # 监听本机所有IP端口8080         server_name www.test.com; # 虚拟主机名为:w

nginx中文件路径表示方法

nginx指定文件路径有两种方式root和alias,这两者的用法区别,使用方法总结了下,方便大家在应用过程中,快速响应.root与alias主要区别在于nginx如何解释location后面的uri,这会使两者分别以不同的方式将请求映射到服务器文件上. [root]语法:root path默认值:root html配置段:http.server.location.if [alias]语法:alias path配置段:location 实例: location ~ ^/weblogs/ {   

Nginx之alias和root指令

alias与root区别: (1)alias指定的目录是准确的,即location匹配访问的path目录下的文件直接是在alias目录下查找的:(2)root指定的目录是location匹配访问的path目录的上一级目录,这个path目录一定要是真实存在root指定目录下的:(3)使用alias标签的目录块中不能使用rewrite的break:另外,alias指定的目录后面必须要加上"/"符号!(4)alias虚拟目录配置中,location匹配的path目录如果后面不带"/

nginx root和alias指令的区别

# alias location /js/{ alias /static/;}#上述配置,访问/js/目录的时候,nginx自动会去找/static/下面的文件 # rootlocation /js/{ root /static;}#上述配置,访问/js/目录的时候,nginx自动会去找/static/js/下面的文件 总结:alias是一个目录别买的定义,root则是最上层目录的定义,alias后面必须用"/"结尾,不然会找不到文件

nginx root与alias区别

引用于文章https://blog.csdn.net/line_aijava/article/details/71473793 root: Sets the root directory for requests. For example, with the following configuration location /i/ { root /data/w3; }//The /data/w3/i/top.gif file will be sent in response to the "/i

Nginx修改静态文件访问路径

外网用户访问服务器的 Web 服务由 Nginx 提供,Nginx 需要配置静态资源的路径信息才能通过 url 正确访问到服务器上的静态资源.打开 Nginx 的默认配置文件 vim /usr/local/nginx/conf/nginx.conf 将service中添加如下配置 root 静态文件根路径 示例代码:/etc/nginx/nginx.conf user nobody nobody; worker_processes 2; error_log /usr/local/nginx/lo