Пользователи Windows могут изучать PHP и работать с базами данных на предустановленном и бесплатном IIS. Сторонние open‑source сборки вроде XAMPP или Open Server требуют скачивания и установки, иногда небольшого пожертвования, и добавляют в систему лишний софт без явной необходимости. Тем не менее большинство Windows‑пользователей предпочитают именно такие внешние сборки, а не родной IIS (и часто игнорируют при этом Linux‑окружения). В чём причина этого предпочтения?
Краткий ответ: чаще всего для изучения PHP и баз данных на Windows люди выбирают сборки вроде XAMPP/Open Server не потому что IIS «плох», а потому что эти сборки удобнее, быстрее дают рабочее окружение и лучше совпадают с тем, что чаще встречается в учебниках и в продакшне (LAMP). Ниже — развёрнуто и по пунктам. Почему люди предпочитают XAMPP / Open Server / WAMP / подобные: - Простота «из коробки» - Всё уже собрано и настроено: Apache/nginx, PHP (несколько версий часто рядом), MySQL/MariaDB, phpMyAdmin, часто Perl, Composer и т.д. Достаточно распаковать/запустить — и можно кодить. - Управление (старт/стоп/переключение версий) через GUI — удобно для новичков. - Совпадение с учебными материалами и продакшном - Большинство примеров, руководств и фреймворков ориентированы на Apache/nginx и MySQL. Использование того же стека упрощает следование туториалам. - На серверах в интернете чаще используется Linux + Apache/nginx, поэтому изучать именно такой стек логично для переносимости навыков. - Портативность и отсутствие сложной конфигурации - Многие сборки портативны — можно запустить без долгой установки и без глубокой настройки Windows-функций. - Не нужно включать компоненты Windows, менять настройки IIS, устанавливать URL Rewrite и т.п. - Удобства для разработки - Быстрая смена версий PHP, встроенные инструменты (phpMyAdmin, менеджер виртуальных хостов), логирование, точки восстановления настройок. - Поддержка .htaccess/mod_rewrite «из коробки», что важно для большинства PHP‑фреймворков и CMS. - Сообщество и примеры - Большинство ошибок/вопросов в интернете описываются для Apache/nginx, проще найти решение. - Плагины и инструкции часто предполагают именно Apache/nginx. - Административные ограничения - У некоторых пользователей нет прав администратора, чтобы включить роли IIS или устанавливать серверные компоненты; портативные сборки могут работать без этого. Почему IIS всё ещё нормально, но реже выбирают: - IIS отлично работает с PHP через FastCGI и поддерживает все возможности. Microsoft долго улучшает PHP-поддержку. - IIS лучше, если цель — изучать интеграцию с Windows-фичами (Windows Authentication, Active Directory, .NET-взаимодействие) или если продакшн — Windows Server. - Минусы для новичка: настройка IIS требует других навыков (web.config вместо .htaccess, другие инструменты и поведение), меньше готовых туториалов для популярных PHP‑приложений, и часто нужно докачивать модули/настраивать FastCGI вручную. Рекомендации - Учитесь PHP и MySQL: удобнее взять XAMPP/Open Server/WAMP — быстрее начать и больше совпадает с учебными материалами. - Если ваша цель — развернуть сайт на Windows Server / IIS в продакшне, или интеграция с Windows‑технологиями критична — учите IIS (в этом случае лучше тестировать сразу на IIS). - Для максимально «реалистичного» продакшна под Linux — лучше поставить виртуальную машину или WSL2 с Linux, или Docker (это ближе к реальному LAMP/LEMP). Вывод: выбор чаще определяется удобством разработки и соответствием учебным/продакшн‑условиям. Поэтому массово выбирают готовые open‑source сборки — не из неприязни к IIS, а из практичности и простоты.
потому что надо сразу учиться на нормальном софте, на котором потом и будет запускаться проект <br/> а это обычно линукс + nginx \ apache2
<blockquote>Пользователям win, учиться разработке и профессионально работать с php и БД можно естественным путём и в IIS, — он бесплатен и предустановлен в системе по умолчанию. </blockquote> <br/> Изучать сам язык php можно как угодно, где угодно и в чём угодно. Даже на IIS, прости господи. Вот только в реальном мире сайты на php никто не хостит на винде в целом и на IIS в частности. Поэтому когда дело перейдёт от обучения к реальной практике, вы даже не сможете задеплоить сайт на настоящий хостинг, который гарантированно будет на линуксе + nginx/apache2. <br/> <br/> Буквально в прошлом месяце была у меня такая история. Компания заказала сайт на битриксе какому-то фрилансеру. Он его захостил где-то у себя, чтобы показывать заказчикам. Потом когда дело дошло до переноса сайта с его хостинга на хостинг компании, то начались необъяснимые сложности. Он смог только по FTP залить файлы сайта, а дальше, по его словам, "какой-то неправильный хостинг вы купили". Хотя это самый стандартный vps на линуксе. Причём по специальному тарифу от хостера, оптимизированному под битрикс. Уверен, этот товарищ тоже учился разрабатывать на IIS, а теперь не может даже разобраться как настроен апач и mysql на новом месте. Вполне возможно он даже php не знает. В битрикс разработке такое тоже встречается. <br/> <br/> <blockquote>Сторонний open-source типа какого-нибудь xampp, open-server и т.п. нужно скачивать, устанавливать, а иногда, пусть даже и не большую, монетку задонатить, соответственно захламляя при этом ОС сторонним софтом, по сути, без строгой необходимости. </blockquote> <br/> Как минимум php и mysql вам абсолютно точно придется скачать и захламить ими свою систему, так как их не бывает в виндовсе из коробки. А раз уж всё равно что-то скачивать и устанавливать, то нет большой разницы будет ли это xampp, open-server или что там ещё есть. И донатить монетку необязательно. <br/> <br/> <blockquote>Тем не менее большинство пользователей win предпочитают использовать не родной IIS, а сторонний open-source (игнорируя при этом его родную среду линух). </blockquote> <br/> Честно признаться, за всю свою многолетнюю практику я так ни разу и не встретил ни одного проекта, использующего IIS или человека, занимающегося им. Иногда мне кажется, что это фейк и никакого IIS не существует. <br/> <br/> <blockquote>Это кажется странным. Закономерно предположить, что должна быть причина, — в чём она?</blockquote> <br/> Не очень понятно что именно вам показалось странным. Можете уточнить этот момент?