您好,登錄后才能下訂單哦!
小編給大家分享一下CentOS7服務器如何搭建Tomcat,希望大家閱讀完這篇文章之后都有所收獲,下面讓我們一起去探討吧!
tomcat下載地址:http://tomcat.apache.org/download-80.cgi
安裝在opt目錄下,并做軟鏈接
wget http://mirrors.hust.edu.cn/apache/tomcat/tomcat-8/v8.5.14/bin/apache-tomcat-8.5.14.tar.gz tar -xzvf apache-tomcat-8.5.14.tar.gz mkdir /opt/tomcat /opt/tomcat/tomcat8.5 mv apache-tomcat-8.5.14 /opt/tomcat/tomcat8.5/ ln -s /opt/tomcat/tomcat8.5/apache-tomcat-8.5.14 /opt/tomcat/tomcat8.5/default // 創建tomcat8.5默認軟鏈接 ln -s /opt/tomcat/tomcat8.5/default /opt/tomcat/default // 創建系統默認tomcat軟鏈接 rm -rf /opt/tomcat/tomcat8.5/apache-tomcat-8.5.14/webapps/{docs,examples,host-manager,manager,ROOT} // 刪除webapps下文件 chown root:root -R /opt/tomcat // 所有者設置為root chmod go+rX -R /opt/tomcat // 給組和其他用戶加上讀和執行權限,方便用戶啟動tomcat。 vim /opt/tomcat/tomcat8.5/apache-tomcat-8.5.14/conf/server.xml // 刪除該文件中的注釋,以后配置多實例時,更容易修改配置。(可選操作)
創建用戶主目錄
mkdir /data/tomcat
創建用戶
useradd -d /data/tomcat/jspxcms jspxcms // -d 指定主目錄 usermod -s /sbin/nologin jspxcms // 用戶不允許登錄shell: -s /sbin/nologin passwd jspxcms // 修改密碼 chmod u-w /data/tomcat/jspxcms // 去除用戶主目錄的寫權限,否則vsftp設置為chroot_local_user=YES時,會無法登錄 chown jspxcms:nginx /data/tomcat/jspxcms // 修改主目錄所屬的用戶組為nginx,使nginx可以訪問用戶主目錄 chmod g+rX /data/tomcat/jspxcms // 用戶目錄允許組成員進入,方便nginx訪問
準備CATALINA_BASE需要的內容
cd /data/tomcat/jspxcms mkdir {logs,work,temp,webapps,webapps/ROOT,backup} // 創建必須文件夾。backup作為備份文件夾 cp -R /opt/tomcat/default/conf ./ // 拷貝配置文件 chown -R jspxcms:jspxcms * // 設置目錄所有者
修改conf/server.xml文件
shutdown端口8005改為-1。
刪除AJP Connector port="8009"配置。
刪除訪問日志org.apache.catalina.valves.AccessLogValve配置。
修改8080端口為10001
autoDeploy改為false。關閉自動部署。自動部署時指檢查到classes變化后自動reload。
Connector可優化的選項。基本不用優化,優化后也看不到明顯的變化。
maxThreads:最大線程數,默認200。一般情況下足夠,高并發可以到400。不宜太大,線程切換也浪費性能。
maxConnections:最大連接數。NIO、NIO2默認值是10000,APR/native默認值8192。一般情況下足夠。可根據maxThreads值適當加大。
acceptCount:到達maxConnections數后,可以接受的排隊請求。默認100。超過這個值的請求會被拒絕。一般默認就可以,作用不是很大。可以加到200或400。
修改conf/loggin.properties
# 只保留一個handlers handlers = java.util.logging.ConsoleHandler
要安裝openssl-1.1.0 源碼下載: https://www.openssl.org/source/
yum安裝的openssl-1.0.1e版本太低,無法編譯tomcat native。
wget https://www.openssl.org/source/openssl-1.1.0e.tar.gz // 下載 tar -xzvf openssl-1.1.0e.tar.gz // 解壓 mv openssl-1.1.0e /usr/local/src/ // 需要解壓到`/usr/local/src`目錄下,否則無法編譯 cd /usr/local/src/openssl-1.1.0e yum install zlib-devel gcc ./config shared zlib --prefix=/usr/local/openssl make & make install mv /usr/bin/openssl /usr/bin/openssl.old mv /usr/include/openssl /usr/include/openssl.old // 如果不存在則忽略 ln -s /usr/local/openssl/bin/openssl /usr/bin/openssl ln -s /usr/local/openssl/include/openssl /usr/include/openssl echo "/usr/local/openssl/lib" >> /etc/ld.so.conf ldconfig -v openssl version
參考文檔:http://tomcat.apache.org/native-doc/
yum install apr-devel //安裝依賴 cd /opt/tomcat/tomcat8.5/apache-tomcat-8.5.14/bin/ tar -xzvf tomcat-native.tar.gz cd tomcat-native-1.2.12-src/native ./configure --with-apr=/usr/bin/apr-1-config \ --with-java-home=/opt/java/default/ \ --with-ssl=/usr/local/openssl \ --prefix=/opt/tomcat/default/ make && make install //編譯后文件在這個目錄:$CATALINA_HOME/lib
創建native環境變量
cd /opt/tomcat/tomcat8.5/apache-tomcat-8.5.14/bin cp setclasspath.sh setenv.sh chown root:tomcat setenv.sh vim setenv.sh
內容修改為
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$CATALINA_HOME/lib export LD_LIBRARY_PATH
創建啟動腳本
vim /usr/lib/systemd/system/tomcat_jspxcms.service
啟動腳本內容
[Unit] Description=Apache Tomcat After=syslog.target network.target [Service] Type=forking Environment="JAVA_HOME=/opt/java/default" # 設置java內存。解決createSecureRandom耗時長的問題。 Environment="CATALINA_OPTS=-Xms200M -Xmx350M -Djava.security.egd=file:/dev/./urandom -Duser.dir=/data/tomcat/jspxcms" Environment="CATALINA_HOME=/opt/tomcat/default" Environment="CATALINA_BASE=/data/tomcat/jspxcms" # 默認UMASK為0027,為了能夠讓nginx訪問,設置為0022。 Environment="UMASK=0022" ExecStart=/opt/tomcat/default/bin/startup.sh ExecStop=/opt/tomcat/default/bin/shutdown.sh User=jspxcms Group=jspxcms [Install] WantedBy=multi-user.target
啟動服務
systemctl daemon-reload systemctl enable tomcat_jspxcms systemctl start tomcat_jspxcms
看完了這篇文章,相信你對“CentOS7服務器如何搭建Tomcat”有了一定的了解,如果想了解更多相關知識,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。