2011-06-22 70 views
0

我已经成功设法在Tomcat 7中安装CF9(war),通过Apache vhosts连接两个。我正在使用ajp代理.cfm请求,并使用其他重写内容的Apache来为Tomcat 7重写其他URL。ColdFusion 9,Tomcat 7,Apache和vhosts

但是,每个虚拟主机都需要自己的虚拟根目录中的ColdFusion WEB-INF副本。这工作正常,但它有每个CF站点具有独特的CF实例的副作用。映射,DSN和所有其他设置都是自定义的,不在CF站点之间共享。

我真的很想将每个WEB-INF结合起来,这样它们只是我整个开发环境中的一个,就像JRun4以前的工作方式一样。

任何想法?

回答

1

我不认为这是可能的与Tomcat,因为我们有两个单独的实例和两个单独的安装文件。

+0

是的,即使我将符号链接(在Mac上)WEB-INF目录从虚拟根目录到cfusion/WEB-INF目录,它仍然会启动CF的单个实例。 –

0

您是否尝试过在Tomcat中复制虚拟主机?我在Tomcat wiki上发现了这个,听起来像是它回答了你的问题。

http://wiki.apache.org/tomcat/CreateVirtualHosts

+0

是的,我已经成功地设法让工作正常。这是一个要求,因为我想用ajp去掉URL路径中的上下文。所以,这工作正常。 –

0

斯科特,我知道这是一个古老的线程。你有没有设法使它工作,甚至,这仍然是相关的?我试图做同样的事情,发现你可以创建一个符号链接到原始的ColdFusion上下文的META-INF和WEB-INF,而不是复制整个目录结构。请记住在Tomcat的server.xml中的<Host>标记中添加allowLinking="true"。所以:

ln -s /path/to/tomcat/webapps/cfusion/META-INF /path/to/yourhost1/META-INF 

ln -s /path/to/tomcat/webapps/cfusion/WEB-INF /path/to/yourhost1/WEB-INF 

ln -s /path/to/tomcat/webapps/cfusion/META-INF /path/to/yourhost2/META-INF 

ln -s /path/to/tomcat/webapps/cfusion/WEB-INF /path/to/yourhost2/WEB-INF 

基本上所有虚拟主机确实是Java应用程序,但它们共享相同的ColdFusion引擎和ColdFusion元数据,以便DSN在所有主机共享。

现在我不确定上述是否是一种好的做法,打破任何事情,或者最糟糕的是,让小猫伤心。

欢迎任何反馈。