來源: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)