如何从TomCat中运行的Java应用程序中读取Apache Httpd Env变量?
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了如何从TomCat中运行的Java应用程序中读取Apache Httpd Env变量?,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1101字,纯文字阅读大概需要2分钟。
内容图文
![如何从TomCat中运行的Java应用程序中读取Apache Httpd Env变量?](/upload/InfoBanner/zyjiaocheng/756/b85244d3659a4a90b385994e7e24066d.jpg)
我在Apache Httpd后面的TomCat容器中运行了几个Java应用程序.在Apache Httdp中,如果安装了mod_env,则可以使用SetEnv FOO bar设置Env变量.如何在TomCat中运行的Java应用程序中读取这些变量?
Java应用程序主要使用Stripes构建,如果有帮助的话.
解决方法:
因为Tomcat是在Apache之外启动的,所以它无法访问Apache环境.这意味着您需要一些方法将环境变量从Apache传递到Tomcat.
如果使用mod_jk连接Apache和Tomcat,则可以使用JkEnvVar指令将特定变量传递给Tomcat.从mod_jk documentation:
The directive
JkEnvVar
allows you to forward environment variables from Apache server to Tomcat engine. You can add a default value as a second parameter to the directive. If the default value is not given explicitly, the variable will only be send, if it is set during runtime.
The variables can be retrieved on the Tomcat side as request attributes viarequest.getAttribute(attributeName)
. Note that the variables send viaJkEnvVar
will not be listed inrequest.getAttributeNames()
.
如果您使用的是HTTP代理(mod_proxy)而不是mod_jk,则可以使用mod_headers将环境变量作为请求标头传递,例如:
RequestHeader set X-MYVAR %{MYVAR}e
…然后在Tomcat中你必须提取X-MYVAR标题.
内容总结
以上是互联网集市为您收集整理的如何从TomCat中运行的Java应用程序中读取Apache Httpd Env变量?全部内容,希望文章能够帮你解决如何从TomCat中运行的Java应用程序中读取Apache Httpd Env变量?所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。