Добавить обработчик PHP на веб-сайт или даже в папку только через AppCmd
Я пытаюсь автоматически развернуть веб-сервер IIS (в настоящее время 8.5, мне нужно будет все до 7,5), используя AppCmd.exe
Я использую PHP FastCGI для обработки запросов. Я настроил пул FastCGI на уровне сервера.
Теперь мне нужно настроить новый обработчик для обработки запросов *.php с помощью модуля FastCGI.
Документация PHP и различные документы Microsoft говорят, что эта команда AppCmd сделает это:
%windir%\system32\inetsrv\appcmd set config /section:system.webServer/handlers /+ [name='PHP_via_FastCGI',path='.php',verb='',modules='FastCgiModule',scriptProcessor='c:\PHP\php-cgi.exe',resourceType='Either']
источник: http://php.net/manual/de/install.windows.iis7.php
Хотя это на самом деле работает, он также помещает обработчик на уровень сервера. Мне нужно, чтобы обработчик был на уровне веб-сайта.
Я пробовал различные комбинации, в конце концов придумав следующую команду:
set config "Default Web Site/" -section:system.webServer/handlers /+[name='PHP_via_FastCGI',path='.php',verb='',modules='FastCgiModule',scriptProcessor='c:\PHP\php-cgi.exe',resourceType='Either']
Что говорит мне, что конфигурация не может быть выполнена на этом уровне.
Однако, когда я использую пользовательский интерфейс для добавления обработчика на сайт, я могу сделать это без проблем. Таким образом, я думаю, что моя команда все еще неверна.
Что я здесь не так делаю?
Приветствия и спасибо много, Worp
1 ответ
Попробуй это:
appcmd.exe set config "Default Web Site" -section:system.webServer/handlers /+"[name='PHP_via_FastCGI',path='*.php',verb='',modules='FastCgiModule',scriptProcessor='c:\PHP\php-cgi.exe',resourceType='Either']" /commit:apphost
Он по-прежнему изменяет ApplicationHost.config, а не web.config, но применяется только к одному сайту.