下面粘贴的Resin 配置 ( resin.xml
) 实现了以下目的:
- 将内置 http 服务器绑定到 8000 端口
- 设置所需的最大内存分配(
-Xmx512m
) http://domain.com
配置可从以下位置访问的 Web 应用程序 /path/web/roothttp://(www|www1|www2).domain.com
- 将访问日志设置为 /path/to/logs/access.log
这是树脂配置:
<resin>
<cluster id="app-tier">
<server-default>
<!-- #1 -->
<http port="8000"/>
<!-- #2 -->
<jvm-arg>-Xmx512m</jvm-arg>
</server-default>
<!-- #3 -->
<host id='domain.com' root-directory="/path/web/root">
<web-app id="/" />
<!-- #3 -->
<host-alias-regexp>(www|www1|www2).domain.com</host-alias-regexp>
<!-- #4 -->
<access-log path="/path/to/logs/access.log" />
</host>
</cluster>
</resin>
我正在从 Resin 切换到 Tomcat,因此我的问题是:
- Tomcat 实现上述四件事的“最佳实践配置”是什么?
答案1
我可以回答一些这些问题。
更改端口号可通过编辑文件<Connector />
中的相应元素来完成conf/server.xml
(请参阅http://tomcat.apache.org/tomcat-6.0-doc/config/http.html了解更多信息)。
以下是开箱后的内容:
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
您可以将port
属性更改为您想要的任何内容。
可以使用JAVA_OPTS
环境变量来更改堆大小或任何其他 JVM 设置。例如,您可以将以下内容添加到bin/startup.sh
:
# Must go *before* the final line ("exec ...")
export JAVA_OPTS="$JAVA_OPTS -Xmx512m"
我以前从未设置过访问日志。然而,看起来就像你可以通过取消注释相应的“Valve”来实现一样conf/server.xml
(参见http://tomcat.apache.org/tomcat-6.0-doc/config/valve.html了解详情)。
server.xml
我的文件中注释掉的阀门的示例:
<!-- Access log processes all example.
Documentation at: /docs/config/valve.html -->
<!--
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
prefix="localhost_access_log." suffix=".txt" pattern="common" resolveHosts="false"/>
-->
最后,对于虚拟主机,我只能向您指出文档,网址为http://tomcat.apache.org/tomcat-6.0-doc/config/host.html。我希望这总比没有好:-)。