Расскажу вам о наиболее оптимальном способе установки PHP на IIS. Ставить будем PHP 7.3.1 на IIS 10. IIS крутится на сервере с Windows Server 2016. Раньше я устанавливал PHP руками, помните, что для Windows нужно выбирать PHP NTS версию.
If you are using PHP as FastCGI with IIS you should use the Non-Thread Safe (NTS) versions of PHP.
Однако, на этот раз я решил последовать совету с официального сайта. На php.net немного коряво написано:
Если вы хотите настроить PHP используя в качестве веб-сервера IIS, то проще всего это сделать используя
Microsoft Web Platform Installer (WebPI).
Заходим по ссылке:
Нажимаем зелёную кнопку Install this extension и качаем инсталлятор.
Запускаем WebPlatformInstaller_x64_en-US.msi.
Открывается мастер установки WebPI.
Принимаем лицензионное соглашение - Install.
Ждём.
Установка завершена, это было несложно. Finish.
Находим в установленных программах Web Platform Installer и запускаем.
Ждём. Открывается окошко.
Кликаем на вкладку Products. Слева выбираем Frameworks. Находим в списке PHP 7.3.1 - не самая новая, но меня устроит.
Тыкаем в Add. На самом деле здесь много чего можно найти интересного, например, MySQL, правда, не очень новой версии. В разделе Server нахожу URL Rewrite 2.1 - расширение для IIS. Мне потом понадобится, тоже добавляю. К установке PHP оно не относится, вам может и не нужно.
Install.
Обещают установить три модуля:
- PHP 7.3.1 (x64)
- PHP Manager for IIS - полезная штука для управления PHP из оснастки IIS.
- URL Rewrite 2.1 - мне надо.
Соглашаемся - I Accept.
Полетела установка. Но взлетела не очень высоко.
We're sorry. The following product have failed to install.
PHP Manager for IIS не поставился, ай-ай-ай, как печально. Зато поставилось куча всего другого, что нам поставить не обещали:
- RunPHP Helper - не догадываюсь для чего оно, но пусть помогает.
- Microsoft Visual C++ 2008 Redistributable Package - это, наверное, нужно для работы моего URL Rewrite 2.1.
- URL Rewrite 2.1 - хорошо.
- PHP 5.3.28 - ээээ, я не просил, ладно, пусть полежит.
- PHP 7.3.1 (x64) - вот то что надо.
Ладно, если что, лишний PHP удалю потом. Давайте решим вопрос с PHP Manager for IIS. Гуглим ссылочку:
https://www.iis.net/downloads/community/2018/05/php-manager-150-for-iis-10
Нажимаем Download this extension.
OK. Запускается мастер установки.
Next.
Принимаем лицензионное соглашение, Next.
Ждём.
Готово.
В IIS появляется новая оснастка под названием PHP Manager.
Внутри не сложно, разобраться можно.
Для каждого сайта можно выбирать свою PHP версию, регистрировать новые, управлять расширениями и т.д.