Nginx在配置映射路径的时候,有时候看到的是root,有时候看到的是alias,这两个有什么区别?不念将带大家详细了解一下。
NGINX 是全球最受欢迎的 Web 服务器之一,用于反向代理和负载均衡,还提供 HTTP 服务器功能,主要是为实现最大性能和稳定性而设计的。
Ubuntu关于Nginx的命令:
1、安装Nginx:
apt-get install <a target="_blank" href="https://www.bunian.cn/tag/nginx" title="View all posts in nginx">nginx</a>
2、查看Nginx运行状态:
<a target="_blank" href="https://www.bunian.cn/tag/systemctl" title="View all posts in systemctl">systemctl</a> status nginx
3、启动Nginx:
systemctl start nginx
4、停止Nginx:
systemctl stop nginx
5、重启Nginx:
temctl restart nginx
Nginx 的核心设置主要在 Nginx config 文件中进行配置,下面我们来看下配置中root和alias的区别。
root 指定文件根文件夹对应的/URL 路径,例如,如果你的 Root 指令是 /var/www/bunian.cn,那么当用户请求 /static/img/bunian.png 时,Nginx 将为他们提供/var/www/bunian.cn/static/img/bunian.png
换句话说,将 URL 路径附加到根位置来形成要提供的最终文件路径。
举个例子:
server { server_name https://www.bunian.cn; listen 443; index index.html; root /var/www/bunian.cn; location / { try_files $uri $uri/ =404; } location ^~ /img { root /var/www/static; try_files $uri $uri/ =404; }}
如上配置,当用户访问https://www.bunian.cn/img/bunian.png
时,会找到/var/www/static/img/bunian.png
图片。
alias 指令就是将 URL 重新映射到根位置以外的其他目录,它对于从不同目录提供静态文件很有用,例如,如果位置 /static/ 的别名是 /var/www/static/images,那么当用户请求 /img/bunian.png 时,Nginx将在/var/www/static/images 中查找该文件。
我们同样举个例子:
server { server_name https://www.bunian.cn; listen 443; index index.html; root /var/www/bunian.cn; location / { try_files $uri $uri/ =404; } location ^~ /img { alias /var/www/static/images/; try_files $uri $uri/ =404; }}
如上配置,当用户访问https://www.bunian.cn/img/bunian.png
时,会找到/var/www/static/images/bunian.png
图片。
我们要注意:对于alias指定的文件夹,官方虽然没有强制要求加“/”,但是我们最好加上,以便阅读。
Nginx在Web开发中出场率非常高,本文主要讲解了什么时Nginx,重点对比了Nginx配置中root和alias指令的用法和区别,希望本文对您有所帮助,有任何疑问,欢迎在下方评论区与不念讨论!
Copyright © 2013-2021 8a.hk All Rights Reserved. 八艾云 版权所有 中山市八艾云计算有限公司 粤ICP备14095776号