Nginx常见应用
Nginx 最常见的几种应用场景
- 反向代理
- 负载均衡(反向代理某个应用服务器集群)
- 动静分离(可以作为静态服务器来使用)
- Nginx集群部署(实现高可用)
上述应用都会牵扯到nginx.conf配置文件的配置,具体配置详解参见道人另一篇文章。
一:反向代理
示例演示(Nginx服务器反向代理两个tomcat服务)
Nginx服务器部署在192.168.32.133虚机上
web服务器(道人配置的两台虚机)
- 192.168.32.134 上布置tomcat1(端口8080)
- 192.168.32.135 上布置tomcat2(端口8080)
关键在于Nginx配置文件的配置
主要是在http块中的server块中配置 server_name 和 location 这两个属性,详细配置如下。
修改window客户端hosts文件(模仿下域名访问)
- hosts目录是:C:\Windows\System32\drivers\etc
192.168.32.133 www.tomcat1.com
192.168.32.133 www.tomcat2.com
Nginx.conf 配置文件配置如下
...
http {
include mime.types;
default_type application/octet-stream;
sendfile on;
keepalive_timeout 65;
# 第一个虚拟服务器
server {
listen 80;
# 这里需要修改为你代理的服务器地址
server_name www.tomcat1.com;
location / {
root html;
# 这里要更换为你代理的服务器路径
proxy_pass http://192.168.32.134:8080;
index index.jsp;
}
}
# 第二个虚拟服务器
server {
listen 80;
# 这里需要修改为你代理的服务器地址
server_name www.tomcat2.com;
location / {
root html;
# 这里要更换为你代理的服务器路径
proxy_pass http://192.168.32.135:8080;
index index.jsp;
}
}
}
关键配置:
重启Nginx,访问www.tomcat1.com,和www.tomcat2.com网址,均可正常访问。
二:负载均衡
假设tomcat1,tomcat2布置的是同一服务,Nginx实现请求在两台服务器上均匀分布。
关键配置
http{
...
#设定负载均衡的服务器列表
upstream myserver {
#weigth参数表示权值,权值越高被分配到的几率越大
server 192.168.32.134:8080 weight=1;
server 192.168.32.135:8080 weight=1;
}
server {
#侦听80端口
listen 80;
#定义使用www.xx.com访问
server_name www.xx.com;
#默认请求
location / {
# 代理地址
proxy_pass http://myserver;
root /root; #定义服务器的默认网站根目录位置
index index.php index.html index.htm;
}
}
}
Nginx.conf 配置文件配置如下