Налаштування apache для початківців - інтернет »цікаве в мережі

Налаштування apache для початківців - інтернет »цікаве в мережі

Друга - щоб зробити з тільки що встановленого Apache сервер, налаштований для цілком комфортної роботи, треба міняти зовсім небагато.

  1. Запустити найпопулярніший веб-сервер під найпопулярнішою платформою - Windows.
  2. Зберігати файли сайту в тій директорії, в якій нам це зручно, - нехай це буде C: \ www.
  3. Не мати проблем з кодуваннями, в першу чергу - з відображенням кирилиці.
  4. Цілком можливо - одночасно працювати з декількома сайтами.

Директива DocumentRoot визначає директорію, яка буде коренем сайту

Для кореневої директорії сайту і всіх її піддиректорій потрібно встановити правила доступу і задіяні функції сервера

Далі встановлюємо для неї правила безпеки. Для цього в Apache використовується директива Directory. Використовується вона в такий спосіб:


Options функції сервера
AllowOverride варіанти
Order варіанти

Список використаних параметрів наступний.

Options - визначає, які функції сервера будуть доступні. Можливі наступні варіанти:

AllowOverride - визначає, які директиви з файлів .htaccess можуть переважати над такими ж, зазначеними в httpd.conf. варіанти:

Order - встановлює правила доступу до сервера. варіанти:

  • Deny, Allow - директива Deny визначається перед Allow, доступ за замовчуванням дозволено, крім хостів, зазначених в наступному рядку після Deny from.
  • Allow, Deny - директива Allow визначається перед Deny, доступ за замовчуванням заборонений, крім хостів, зазначених в наступному рядку після Allow from.
  • Mutual-failure - дозволений доступ тільки тих хостів, які присутні в Allow і відсутні в Deny.

Тепер на основі всього цього починаємо налаштовувати наш сервер. У httpd.conf за замовчуванням директива Directory існує в двох примірниках - і . Перший варіант ми взагалі не чіпаємо, переходимо до другого і встановлюємо такі параметри:


Options Indexes FollowSymLinks
AllowOverride None
Order allow, deny
Allow from all

У перекладі на російську мову - для директорії C: / www, обраної раніше в якості кореневої для нашого сайту, а також всіх її піддиректорій обрані такі параметри:

Зберігаємо httpd.conf і перезапускаємо Apache - c допомогою Apache Monitor або в командному рядку командою apache -k restart. Все, настройка кореневій директорії сайту закінчена.

Але і в тому випадку, якщо вона буде відкриватися, цілком можливо, що замість символів кирилиці ми побачимо щось нечитабельним. Відбувається це тому, що, по-перше, Apache надає браузеру, запит сторінку, кодування за замовчуванням для цієї сторінки, а по-друге - кодування цей не кирилична. І якщо Internet Explorer в більшості таких ситуацій все одно визначає кодування з самої сторінки, то з Opera або Mozilla проблеми практично гарантовані. Звичайно, можна виставляти використовуваний набір символів кожен раз вручну в браузері, але скільки-небудь зручним це назвати неможливо.

Важливий момент - встановлення кодової за замовчуванням

Тому налаштовуємо Apache на видачу потрібної кодування за замовчуванням. Знаходимо в httpd.conf рядок, що починається на AddDefaultCharset. Швидше за все, повністю вона буде виглядати як AddDefaultCharset ISO-8859-1. що відповідає кодуванні ISO-8859-1, в якій символи кирилиці відсутні. Міняємо ISO-8859-1 на windows-1251. якщо передбачається, що сайт буде містити сторінки в кодуванні Windows, на KOI-8r. якщо використовується KOI-8, або на ту, яка потрібна. Зберігаємо файл, перезапускаємо Apache - і спостерігаємо нормальний російську мову на нашій тестовій сторінці в будь-якому браузері.

Apache дає дуже зручну можливість працювати з декількома сайтами незалежно один від одного


ServerAdmin webmaster @ site2
ServerName site2
DocumentRoot "C: / www2"
ScriptAlias ​​/ cgi / "C: / www2 / cgi /"
ErrorLog "C: /www2/error.log"
CustomLog "C: /www2/custom.log" common

Перезапускаємо Apache. Тепер, набравши в рядку браузера 127.0.0.1, ми потрапляємо на перший локальний сайт, набравши 127.0.0.2 - на другий. Залишається сказати тільки, що всередині кожного контейнера VirtualHost можна використовувати практично будь-які директиви Apache, що дає можливість налаштовувати кожен сайт самим детальним чином.

Посилання по темі