Загрузка

📘 Пункт 2. Базовые навыки (с примерами для PHP)

2.1. Создание первого сайта

В IIS каждый сайт = это:

  • имя сайта (логическое название),

  • корневая папка (где лежат файлы),

  • биндинг (порт, IP, домен).

Пример:

  1. Открой IIS Manager (inetmgr).
  2. В левой панели → Sites → Add Website.
  3. Введи:
      • Site name: MyPhpSite

      • Physical path: C:\inetpub\php_site

      • Binding: http, IP: All Unassigned, Port: 8080 (например).

  4. В браузере перейди: http://localhost:8080.


2.2. Application Pools

  • Это как «контейнеры процессов».

  • У каждого пула свои настройки: версия .NET, права пользователя, режим работы.

  • Для PHP нужно:

    • Пул в режиме Integrated.

    • Настроить запуск через FastCGI (php-cgi.exe).

Зачем это нужно?
Например, один сайт у тебя может быть на PHP 7.4, а другой — на PHP 8.2. Для этого каждому сайту нужен свой Application Pool.


2.3. Управление сайтами

  • Start / Stop / Restart — управление из IIS Manager.

  • Можно параллельно запускать несколько сайтов (каждый на своём порту или домене).

  • Проверить работу — http://localhost:порт/.


2.4. Подключение PHP к IIS

  1. Скачай PHP for Windows (Non Thread Safe) с windows.php.net.
  2. Установи PHP Manager for IIS (удобный плагин).
  3. Подключи FastCGI:
      • В IIS Manager → Handler Mappings → Add Module Mapping.

      • Request path: *.php

      • Module: FastCgiModule

      • Executable: C:\php\php-cgi.exe

      • Name: PHP.

  4. Создай файл index.php в папке сайта:
<?php
phpinfo();
?>

Зайди в браузере на http://localhost:8080/index.php → должна открыться страница с настройками PHP.


2.5. Настройка статического сайта (HTML, CSS, JS)

  • Просто положи файлы .html, .css, .js в папку сайта.

  • IIS их отдаст напрямую (без PHP).

  • Это важно: IIS умеет работать и как «чистый» веб-сервер, а PHP — только для динамики.


2.6. Кратко о перспективах

Сейчас у тебя IIS работает как «PHP-хостинг». Но дальше:

  • Можно запускать несколько версий PHP (каждая в своём пуле).

  • Настроить SSL (https://) для безопасности.

  • Сделать виртуальные каталоги для разделения проектов.

  • Подключить URL Rewrite для ЧПУ-ссылок (как в WordPress).


Практическое задание:

  1. Создай новый сайт в IIS (порт 8080).
  2. Подключи PHP через FastCGI.
  3. Запусти phpinfo(), убедись что работает.
  4. Добавь в папку ещё файл index.html и проверь, что IIS корректно отдаёт его тоже.