nginx+tomcat
全部系統(tǒng)采用centos7.1
各節(jié)點(diǎn)配置好hosts文件
cat /etc/hosts
172.16.92.1?? ?node1.centos7.com?? ?node1
172.16.92.2?? ?node2.centos7.com?? ?node2
172.16.92.3?? ?node3.centos7.com?? ?node3
node2, node3 --> tomcat ( jsp網(wǎng)站服務(wù)器 )
node1 --> nginx反向代理至tomcat
================ node2 172.16.92.2/16 ===================
安裝JDK(光盤(pán)源)
yum -y install java-1.7.0-openjdk
安裝二進(jìn)制tomcat
wget http://archive.apache.org/dist/tomcat/tomcat-8/v8.0.23/bin/apache-tomcat-8.0.23.tar.gz
tar xf apache-tomcat-8.0.23.tar.gz -C /usr/local
cd /usr/local
ln -sv apache-tomcat-8.0.23 tomcat
vim /etc/profile.d/tomcat.sh
(:set paste)
export CATALINA_HOME=/usr/local/tomcat
export PATH=$PATH:$CATALINA_HOME/bin
================
. /etc/profile.d/tomcat.sh
catalina.sh --help
catalina.sh version
catalina.sh start
windows瀏覽器訪問(wèn) http://172.16.92.2:8080/ 能看到tomcat首頁(yè)即可
linux 訪問(wèn) curl -I? http://172.16.92.2:8080/ 看到 HTTP/1.1 200 OK 即可
catalina.sh stop
mkdir -pv /data/webapps/ROOT
cd tomcat/conf
vim server.xml
#添加虛擬主機(jī)
<Engine name="Catalina" defaultHost="node2.centos7.com">?? #修改
:set nu
:123,139y? -> p -> 修改成如下
????? <Host name="node2.centos7.com"? appBase="/data/webapps" autoDeploy="true">
??????? <Context path="" docBase="ROOT" />
????????? <Valve className="org.apache.catalina.valves.AccessLogValve" directory="/data/logs"
?????????????? prefix="tomcat1_access_log" suffix=".txt"
?????????????? pattern="%h %l %u %t "%r" %s %b" />
????? </Host>
==============
mkdir /data/logs
catalina.sh configtest
>全部都是INFO開(kāi)頭的就正常了
(難道是把jar放在 /data/webapps/ROOT/lib 下?)
mkdir -pv /data/webapps/ROOT/{lib,classes,META-INF,WEB-INF}
vim /data/webapps/ROOT/index.jsp
<%@ page language="java" %>
<%@ page import="java.util.*" %>
<html> ?
??????? <head>???????????????? ?
??????????????? <title>JSP Test Page on web 1</title>
??????? </head>
??????? <body> ?
??????????????? <% out.println("JSP Test Page on tomcat 1"); %>
??????? </body>
</html>
================
catalina.sh start
ss -tnal | grep 8080
windows 瀏覽器訪問(wèn) http://172.16.92.2:8080/
出現(xiàn) "JSP Test Page on tomcat 1"
linux 訪問(wèn)方式? curl? http://172.16.92.2:8080/
出現(xiàn) html的網(wǎng)頁(yè)代碼
================ node3 172.16.92.3/16 ===================
安裝JDK(光盤(pán)源)
yum -y install java-1.7.0-openjdk
安裝tomcat
scp node2:/root/apache-tomcat-8.0.23.tar.gz ./
tar xf apache-tomcat-8.0.23.tar.gz -C /usr/local
cd /usr/local
ln -sv apache-tomcat-8.0.23 tomcat
vim /etc/profile.d/tomcat.sh
(:set paste)
export CATALINA_HOME=/usr/local/tomcat
export PATH=$PATH:$CATALINA_HOME/bin
================
. /etc/profile.d/tomcat.sh
catalina.sh --help
catalina.sh version
catalina.sh start
windows瀏覽器訪問(wèn) http://172.16.92.3:8080/ 能看到tomcat首頁(yè)即可
linux 訪問(wèn) curl -I? http://172.16.92.3:8080/ 看到 HTTP/1.1 200 OK 即可
catalina.sh stop
cd /usr/local/tomcat/conf/
cp server.xml{,.bak}
scp node2:/usr/local/tomcat/conf/server.xml ./
vim server.xml
<Engine name="Catalina" defaultHost="node3.centos7.com">?? ?#修改
<Host name="node3.centos7.com"? appBase="/data/webapps" autoDeploy="true">??? #修改
prefix="tomcat2_access_log" suffix=".txt"?? ??? ?#修改
=================
scp -rp node2:/data /
vim /data/webapps/ROOT/index.jsp
<% out.println("JSP Test Page on tomcat 2"); %>?? ?#修改
==========
catalina.sh configtest
>全部都是INFO開(kāi)頭的就是正常了
catalina.sh start
windows 瀏覽器訪問(wèn) http://172.16.92.3:8080/
出現(xiàn) "JSP Test Page on tomcat 2"
linux 訪問(wèn)方式? curl? http://172.16.92.3:8080/
出現(xiàn) html的網(wǎng)頁(yè)代碼
================ node1 172.16.92.1/16 ===================
nginx做tomcat1,2的反向代理
安裝epel源
wget -O /etc/yum.repos.d/epel7.repo http://mirrors.aliyun.com/repo/epel-7.repo
yum -y install nginx
cd /etc/nginx
cp nginx.conf{,.bak}
vim nginx.conf
:1,$d -- 刪除全部?jī)?nèi)容
:set paste --> 再粘貼如下內(nèi)容
################
user nginx;
worker_processes auto;
error_log /var/log/nginx/error.log;
pid /run/nginx.pid;
events {
??? worker_connections 1024;
}
http {
??? 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? /var/log/nginx/access.log? main;
??? sendfile??????????? on;
??? tcp_nopush????????? on;
??? tcp_nodelay???????? on;
??? keepalive_timeout?? 65;
??? types_hash_max_size 2048;
??? include???????????? /etc/nginx/mime.types;
??? default_type??????? application/octet-stream;
??? include /etc/nginx/conf.d/*.conf;
??? upstream tcsrvs {
??????? server node2.centos7.com:8080;
??????? server node3.centos7.com:8080;
??? }
??? server {
??????? listen?????? 80 default_server;
??????? listen?????? [::]:80 default_server;
??????? server_name? _;
??????? root???????? /usr/share/nginx/html;
??????? # Load configuration files for the default server block.
??????? include /etc/nginx/default.d/*.conf;
??????? location / {
??????? }
??????? location ~* \.(jsp|do)$ {
??????????????? proxy_pass http://tcsrvs;
??????? }
??????? error_page 404 /404.html;
??????????? location = /40x.html {
??????? }
??????? error_page 500 502 503 504 /50x.html;
??????????? location = /50x.html {
??????? }
??? }
}
==================end of nginx.conf
nginx -t
>出現(xiàn)ok和successful相關(guān)句子就沒(méi)問(wèn)題了
systemctl start nginx.service
ss -tanl | grep 80
windows瀏覽器訪問(wèn) http://172.16.92.1/index.jsp
>JSP Test Page on tomcat 2
>JSP Test Page on tomcat 1
在上面兩個(gè)網(wǎng)頁(yè)之間輪詢(xún)
nginx實(shí)現(xiàn)會(huì)話(huà)綁定 (基于源地址哈希方式綁定)
vim /etc/nginx/nginx.conf
=============
......?? ??? ??? ??? ?#其余內(nèi)容不變
??? upstream tcsrvs {
??????? ip_hash;?? ??? ??? ?#添加此句
??????? server node2.centos7.com:8080;
??????? server node3.centos7.com:8080;
??? }
......?? ??? ??? ??? ?#其余內(nèi)容不變
=============
nginx -t
systemctl reload nginx.service
http://172.16.92.1/index.jsp
>JSP Test Page on tomcat 1 ?? ??? ?#固定在此頁(yè)面不再輪詢(xún)
轉(zhuǎn)載于:https://blog.51cto.com/changeflyhigh/1707496
總結(jié)
以上是生活随笔為你收集整理的nginx+tomcat的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: swift调用支付宝
- 下一篇: Java基础学习总结(42)——Log4