gpt4 book ai didi

tomcat - server.xml 中的环境/系统变量

转载 作者:行者123 更新时间:2023-11-28 21:45:03 24 4
gpt4 key购买 nike

如何在 tomcat server.xml、context.xml 等配置文件中使用环境/系统变量?

我尝试使用 ${ENV_VAR_NAME}(环​​境变量和系统变量),${env.ENV_VAR_NAME}(环​​境变量)。似乎没有任何效果。

最佳答案

它是如何在我的盒子里实现的。

用于启动的 Bash 脚本:

#!/bin/sh

SMEMORY=1G
XMEMORY=1G

if [ $ENV == DEV ]; then
port_shutdown="8005"
port_http="8080"
port_https="8443"
elif
[ $ENV == SIT ]; then
port_shutdown="8006"
port_http="8081"
port_https="8444"
elif
[ $ENV == UAT ]; then
port_shutdown="8007"
port_http="8082"
port_https="8445"
else
echo "Unknown ENV"
exit 1
fi

export CATALINA_OPTS=" ${SYSTEM_PROPS} -d64 -server -Xms$SMEMORY -Xmx$XMEMORY \
-XX:+UseCodeCacheFlushing -XX:ReservedCodeCacheSize=64M \
-XX:+HeapDumpOnOutOfMemoryError -XX:MaxPermSize=1024M \
-Dport.http=${port_http} -Dport.https=${port_https} -Dport.shutdown=${port_shutdown}"

exec $CATALINA_HOME/bin/startup.sh

server.xml中:

<Connector
port="${port.http}"
protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="${port.https}"
/>

看一下过程:

$ ps ux | grep tomcat
... -Xms1G -Xmx1G ... -Denv=KIEV_DEV... -Dport.http=8084 -Dport.https=8446 -Dport.shutdown=8008...

检查端口:

$ netstat -anp | grep java
(Not all processes could be identified, non-owned process info
will not be shown, you would have to be root to see it all.)
tcp 0 0 :::8084 :::* LISTEN 23343/java
tcp 0 0 :::8446 :::* LISTEN 23343/java

关于tomcat - server.xml 中的环境/系统变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11926181/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com