安裝tomcat部署網站/nginx代理tomcat/tomcat部署多個網站

來源:https://blog.csdn.net/Powerful_Fyhtml

安裝jdk:java

Oracle官方下載 https://www.oracle.com/technetwork/java/javase/downloads/index.htmlmysql

yum安裝openjdk:linux

1.查找可以使用的jdk包:nginx

[root@linux ~]# yum list |grep jdk

2.選擇對應版本的包安裝:web

[root@linux ~]# yum -y install java-1.8.0-openjdk

安裝tomcat:sql

tomcat官網:http://tomcat.apache.org/ tomcat主流版本:7.0/8.5/9.0數據庫

下載tomcat二進制包:apache

[root@linux ~]# cd /usr/local/src/
[root@linux src]# wget https://mirrors.tuna.tsinghua.edu.cn/apache/tomcat/tomcat-9/v9.0.27/bin/apache-tomcat-9.0.27.tar.gz

解壓:bootstrap

[root@linux src]# tar -xzvf apache-tomcat-9.0.27.tar.gz

移動到/usr/local/目錄下:

[root@linux src]# mv apache-tomcat-9.0.27 /usr/local/tomcat

啓動tomcat:

[root@linux ~]# /usr/local/tomcat/bin/startup.sh 
Using CATALINA_BASE:   /usr/local/tomcat
Using CATALINA_HOME:   /usr/local/tomcat
Using CATALINA_TMPDIR: /usr/local/tomcat/temp
Using JRE_HOME:        /usr
Using CLASSPATH:       /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar
Tomcat started.

查看進程: ps -ef|grep tomcat 或 ps -ef|grep java

查看監聽端口:

[root@linux ~]# netstat -lntp |grep java
tcp6       0      0 :::8009                 :::*                    LISTEN      13601/java          
tcp6       0      0 :::8080                 :::*                    LISTEN      13601/java          
tcp6       0      0 127.0.0.1:8005          :::*                    LISTEN      13601/java

8080:web端口 8005:管理端口 8009:AJP端口(提供給第三方應用鏈接)

使用zrlog經過tomcat部署網站:

zrlog是一款開源的java博客系統,官網:https://www.zrlog.com/

下載zrlog:

[root@linux ~]# wget http://dl.zrlog.com/release/zrlog-2.1.3-b5f0d63-release.war?attname=ROOT.war&ref=index

移動到tomcat的webapps目錄下:

[root@linux ~]# mv zrlog-2.1.3-b5f0d63-release.war\?attname\=ROOT.war /usr/local/tomcat/webapps/zrlog.war

移動.war包到webapps目錄下時會自動解壓:

[root@linux ~]# cd /usr/local/tomcat/webapps/
[root@linux webapps]# ls
docs  examples  host-manager  manager  ROOT  zrlog  zrlog.war

將zrlog目錄改名爲ROOT:

[root@linux webapps]# mv ROOT ROOT.bak
[root@linux webapps]# mv zrlog ROOT

爲zrlog博客網站建立數據庫:

[root@linux ~]# mysql -uroot -p123456 -e "create database zrlog"

建立數據庫用戶並受權:

[root@linux ~]# mysql -uroot -p123456 -e "grant all on zrlog.* to 'zrloguser'@'127.0.0.1' identified by 'test123'"

#建立用戶zrloguser,密碼test123,受權host:127.0.01

從瀏覽器訪問:http://ip:8080/

在這裏插入圖片描述

#配置好數據庫信息後下一步

配置管理員帳號信息:

在這裏插入圖片描述

#輸入完成後點下一步即安裝成功

使用管理員帳號登陸後臺後便可進行各類設置:

在這裏插入圖片描述

爲何須要爲tomcat配置nginx反向代理?

1.當服務器上同時擁有nginx與tomcat時,tomcat修改8080端口爲80會衝突 2.tomcat不更改監聽端口8080便可使用nginx的80端口 3.Nginx對於靜態的請求速度上要優於Tomcat,Tomcat不擅長作高併發的靜態文件請求處理

添加nginx虛擬主機配置文件:

[root@linux ~]# vi /etc/nginx/conf.d/z.blog.com

添加以下內容:

erver {

        server_name z.blog.com;
        
        location /
        {
            proxy_pass http://127.0.0.1:8080;
            proxy_set_header Host $host;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        }
}

驗證配置並重載:

[root@linux ~]# nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
[root@linux ~]# nginx -s reload

修改Windows系統C:\Windows\System32\drivers\etc\hosts文件:

在這裏插入圖片描述

#將自定義的域名映射到服務器地址

在瀏覽器訪問:

在這裏插入圖片描述

#成功,在tomcat下部署的我的博客網站已經顯示,訪問不用再加上8080端口

使用tomcat部署多個網站的方法:

方法一:

修改tomcat配置文件:server.xml

[root@linux ~]# vi /usr/local/tomcat/conf/server.xml

添加一段新的host標籤:

<Host name="www.test2.com"  appBase="/data/www/test2.com"
      unpackWARs="true" autoDeploy="true">
</Host>

#name:指定域名,appBase:應用存放路徑(重啓tomcat後會自動建立),相似於新建一個webapps,因爲上一篇文章中已經將第一個網站使用nginx代理到80端口,將目錄下的應用包更名爲ROOT便可經過8080端口訪問

方法二:

新增一個tomcat:

[root@linux local]# cd
[root@linux ~]# cd /usr/local/
[root@linux local]# cp -r tomcat/ tomcat2

編輯配置文件server.xml:

[root@linux local]# vi tomcat2/conf/server.xml

修改8005端口爲8006,修改8080端口爲8081,8009端口的行能夠直接刪除 #可根據實際需求定義端口

啓動tomcat:

[root@linux ~]# /usr/local/tomcat2/bin/startup.sh

查看監聽端口:

[root@linux ~]# netstat -lntp |grep java
tcp6       0      0 :::8009                 :::*                    LISTEN      32371/java               
tcp6       0      0 :::8080                 :::*                    LISTEN      32371/java          
tcp6       0      0 :::8081                 :::*                    LISTEN      32290/java                    
tcp6       0      0 127.0.0.1:8005          :::*                    LISTEN      32371/java          
tcp6       0      0 127.0.0.1:8006          :::*                    LISTEN      32290/java

#8006端口與8081端口已監聽,將第二個網站的應用包放到tomcat2/webapps目錄下改名爲ROOT便可經過8081端口訪問

補充:

啓動tomcat時,8005端口啓動慢,這是由於tomcat在啓動時會調用系統的一個隨機字符設備

由於JVM調用了系統的/dev/random設備生成隨機數,而/dev/random生成隨機數時被block了,天然就會致使8005端口啓動慢,解決辦法是不使用/dev/random,而是使用/dev/urandom。

解決方法以下: 1.vi $JAVA_HOME/jre/lib/security/java.security

2.將securerandom.source=file:/dev/random改成securerandom.source=file:/dev/urandom

$JAVA_HOME路徑: 若是是openjdk(yum安裝的),在/usr/lib/jvm/ 若是是下載的二進制包,就是jdk的安裝目錄(如/usr/local/jdk_1.8)

相關文章
相關標籤/搜索