千家信息网

CentOS7服务器如何搭建Tomcat

发表于:2024-11-27 作者:千家信息网编辑
千家信息网最后更新 2024年11月27日,小编给大家分享一下CentOS7服务器如何搭建Tomcat,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!tomcat下载地址:http://tomcat.apache.org/dow
千家信息网最后更新 2024年11月27日CentOS7服务器如何搭建Tomcat

小编给大家分享一下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.gztar -xzvf apache-tomcat-8.5.14.tar.gzmkdir /opt/tomcat /opt/tomcat/tomcat8.5mv 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                                                                           // 所有者设置为rootchmod 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/nologinpasswd 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

# 只保留一个handlershandlers = java.util.logging.ConsoleHandler

openssl

要安装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.0eyum install zlib-devel gcc./config shared zlib  --prefix=/usr/local/opensslmake & make installmv /usr/bin/openssl /usr/bin/openssl.oldmv /usr/include/openssl /usr/include/openssl.old                 // 如果不存在则忽略ln -s /usr/local/openssl/bin/openssl /usr/bin/opensslln -s /usr/local/openssl/include/openssl /usr/include/opensslecho "/usr/local/openssl/lib" >> /etc/ld.so.confldconfig -vopenssl version

tomcat native

参考文档: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.gzcd 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/bincp setclasspath.sh setenv.shchown root:tomcat setenv.shvim setenv.sh

内容修改为

LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$CATALINA_HOME/libexport LD_LIBRARY_PATH

自启动

创建启动脚本

vim /usr/lib/systemd/system/tomcat_jspxcms.service

启动脚本内容

[Unit]Description=Apache TomcatAfter=syslog.target network.target[Service]Type=forkingEnvironment="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.shExecStop=/opt/tomcat/default/bin/shutdown.shUser=jspxcmsGroup=jspxcms[Install]WantedBy=multi-user.target

启动服务

systemctl daemon-reloadsystemctl enable tomcat_jspxcmssystemctl start tomcat_jspxcms

看完了这篇文章,相信你对"CentOS7服务器如何搭建Tomcat"有了一定的了解,如果想了解更多相关知识,欢迎关注行业资讯频道,感谢各位的阅读!

0