![](https://img.haomeiwen.com/i4994935/34687036a4451504.png)
安装Nginx
Windows:
• 下载地址: http://nginx.org/en/download.html
• 双击nginx.exe进行启动
• 在命令行中执行 nginx -s stop 停止服务
• 在命令行中执行 nginx -s reload 重新加载
• 配置文件地址: /conf/nginx.conf
修改Tomcat配置文件
Tomcat -A的配置文件无需修改,端口号默认为8080
Tomcat -B的配置文件进行修改
![](https://img.haomeiwen.com/i4994935/c69804f0f7d8f21a.png)
修改Nginx的配置文件
![](https://img.haomeiwen.com/i4994935/fea12598aeb8c7d5.png)
![](https://img.haomeiwen.com/i4994935/dad585ca3fccdee7.png)
后端服务器获取真实的IP
![](https://img.haomeiwen.com/i4994935/8fe9addffce63755.png)
Session怎么办
借助redis同步session
![](https://img.haomeiwen.com/i4994935/0cd9b105dd6da6da.png)
项目名称 tomcat -redis-session-manager
• 项目地址 https://github.com/jcoleman/tomcat-redis-session-manager
• 使用步骤:
• 将以下jar包放入到tomcat的lib目录中
• tomcat -redis-session-manager-2.x.jar
• jedis-2.x.jar
• commons-pool2-2.x.jar
• 修改tomcat中的context.xml配置文件
tomcat7
修改过tomcat contenxt.xml
![](https://img.haomeiwen.com/i4994935/b72ebe814a4045b2.png)
comcat8
![](https://img.haomeiwen.com/i4994935/52d630f5aaee0d33.png)
线上使用
![](https://img.haomeiwen.com/i4994935/84bb09c1fd1e81c4.png)
user nginx;
worker_processes 4;
#error_log logs/error.log;
#error_log logs/error.log notice;
#error_log logs/error.log info;
#pid logs/nginx.pid;
events {
use epoll;
worker_connections 40960;
}
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 65;
server_tokens off;
gzip on;
gzip_min_length 1000;
gzip_types text/plain application/x-javascript text/css application/xml;
#autoindex on;
#autoindex_exact_size on;
#autoindex_localtime on;
client_max_body_size 300M;
include vhosts/*.conf;
}
新建 vhosts文件夹
![](https://img.haomeiwen.com/i4994935/3bba90521125bf25.png)
server {
listen 8082;
server_name 10.255.247.112;
charset utf-8;
access_log logs/appstore-admin.log main;
location ~ ^/(WEB-INF)/ {
deny all;
}
location ~ \.(htm|html|gif|jpg|jpeg|png|ico|rar|css|js|zip|txt|flv|swf|doc|ppt|xls|pdf|jar|jad)$ {
root /opt/www/commons/;
access_log off;
expires 24h;
}
location / {
proxy_pass http://127.0.0.1:18083;
proxy_redirect off;
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
client_max_body_size 300m;
client_body_buffer_size 128k;
proxy_connect_timeout 300;
proxy_send_timeout 300;
proxy_read_timeout 300;
proxy_buffer_size 4k;
proxy_buffers 4 32k;
proxy_busy_buffers_size 64k;
proxy_temp_file_write_size 64k;
}
#error_page 404 /404.html;
# redirect server error pages to the static page /50x.html
#
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
启动脚本
#! /bin/bash
# Description: Startup script for webserver on CentOS. cp it in /etc/init.d and
# chkconfig --add nginx && chkconfig nginx on
# then you can use server command control nginx
#
# chkconfig: 2345 08 99
# description: Starts, stops nginx
set -e
PATH=$PATH:/opt/servers/nginx/sbin/
DESC="nginx daemon"
NAME=nginx
DAEMON=/opt/servers/nginx/sbin/$NAME
CONFIGFILE=/opt/servers/nginx/conf/nginx.conf
PIDFILE=/opt/servers/nginx/logs/nginx.pid
SCRIPTNAME=/etc/init.d/$NAME
# Gracefully exit if the package has been removed.
test -x $DAEMON || exit 0
d_start() {
$DAEMON -c $CONFIGFILE || echo -n " already running"
}
d_stop() {
kill -QUIT `cat $PIDFILE` || echo -n " not running"
}
d_reload() {
kill -HUP `cat $PIDFILE` || echo -n " can't reload"
}
case "$1" in
start)
echo -n "Starting $DESC: $NAME"
d_start
echo "."
;;
stop)
echo -n "Stopping $DESC: $NAME"
d_stop
echo "."
;;
reload)
echo -n "Reloading $DESC configuration..."
d_reload
echo "reloaded."
;;
restart)
echo -n "Restarting $DESC: $NAME"
d_stop
sleep 1
d_start
echo "."
;;
*)
echo "Usage: $SCRIPTNAME {start|stop|restart|force-reload}" >&2
exit 3
;;
esac
exit 0
网友评论