Установка веб-сервера IIS

Відкриваємо Панель управління -> Програми -> Включення або відключення компонентів Windows. Знаходимо в списку розділ «Служби інтернету». Розкриваємо його і вибираємо потрібні компоненти:

Встановлюємо компоненти веб-сервера

Базовий набір:
• Безпека. Вибираємо всі компоненти, крім «Перевірка автентичності із зіставленням сертифіката …».
• Компоненти розробки додатків. В принципі, потрібна тільки компонента CGI для подальшої установки PHP.
• Загальні функції HTTP. Відзначаємо всі пункти.
• Перевірка працездатності та діагностика. Вибираємо «Ведення журналу HTTP» і «Монітор запитів».
• Функції підвищення швидкодії. Відзначаємо всі пункти.
• Засоби управління веб-сайтом. Відзначаємо тільки «Консоль управління IIS».Установка веб-сервера IIS

Коли всі пункти обрані, натискаємо «Ок». Коли установка закінчена, треба обов’язково перезавантажитися!
Тепер переходимо до створення веб-сайту. Відкриваємо Панель управління -> Система і безпека -> Адміністрування -> Управління комп’ютером (можна швидше: меню Пуск -> правий клік на Комп’ютер -> меню вибрати пункт Управління). У вікні, розкриваємо групу «Служби і додатки» і відкриваємо «Диспетчер IIS». У вікні «Підключення» вибираємо папку «Сайти», потім у правому вікні Дії натискаємо на посилання «Додати сайт».

Добавить веб-сайтДобавить веб-сайт
Створюємо новий веб-сайт (1)

Потім треба вказати ім’я веб-сайту і місце розташування файлів (за умовчанням c:\inetpub\wwwroot). Інші опції — без зміни.
c:\inetpub\wwwrootc:\inetpub\wwwroot
Створюємо новий веб-сайт (2)
Натискаємо «OK». На цьому базова настройка завершена. Необхідно перевірити працездатність створеного сайту. Відкриваємо браузер і в адресному рядку вводимо: http://localhost. Якщо все працює правильно, ви побачите таку сторінку:

Тестуємо створений сайт
І, нарешті. Щоб сайт був доступний ззовні, необхідно відкрити 80-й порт для вхідних з’єднань. Зробимо це на прикладі штатного брандмауера Windows 7:
Відкрийте Панель управління -> Система і безпека -> Брандмауер Windows -> Додаткові параметри. У списку необхідно включити правило Служби Інтернету (вхідний трафік HTTP):

Відкриваємо 80-й порт у брандмауері Windows
У цьому режимі базової установки, веб-сервер може відобразити тільки статичні сторінки (звичайний HTML + JavaScript). Розширення його можливості – установка підтримки ASP, ASP.NET або PHP. Далі розповімо про встановлення PHP на IIS в режимі FastCGI.

Встановлення PHP (FastCGI)

Оптимальний веб-сервер для PHP — це Apache, але бувають випадки, коли потрібно встановити PHP на IIS. Останнім часом розробниками була проведена велика робота, щоб збільшити продуктивність PHP на IIS.
Перед установкою необхідно завантажити реліз PHP з сайту http://windows.php.net/download/. Там є кілька варіантів. Нам потрібний реліз VC9 x86 Non Thread Safe. Для роботи в режимі FastCGI це самий надійний варіант. Краще скачувати реліз з установником (installer), а не zip-архів (це для ручної установки).
Далі запускаємо інсталятор. Після декількох вікон вам запропонують вибрати веб-сервер і режим роботи PHP:

Встановлення PHP

IISFastCGI — це найбільш стабільний варіант установки PHP на IIS.
Потім вибираємо компонети PHP. Якщо установка PHP проводиться перший раз, краще залишити значення за замовчуванням.
Після завершення роботи інсталятора, переходимо до налаштувань IIS. Треба зробити тільки одну дію — підняти пріоритет php-файлів, щоб вони оброблялися в першу чергу. В диспетчер IIS натискаємо на назву нашого сайту і у вікні праворуч вибираємо розділ «Документ». У списку необхідно перемістити index.php початок:

Встановлення PHP (2)
Інформація користувачам Windows 7 64-біт! Вам доведеться провести додаткову дію. Відкрийте розділ «Пули додатків». Виділіть DefaultAppPool і відкрийте «Додаткові параметри» (через правий клік або в крайній правій колонці). У розділі «Загальні» необхідно знайти опцію «Дозволити виконання 32-бітних додатків» (Enable 32-bit Applications) і встановити в положення True. Якщо були створені додаткові пули для існуючих сайтів, то для кожного з них доведеться виконати ту ж операцію.
Далі проводимо тестування PHP. В кореневу папку сайту (c:\inetpub\wwwroot) поміщаємо файл index.php з таким вмістом:

Відкриваємо сайт в браузері (http://localhost). Якщо завантажилося правильно, ви побачите сторінку з інформацією про встановлення PHP:

Тестуємо PHP

Встановлення MySQL

Інструкція по установці MySQL на Windows винесено в окрему статтю.
FAQ
• При запуску сайту виникає помилка: «Процес не може отримати доступ до файлу, так як він використовується іншим процесом. (Виняток з HRESULT: 0×80070020)».
Це говорить про те, що порт, до якого здійснилася прив’язка сайту (за замовчуванням 80-й), уже зайнятий іншим додатком. Така помилка виникає, якщо встановлено інший веб-сервера (наприклад, Apache).
Щоб зрозуміти, який процес займає 80-й порт, у командному рядку введіть netstat -ano -p tcp.
У колонці «Локальний адресу» шукаємо запис виду 0.0.0.0:80, і дивимося який «PID» відповідає цьому запису. В «Диспетчері завдань» відкриваємо вкладку «Процеси» (опцію «Показувати процеси всіх користувачів» повинна бути відзначена). Переходимо в меню «Вид» -> «Вибрати стовпці» відзнач «ІДЕНТИФІКАТОР процесу (PID)». Тепер, за допомогою PID можна з’ясувати, який процес займає порт.
Ще, проблема вирішується прив’язкою сайту до альтернативного порту (наприклад, 8080).
• При запуску php-скрипта з’являється помилка: Warning: fopen(шлях_до_файлу): failed to open stream: Permission denied in шлях_до_файлу.
Справа в тому, що група користувачів IIS_IUSRS має права тільки на читання. Відкриваємо властивості папки, в якій розташовуються файли веб-сайту (за замовчуванням wwwroot), закладка «Безпека». У списку знаходимо групу IIS_IUSRS і даємо їй права повного доступу.
• Установка кодування сайту.
Відкрийте «Диспетчер IIS», виберіть веб-сайт. В налаштуваннях сайту відкрийте розділ «Заголовки відповідей HTTP». Натисніть посилання «Додати». У вікні в полі «Ім’я» введіть: Content-type, у полі Значення введіть: text-html; charset=windows-1251 (див. скріншот). Замість windows-1251 можна прописати і інше кодування.