1

Тема: Запуск и остановка веб-сервера с помощью nnCron

Прежде всего ссылка на сайт разработчиков замечательной программы nnCron созданной Николаем Немцевым (бесплатна для жителей стран бывшего СССР): http://www.nncron.ru/index_ru.shtml

Данная программа является не только самым гибким по настройкам и богатым по возможностям планировщиком задач, но благодаря встроенному скриптовому языку с доступом к Win32 API функциям, может делать практически все! И это не преувеличение. Здесь будет рассмотрена простейшая задача по запуску программ, но то что получится должно вам понравиться.

В статье "Инструментарий веб-разработчика" предлагается запускать компоненты веб-сервера с помощью пакетных файлов (.bat), но возникла проблема с ApacheMonitor.exe, который мы можем запустить пакетным файлом, но не можем затем им же остановить, так как изначально в операционной системе отсутствует программа уничтожающая процесс из командной строки. По идее данная проблема легко решалась с помощью установки программы PsKill, созданной Марком Руссиновичем, однако есть более красивое решение, а именно использование богатейших возможностей nnCron.

После установки программы, все что надо сделать - это создать две задачи: для запуска и остановки веб-сервера. Ниже вы видете исходный текст обеих задач, который достаточно вставить в nncron.tab файл и они сразу станут доступны для ввыбора по правом щелчке мыши на значке nnCron в панели задач.

#( Start-WebServer
NoActive
Action:
PROC-EXIST: "ApacheMonitor.exe"
IF
    3 BalloonIcon !
    BALLOON: "%CUR-TASK-NAME%" "WebServer is already started."
ELSE
    START-APP: C:\Program Files\Apache Software Foundation\Apache2.2\bin\ApacheMonitor.exe
    SWHide
    START-APPW: C:\apache\start-webserver.bat
    1 BalloonIcon !
    BALLOON: "%CUR-TASK-NAME%" "WebServer is started."
THEN
)#

#( Stop-WebServer
NoActive
Action:
PROC-EXIST: "ApacheMonitor.exe"
IF
    KILL: "ApacheMonitor.exe"
    TRAY-REFRESH
    SWHide
    START-APPW: C:\apache\stop-webserver.bat
    1 BalloonIcon !
    BALLOON: "%CUR-TASK-NAME%" "WebServer is stopped."
ELSE
    3 BalloonIcon !
    BALLOON: "%CUR-TASK-NAME%" "WebServer is not started."
THEN
)#

Необходимо заметить, что все пути изначальны и при необходимости вы должны их поменять. Пакетные файлы в точности соответствуют тем что указаны в статье.

ВКонтакте Facebook Twitter