Linux Centos7 64位系统。安装gcc-c++编译环境(yum install gcc-c++ -y)。
安装pcre。https://ftp.pcre.org/pub/pcre/
tar zxvf pcre-8.32.tar.gz
cd pcre-8.32
./configure
make && make install
安装zlib。 http://www.zlib.net/zlib-1.2.11.tar.gz
tar zxvf zlib-1.2.11.tar.gz
cd zlib-1.2.11
./configure
make && make install
安装openssl。https://www.openssl.org/source/openssl-fips-2.0.16.tar.gz
tar zxvf openssl-fips-2.0.16.tar.gz
cd openssl-fips-2.0.16
./config
make && make install
1)安装nginx。http://nginx.org/download/nginx-1.12.2.tar.gz
tar zxvf nginx-1.12.2.tar.gz
cd nginx-1.12.2
./configure
make && make install
2)nginx安装完后所在位置: /usr/local/nginx
cd /usr/local/nginx
3)执行指令启动 sbin/nginx
sbin/nginx
4)配置文件 conf/nginx.conf (核心配置文件)
vi conf/nginx.conf
1)全局配置
# 全局配置
worker_processes 1; #工作进程数(和CPU内核数量保持一致)
error_log logs/error.log; # 错误日志配置
#error_log logs/error.log notice;
#error_log logs/error.log info;
#pid logs/nginx.pid;
# 动态配置
events {
# 连接数执行
worker_connections 1024;
}
# 对http环境配置
http {
# 网站处理数据类型
include mime.types;
# 默认数据传输格式
default_type application/octet-stream;
# 支持文件发送
sendfile on;
# 虚拟主机(网站)
server {
# 监听端口号
listen 80;
# 服务器主机域名
server_name localhost;
# 网站url映射
location / {
# 静态资源所在位置(相对路径或绝对路径)
root html;
# 默认首页
index index.html index.htm;
}
#error_page 404 /404.html;
# redirect server error pages to the static page /50x.html
# 错误重定向页面指定(跳转url)
error_page 500 502 503 504 /50x.html;
# 网站url映射
location = /50x.html {
root html;
}
}
}
※ 生产和开发服务器防火墙配置:关闭selinux、设置firewalld
临时关闭selinux -- setenforce 0
临时关闭firewall -- systemctl stop firewalld
# 反向代理声明
upstream 自定义名称{
# 代理的tomcat服务器、或者填写动态云服务器的IP
server 127.0.0.1:8080;
}
server{
# 监听端口号
listen 80;
# 服务器主机域名
server_name localhost;
# 映射静态资源目录
root /www/itrap/itrapfront;
# 映射/的URL
location /{
# 把客户端的主机信息和信息通过nginx传递给后台代理tomcat服务器
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
# 映射反向代理声明
proxy_pass http://自定义的名称;
}
}
location ~ .*\.(gif|jpg|jpeg|png|bmp|ioc|rar|zip|txt|flv|mid|doc|ppt|pdf|xls|wma|woff|woff2|ttf|mp4|htm|html|swf|mp3){
expires 6h;
} *缓存时间设置*
location ~ .*\.(js|css){
expires 2h;
}
nginx指令:
检测nginx配置文件内容格式是否正确
sbin/nginx -t
※ 如果发生格式或内容错误,错误信息会动态的显示出来。
使用新的配置文件重启nginx
sbin/nginx -s reload
nginx的upstream中指定负载均衡
默认设置 -- 轮询
server 127.0.0.1:8080 weight=20; --权重
独立一行写ip_hash; -- 通过客户端IP动态分配固定tomcat,长期服务。(多服务器下session持久化问题)