2012-04-14 122 views

回答

0

得到了解决方案......我所做的是我已经把出口陈述在/etc/init.d/tomcat6顶部,并通过命令sudo /etc/init.d/tomcat6 restart重新启动服务器。所以现在我在tomcat服务器上运行的web-app可以访问这个变量。

+5

我不认为修改本地Apache脚本'/ etc/init.d/tomcat6'是个好主意。您的更改可能会影响未来的更新,并且您正在修改默认的Tomcat行为。对我来说似乎很难受。 – 2013-04-09 15:50:29

+2

我同意你的意见。请给我建议任何其他方式来做到这一点。我已将AWS CloudFormation上的所有环境设置为适用于AWS Infrastructure中的自动化。所以可能它会自动完成所有的事情。但仍然在寻找更好的建议。 – 2013-04-09 18:33:38

+0

我不确定您是否曾经使用AWS userdata工作,因为我非常确定tomcat不会选择这些。请参阅上面的答案以获取替代方案。 – gsaslis 2016-01-13 21:38:53

-1

这不是工作?

转到您的环境文件。 sudo vi/etc/environment和 添加所需的变量。并保存该文件。

我认为在最近的Ubuntu中,您必须重新启动系统才能使更改生效。

+0

但我不能重新启动系统。是否有任何方法可以做到这一点,而无需重新启动系统? – 2012-04-16 04:24:29

+0

也许touch/etc/environment和source/etc/environment可能会有诀窍。 – 2012-04-21 06:59:10

+0

**对我来说没有工作,只好修改'/ etc/init.d/tomcat7'并添加'export FOO = bar' – dedek 2014-05-06 12:52:49

5

按照文档(http://tomcat.apache.org/tomcat-7.0-doc/RUNNING.txt),你应该将所有的env瓦尔在$ CATALINA_HOME /斌/ setenv.sh

编辑: 为了完整起见,我想这是值得一提的是,尽管这是推荐的方式,上述文档声明:

缺省情况下,setenv脚本文件不存在。如果在CATALINA_BASE和CATALINA_HOME中都存在脚本文件 ,则首选 CATALINA_BASE中的脚本文件。

如果它不存在,你可能也想寻找ENV瓦尔在:

  • /etc/tomcat/tomcat[67].conf(SUSE)或
  • /etc/default/tomcat[67].conf(如Ubuntu的)或
  • /etc/sysconfig/tomcat[67].conf(RHEL, fedora)
相关问题