准备工具:
安装包:nginx-1.12.0.tar.gz
下载地址: http://nginx.org/en/download.html
服务器环境:1.CentOS6.464 位
2. 安装 c++编译环境( 如果没有c++编译环境,请输入这串指令:yum install gcc-c++)
安装步骤:
1. 安装模块依赖库
1> pcre 库(rewrite)
yuminstall pcre* 或者 pcre-8.32.tar.gz
下载地址: http://www.pcre.org/
2> openssl 库(ssl)
yuminstall openssl* 或者 openssl-fips-2.0.16.tar.gz
下载地址: http://www.openssl.org/
3> zlib 库(gzip)
yuminstall zlib*或者 zlib-1.2.11.tar.gz
下载地址:http://www.zlib.net/
2. 安装 Nginx
./configure
make&makeinstall
3. 开放 80 端口
vim /etc/sysconfig/iptables
serviceiptablesrestart #最后重启防火墙使配置生效
4. 启动 Nginx
命令:usr/local/nginx/sbin/nginx
5. 访问 Nginx
http://服务器 IP
Nginx常用命令:
1. 负责裁剪的 Lua 脚本(/usr/local/Tengine/lua/ImageResizer.lua)
2. 启动:usr/local/nginx/sbin/nginx
3. 停止:usr/local/nginx/sbin/nginx-sstop
4. 重启:usr/local/nginx/sbin/nginx–sreload
5. 检查配置文件(nginx.conf)是否合法: usr/local/nginx/sbin/nginx–t
Nginx中conf目录下Nginx.conf配置文件意义:
1. 全局块
配置影响 Nginx 全局的指令。一般有运行 Nginx 服务器的用户组,Nginx 进程 pid
存放路径,日志存放路径,配置文件引入,允许生成 worker process 数等。
2. events 块
配置影响 Nginx 服务器或与用户的网络连接。有每个进程的最大连接数,选取哪种
事件驱动模型处理连接请求,是否允许同时接受多个网路连接,开启多个网络连接
序列化等。
3. http 块
设定 http 服务器,利用它的反向代理功能提供负载均衡支持,可以嵌套多个 server,
如果 http 服务,支持了多个虚拟主机,那么在 http 上下文里,就会出现多个 server
上下文。里面包括配置反向代理功能提供负载均衡支持,缓存,日志定义等绝大多
数功能和第三方模块的配置。
4. server 块
配置虚拟主机的相关参数,一个 http 中可以有多个 server。
5. location 块
配置请求的路由,以及各种页面的处理情况, location 根据其后面的正则进行匹配,
对请求 URL 过滤。
实现负载均衡
1.反向代理
upstreamitripbiz_server
{
server127.0.0.1:8080;
}
server{
listen 80;
server_name itrip.project.bdqn.cn;
root/data/itrip/itripfront;#前端静态工程
location/{
proxy_set_headerHost$host;
proxy_set_headerX-Real-IP$remote_addr;
proxy_passhttp://itripbiz_server; #反向代理地址
}
2.实现负载均衡(轮询)
upstreamitripbiz_server
{
server127.0.0.1:8080;
server127.0.0.1:8082;
}
server{
listen 80;
server_name itrip.project.bdqn.cn;
root/data/itrip/itripfront;#前端静态工程
location/{
proxy_set_headerHost$host;
proxy_set_headerX-Real-IP$remote_addr;
proxy_passhttp://itripbiz_server; #反向代理地址
}
2.实现负载均衡(热备)
upstreamitripbiz_server
{
server127.0.0.1:8080;
server127.0.0.1:8082backup;
}
server{
listen 80;
server_name itrip.project.bdqn.cn;
root/data/itrip/itripfront;#前端静态工程
location/{
proxy_set_headerHost$host;
proxy_set_headerX-Real-IP$remote_addr;
proxy_passhttp://itripbiz_server; #反向代理地址
}
2.实现负载均衡(权重)
upstreamitripbiz_server
{
server127.0.0.1:8080;
server127.0.0.1:8082weight=2;
}
server{
listen 80;
server_name itrip.project.bdqn.cn;
root/data/itrip/itripfront;#前端静态工程
location/{
proxy_set_headerHost$host;
proxy_set_headerX-Real-IP$remote_addr;
proxy_passhttp://itripbiz_server; #反向代理地址
}
IP 地址 hash(ip_hash)
可解决 Tomcat 之间 session 共享问题。并且基于权重的负载均衡和基于 IP 地
址哈希的负载均衡可以组合在一起使用。
upstreamitripbiz_server
{
ip_hash
server127.0.0.1:8080;
server127.0.0.1:8082;
}
server{
listen 80;
server_name itrip.project.bdqn.cn;
root/data/itrip/itripfront;#前端静态工程
location/{
proxy_set_headerHost$host;
proxy_set_headerX-Real-IP$remote_addr;
proxy_passhttp://itripbiz_server; #反向代理地址
}