Coldfusion服务+ IIS

我正在运行安装了IIS和ColdFusion的Windows 2003 R2服务器。 每当服务器重新启动并且IIS和ColdFusion进程都设置为自动启动时,ColdFusion将在IIS之前启动,从而防止由于端口80上的冲突而启动IIS。每当在IIS之后启动ColdFusion时,它都能正常工作。

有没有办法延迟一个服务的启动,直到另一个服务完成启动后?

任何帮助,将不胜感激!

您可以将ColdFusion服务标记为延迟加载,也可以使IIS成为ColdFusion的依赖项。 依赖意味着除非IIS启动,否则ColdFusion将不会启动,停止IIS将停止ColdFusion。

如果那是你所追求的; 从命令提示符(具有pipe理权限),键入:

sc config ColdFusionServiceName depend= W3SVC 

请注意, = in之后的空间是有意和重要的。

你可以阅读更多关于sc config depend 这里 。

我还会注意到,在正常部署中首先启动应该没有关系。 这听起来好像ColdFusion服务器已激活其内部Web服务器,并更改为使用端口80(而不是默认的8500)。 如果是这样,当CF首先启动它将采取端口80,然后IIS将运气不佳。 如果您使用IIS,则应该将ColdFusion的内部Web服务器正在使用的端口更改为其他内容,或者完全禁用它。

从Adobe ColdFusion 9文档 (它将与CF 8相同或相似):

切换内置Web服务器的端口

您可以更改运行内置Web服务器的端口。 更改内置Web服务器的端口

  1. 备份jrun.xml文件。

    此文件位于Windows中的cf_root \ runtime \ servers \ coldfusion \ SERVER-INF目录中,以及UNIX中的cf_root / runtime / servers / coldfusion / SERVER-INF目录下。

  2. 打开原始的jrun.xml文件进行编辑。

  3. 更改WebService端口属性中指定的端口号(靠近文件底部):

     <service class="jrun.servlet.http.WebService" name="WebService"> <attribute name="port">8500</attribute> <attribute name="interface">*</attribute> <attribute name="deactivated">false</attribute> ... </service> 

    注意:确保停用的属性设置为false。

  4. 保存该文件,然后重新启动ColdFusion。