之前除了一篇nginx基础安装和基础使用的文章,由于长时间不使用nginx 了,再写一篇文章加强一下对nginx 的理解;当然更深入细致的理解最好去官网细致学习一下,并配和实践多多练习才是最好的;
nginx常用的特性:
- 虚拟主机
- 反向代理
- 负载均衡
虚拟主机:
同一个物理主机提供多个网站的服务,在用户端感知是不同的网站地址,以为是不同的服务器在提供服务,实际则是同一个服务器;通过不同的ip、域名、端口、路径进行区分,常用的方式也是这几种;这样的好处是多个网站共同享用资源,使物理资源得到最大化的使用,降低了闲置成本;当然坏处也是有的,不适合可用性,可靠性要求比较高的系统使用,如果服务器宕机,那部署在这个服务器上的所有服务将无法使用;
反向代理
不直接暴露原有服务的地址和端口,通过访问另一个地址ip的方式间接访问服务,而这里另一个地址ip就是原有服务的代理,反向的提原服务提供服务;
负载均衡
对于访问量比较大的系统,我们可以通过部署集群的方式来分担一个服务器的压力,nginx 可以提供一个统一个入口,按照一定的规则分发到不同的集群节点上;nginx有着优秀的负载均衡能力,单个nginx 能负载5万的访问量;
反向代理和负载均衡的配置同时使用的场景比较多;
虚拟主机案例
基于域名的虚拟主机:
1、为虚拟主机提供域名和IP的映射
echo "192.168.229.60 www.ly.com www.weq.com" >> /etc/hosts
2、为不同完整配置主页.
mkdir -p /var/www/html/ly/
mkdir -p /var/www/html/weq/
echo "<h1>www.ly.com</h1>" > /var/www/html/ly/index.html
echo "<h1>www.weq.com</h1>" > /var/www/html/weq/index.html
3、修改配置文件
vim /usr/local/nginx/conf/nginx.conf
server {
listen 80;
server_name www.ly.com; #设置域名
charset utf-8; #设置网页字符集
access_log logs/ly.com.access.log; #设置日志名
location / {
root /var/www/html/ly; #设置www.ly.com的工作目录
index index.html index.htm;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
server {
listen 80;
server_name www.weq.com; #设置域名
charset utf-8; #设置网页字符集
access_log logs/weq.com.access.log; #设置日志名
location / {
root /var/www/html/weq; #设置www.weq.com的工作目录
index index.html index.htm;
}
4、重启nginx
5、分别浏览器访问http://www.ly.com、http://www.weq.com会看到不同的主页内容;文章来源:https://www.toymoban.com/news/detail-645453.html
反向代理、负载均衡案例
这两个可以参考网友们提供的这个案例就够了,既有反向代理proxy_pass配置,也用到了upstream配置
这里location后的路径要注意一下,其匹配规则有一定的优先级,且这里的距离地址,就是浏览器内除了ip:port以外的其他部分,例如http:127.0.0.1:8080/seriver/api,location的内容就是控制除了http:127.0.0.1:8080这部分之外其他路径的访问情况的;文章来源地址https://www.toymoban.com/news/detail-645453.html
到了这里,关于Nginx配置文件理解的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!