Я использую сервер Windows 2003 R2 с установленными IIS и ColdFusion. Каждый раз, когда сервер перезагружается и процессы IIS и ColdFusion настроены на автоматический запуск, ColdFusion запускается до IIS, предотвращая запуск IIS из-за конфликта на порту 80. Каждый раз, когда ColdFusion запускается после IIS, он работает отлично.
Есть ли способ отложить запуск службы до завершения запуска другой службы?
Любая помощь будет оценена по достоинству!
Вы можете либо пометить службу ColdFusion как отложенную загрузку, либо сделать IIS зависимостью для ColdFusion. Зависимость означает, что ColdFusion не запустится, пока не будет запущен IIS, а остановка IIS остановит ColdFusion.
Если это то, что вам нужно; в командной строке (с правами администратора) введите:
sc config ColdFusionServiceName depend= W3SVC
Обратите внимание, что пробел после =
в зависимости намеренно и важно.
Вы можете узнать больше о sc config depend
Вот.
Также отмечу, что при нормальном развертывании не имеет значения, что запускается первым. Похоже, что на сервере ColdFusion активирован внутренний веб-сервер, который теперь использует порт 80 (а не 8500 по умолчанию). Если это так, то при запуске CF сначала он займет порт 80, и тогда IIS не повезет. Если вы используете IIS, вам следует изменить порт, который использует внутренний веб-сервер ColdFusion, на другой или полностью отключить его.
Из Документация Adobe ColdFusion 9 (он будет таким же или аналогичным для CF 8):
Переключение порта для встроенного веб-сервера
Вы можете изменить порт, на котором работает встроенный веб-сервер. Измените порт для встроенного веб-сервера
Создайте резервную копию файла jrun.xml.
Этот файл находится в каталоге cf_root \ runtime \ servers \ coldfusion \ SERVER-INF в Windows и в каталоге cf_root / runtime / servers / coldfusion / SERVER-INF в UNIX.
Откройте исходный файл jrun.xml для редактирования.
Измените номер порта, указанный в атрибуте порта WebService (в нижней части файла):
<service class="jrun.servlet.http.WebService" name="WebService">
<attribute name="port">8500</attribute>
<attribute name="interface">*</attribute>
<attribute name="deactivated">false</attribute>
...
</service>
Примечание. Убедитесь, что для атрибута deactivated установлено значение false.
Сохраните файл и перезапустите ColdFusion.