Nginx简单使用(安装与使用,动静分离,集群模拟,session共享)
在windows中安装Nginx
1、下载Nginx
2、下载完,解压下载的nginx的压缩文件,在命令行,进入到nginx的目录,运行nginx:如下:
如果启动成功,在电脑的任务管理器中可以看到nginx的两个进程,如果没看到,说明启动失败:
在浏览器访问127.0.0.1就可以浏览nginx的首页:
如果nginx启动失败:
1)nginx的安装路径是否包含中文
2)查看80端口是否占用, 使用 netstat –aon 查看端口使用情况
3)关闭本机防火墙
nginx的windows版本的其他指令
启动 : start nginx
关闭nginx:
- nginx –s stop 快速退出
- nginx –s quit 优雅退出
重启nginx:
- nginx -s reload 在启动之后才能使用
修改nginx.conf 之后,需要重启nginx, 才起作用
Nginx 的配置详解【转载】:https://www.cnblogs.com/knowledgesea/p/5175711.html
Nginx反向代理的使用
需求:当我们访问nginx的服务器,而nginx服务器把请求反向代理到指定的tomcat服务器。
需要准备的环境:配置一个nginx服务器,和一个Tomcat服务器
1、修改nginx.conf文件,使用域名来区分虚拟主机(文件路径:D:\nginx-1.8.1\conf\nginx.conf)
server { listen 80; server_name localhost; location / { proxy_pass http://127.0.0.1:8080/项目名/; } }
开启toncat服务器,输入localhost 或者127.0.0.1 显示 welcome to Nginx!表示 Nginx启动成功
访问项目路径:localhost/文件路径/文件名 (通过Nginx代理服务器访问)
注意:在nginx.conf中的访问路径加了文件名,项目中的文件名都需要删除
使用nginx实现动静分离
Tomcat 处理动态资源,
传统项目: 动态资源(jsp/controller), 静态资源(css/js/图片/html), 发布Tomcat, 既要处理动态资源, 又要静态资源, 给Tomcat减压:
使用nginx实现动静分离, nginx 处理静态资源, 处理不了动态
1、把静态资源从项目中分离: 在nginx服务器某个目录下
2、修改nginx.conf文件:在nginx.conf配置文件中,进行配置
反向代理集群的模拟
1、需求:
有一台nginx服务器,和很多个应用服务器(Tomcat),通过Nginx来进行反向代理
2、搭建环境:
启动两个tomcat,但是它们的端口号不同,比如一个端口号是8080,一个端口号是8081
或者部署多台电脑,组成局域网,开启tomcat服务器,根据ip区分服务器
3、Nginx反向代理配置
在service之外添加
upstream tomcat_server{ server 10.1.11.**:8080 weight=10; server 10.1.11.**:8080; server 10.1.11.**:8080; }
配置一个虚拟主机:
server { listen 80; server_name localhost; location / { proxy_pass http://tomcat_server/; } }
负载均衡策略的默认为轮询(不写)加上一个weight为权重(权重越高,分配的请求的数量越多.默认权重是1)
Session共享
解决方案:
1) 使用ip_hash, 根据客户端的ip, 进行hash算法, 分配到指定的Tomcat服务器, 这个ip的所有的请求都会到同一个Tomcat服务器.
不会出现不同的session. 同一个session
2) 使用redis缓存session, 实现session共享 ***