server.xml中的环境/系统变量 [英] evironment/system variables in server.xml

查看:641
本文介绍了server.xml中的环境/系统变量的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

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

How can I use environment/system variables in tomcat server.xml, context.xml, etc configuration files?

我试图使用 $ {ENV_VAR_NAME} (用于环境和系统变量), $ {env.ENV_VAR_NAME} (用于环境变量)。没有什么似乎工作。

I tried to use ${ENV_VAR_NAME} (both for environment and system variable), ${env.ENV_VAR_NAME} (for environment variables). And nothing seems to work.

推荐答案

如何将它固定在我的框中。

How it's realixed in my box.

启动时:

#!/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

这篇关于server.xml中的环境/系统变量的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆