这是在Windows 7家庭高级版。
我有两个ColdFusion 10(updater 2)实例:“cfusion”(默认的)和“scratch”。
我有一个Apache 2.2运行的单个实例。
在Apache中,我设置了两个虚拟主机,每个虚拟主机都需要由不同的ColdFusion实例提供服务。
每个CF实例通过Tomcat的内部Web服务器为文件提供服务。 Apache也很好地服务于香草HTML文件。 所以这两个CF实例和两个虚拟主机分别工作正常。
我可以通过wsconfig.exe将其中一个CF实例连接到Apache服务器,并通过Apache和该实例来提供CF文件。
但是我找不到将第二个CF实例连接到Apache的方法,这样两个 CF实例都是连接的,每个实例都服务于一个虚拟主机。 WSConfig似乎并不理解“多个CF实例”的概念,并且它对httpd.conf所做的更改(通过mod_jk.conf)似乎没有实现,以便容纳多个CF实例进行交谈一个Apache实例或多个虚拟主机。 我自由地承认,对于mod_jk(甚至是真正的httpd.conf)是如何工作以便能够猜测我是否可以改变东西来使其工作的信心还不够。
如果我尝试使用WSConfig添加第二个CF实例,我只会收到一条消息“Web服务器已经configuration了ColdFusion”。 那就是因为它可能…不是我想要连接到的ColdFusion的实例! 如果我删除现有的连接器,无论哪个实例已经连接,我可以再连接另一个没有问题。 不是,这有助于,但它表明,CF实例可以连接到Apache。
这在CF和JRun的旧版本中过去是相当直接的: –
我发现的唯一文档是“将Web服务器上的多个Apache虚拟主机连接到单个ColdFusion服务器”页面,但是该页面特别只处理单个CF实例。 没有多个CF实例的等价页面。
我有点希望我可以移动一些mod_jkconfiguration到httpd-vhosts.conf中的虚拟主机条目(这是如何用于JRun),但我不知道该把什么放在哪里。
我想我已经在这里覆盖了所有必要的信息? 如果没有,唱出来,我会增加更多。 谢谢。
PS:试图具体标记为“ColdFusion-10”作为答案将不同于以前的CF版本,但它不会让我因为我的代表在这个网站太低(奇怪它怎么不考虑我的代表从其他S / O站点…)。 如果有足够代表的人可以添加它,那很酷:这可能是一个有效的标签。 助教。
设置这个开发的一个快速方法是将每个虚拟主机的请求代理到正确的coldfusion实例的http端口,也就是它的内部networking服务器。
<VirtualHost *:80> ServerName server-1.local ProxyPreserveHost on DocumentRoot /interwebs/server-1 DirectoryIndex index.cfm # proxy requests to tomcat on port 8500 ProxyPreserveHost on ProxyPassMatch ^/(.+\.cf[cm])(/.*)?$ http://localhost:8500/$1$2 </VirtualHost> <VirtualHost *:80> ServerName server-2.local DocumentRoot /interwebs/server-2 DirectoryIndex index.cfm # proxy requests to tomcat on port 8501 ProxyPreserveHost on ProxyPassMatch ^/(.+\.cf[cm])(/.*)?$ http://localhost:8501/$1$2 </VirtualHost>
如果你真的想configurationapache来使用mod_jk这是我相信wsconfig(我还没有安装cf10,我只是继续我读的),然后看看http://抢劫。 brooks-bilson.com/index.cfm/2012/2/23/Configuring-Multiple-Instances-of-ColdFusion-10-with-Apache-Virtual-Hosts/