基本实例
服务器ip: 192.168.1.111
编译安装nginx
yum install -y gcc gcc-c++ pcre pcre-devel zlib zlib-devel openssl openssl-devel
./configure --with-http_stub_status_module --with-http_ssl_module && make && make install
基本反向代理
启动shop-boot,端口:8091
nginx 配置文件
#user nobody;
worker_processes 1;
#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 {
include mime.types;
default_type application/octet-stream;
log_format main '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for"';
#access_log logs/access.log main;
sendfile on;
#tcp_nopush on;
#keepalive_timeout 0;
keepalive_timeout 65;
#gzip on;
server {
listen 80;
server_name 192.168.1.111;
access_log logs/shopboot.access.log main;
location / {
proxy_pass http://127.0.0.1:8091;
proxy_set_header host $host;
proxy_set_header X-Forwarded-for $proxy_add_x_forwarded_for;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-Proto $scheme;
}
}
}
windows 添加映射
192.168.1.111 www.shopboot.com
nginx 轮询
重新启动一个shop-boot实例,需要修改jar包名称与端口
浏览器刷新无效,需要回车才能看到轮训的效果
nginx 配置文件
#user nobody;
worker_processes 1;
#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 {
include mime.types;
default_type application/octet-stream;
upstream 192.168.1.111 {
server 127.0.0.1:8092;
server 127.0.0.1:8091;
}
log_format main '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for"';
#access_log logs/access.log main;
sendfile on;
#tcp_nopush on;
#keepalive_timeout 0;
keepalive_timeout 65;
#gzip on;
server {
listen 80;
#server_name 192.168.1.111;
access_log logs/shopboot.access.log main;
location / {
proxy_pass http://192.168.1.111;
proxy_connect_timeout 10;
proxy_set_header host $host;
proxy_set_header X-Forwarded-for $proxy_add_x_forwarded_for;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-Proto $scheme;
}
}
}
docker 方式
nginx 位置:
/home/stest/docker/nginx
获取配置文件
# 首先运行一个nginx
docker run -p 80:80 --name nginx -d nginx:1.8.1
# 复制容器中的nginx配置文件到本地
docker cp -a nginx:/etc/nginx /home/stest/docker/nginx/conf
# 删除容器
docker stop nginx-1.8.1
docker rm nginx-1.8.1
配置文件
- /home/stest/docker/nginx/conf/shopboot.conf
upstream application {
server shop-boot:8091;
}
server {
listen 80;
server_name www.shopboot.com;
# access_log logs/shopboot.access.log main;
location / {
proxy_pass http://application;
proxy_connect_timeout 10;
proxy_set_header Host $host:$server_port;
proxy_set_header X-Forwarded-for $proxy_add_x_forwarded_for;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-Proto $scheme;
}
}
启动容器
docker run -p 80:80 --privileged=true --name nginx --link=shop-boot-test:shop-boot -v /home/stest/docker/nginx/www:/www -v /home/stest/docker/nginx/conf/:/etc/nginx/ -v /home/stest/docker/nginx/logs:/var/log/nginx -d nginx:1.8.1