nginx貌似没有虚拟目录的说法,因为它本来就是完完全全根据目录来设计并工作的。
如果非要给nginx安上一个虚拟目录的说法,那就只有alias标签比较“像”,干脆来说说alias标签和root标签的区别吧。
最基本的区别:alias指定的目录是准确的,root是指定目录的上级目录,并且该上级目录要含有location指定名称的同名目录。另外,根据前文所述,使用alias标签的目录块中不能使用rewrite的break。
说不明白,看下配置:
location /abc/ {
alias /home/html/abc/;
}
在这段配置下,http://test/abc/a.html就指定的是/home/html/abc/a.html。这段配置亦可改成
location /abc/ {
root /home/html/;
}
这样,nginx就会去找/home/html/目录下的abc目录了,得到的结果是相同的。
但是,如果我把alias的配置改成:
location /abc/ {
alias /home/html/def/;
}
那么nginx将会从/home/html/def/取数据,这段配置还不能直接使用root配置,如果非要配置,只有在/home/html/下建立一个 def->abc的软link(快捷方式)了。
一般情况下,在location /中配置root,在location /other中配置alias是一个好习惯。
至于alias和root的区别,我估计还没有说完全,如果在配置时发现奇异问题,不妨把这两者换换试试。
原文:http://www.sudone.com/nginx/nginx_alias.html
自己实践总结:
1、使用alias时目录名后面一定要加“/”
2、nginx、resin当虚拟目录名与真实目录同名时,虚拟目录比真实目录优先级要高。
3、前端nginx的虚拟目录与后端resin真实目录同名时,后端resin真实目录优先级要高(即使resin也配制了同名的别名)。
4、nginx+resin/tomcat整合过程中,发现Nginx的虚拟目录不能正确解析jsp,待解决。
分享到:
相关推荐
7.nginx root&alias文件路径配置 8.nginx日志配置 9.apache和nginx支持SSL配置 10.nginx日子切割 11.Nginx重新规则指南 12.Nginx逻辑运算 13.隐藏Nginx版本号的安全性与方法 14.CDN调度器HAProxy、Nginx、Vamish 15....
- `root`和`alias`:设置文档根目录,`root`是相对于配置文件的路径,`alias`则是绝对路径。 4. **Nginx反向代理与负载均衡**: 反向代理功能使得Nginx能隐藏后端服务器,提高安全性。通过`proxy_pass`,可以将...
“Host”请求头的值,如果没有该请求头,则为与请求对应的虚拟主机的首要主机名。 $query_string 与$args相同。 $realpath_root 按root指令或alias指令算出的当前请求的绝对路径。其中的符号链接都会解析成真是文件...
2. **解压**:将下载好的压缩包解压到一个合适的目录下,例如`D:\nginx`,这将成为Nginx的安装目录。 3. **启动服务**:可以通过执行`nginx.exe`来启动Nginx服务,默认情况下监听端口为80。日志文件会被放置在`D:\...
**Nginx与Nginx.conf配置详解** Nginx是一款高性能、轻量级的Web服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,以其稳定性高、性能出色、配置简单以及占用资源少等优点,在互联网行业中被广泛应用。...
通过配置`root`或`alias`指令,可以指定静态文件的存储路径。 **URL重写** Nginx支持基于正则表达式的URL重写规则,这使得可以对URL进行灵活的管理和美化,提高用户体验。使用`rewrite`指令可实现这一功能。 **...
3. root和alias:`root`用于设置请求的根目录,`alias`则可以重定向到任何路径,常用于URL重写。 4. index:指定服务器在找不到精确匹配的URI时,自动尝试的索引文件列表。 5. proxy_pass:在反向代理场景下,用于...
- 静态文件的处理通常在`location`块中完成,通过`root`或`alias`指令指定静态文件的路径。 - `root`指令设置根目录,例如:`root /var/www/html;`,这意味着所有相对于请求URL的文件路径都将从`/var/www/html`...
### 四、启动与管理Nginx - 启动Nginx:`sudo service nginx start` - 停止Nginx:`sudo service nginx stop` - 重启Nginx:`sudo service nginx restart` - 检查配置:`sudo nginx -t` 通过以上内容,你应该已经...
7. Nginx root&alias文件路径配置:root和alias指令用于指定请求处理时文件路径的映射关系。 8. Nginx日志配置:详细的日志记录可以帮助分析和监控服务器的运行状态,包括访问日志和错误日志的配置。 9. Apache和...
4. 静态文件处理:通过`root`或`alias`指令设置静态文件路径,Nginx能高效地发送静态资源。 5. URL重写:使用`rewrite`指令进行URL转换,增强网站路由功能。 三、反向代理与负载均衡 1. 反向代理:Nginx作为前端...
- `root` / `alias`:定义静态文件的根目录或特定路径。 - `index`:指定默认索引文件。 - `error_log`:设置错误日志路径和级别。 - `access_log`:设置访问日志路径和格式。 #### 4.2 反向代理配置 - `proxy_...
1. 配置Nginx虚拟主机可以为不同的网站服务,而无需为每个网站运行一个单独的Nginx实例。 2. 需要准备网站文件,并在Nginx配置文件中设置相应的server块,其中包括listen、server_name、root等指令。 知识点四:...
1. **下载与安装**:首先从官方或者可信源下载Nginx 1.16.0的Windows版本,解压缩到指定目录。 2. **配置文件**:主要的配置文件是`nginx.conf`,位于解压后的根目录下。通过编辑此文件,可以设置服务器的基本属性...
在 Nginx 主配置文件(`/usr/local/nginx/conf/nginx.conf`)中引入虚拟主机配置: ```nginx http { include /usr/local/nginx/conf/vhosts/*.conf; # 其他配置... } ``` 最后,重启 Nginx 应用新配置。 ### 6....
- `root`/`alias`:定义静态文件目录或动态请求的路径。 - `proxy_pass`:设置反向代理的目标地址。 - `access_log`/`error_log`:定义日志文件的位置和级别。 **5. 运维技巧** - **日志分析**:通过分析Nginx的...
- **使用 open_basedir 限制虚拟主机跨目录访问**:通过 `open_basedir` 设置允许访问的目录范围,防止跨目录攻击。 - **禁用不安全 PHP 函数**:列出并禁用可能带来安全隐患的 PHP 函数。 - **关注软件安全资讯**:...
- **静态文件服务**:使用`root`或`alias`指令提供静态资源服务。 - **日志配置**:通过`error_log`和`access_log`指定日志文件和级别。 **5. 高级功能** - **负载均衡**:利用`upstream`模块实现多服务器负载均衡...
虚拟主机的配置是Nginx中的一个重要部分,本教程会介绍如何准备站点并配置Nginx虚拟主机。通过修改Nginx的配置文件,用户可以灵活地设置服务器名、监听端口、服务器块、日志文件路径等参数,使得多个网站可以在同一...