Бележки при обновяване на Apache 2

Като сървъри в сигурни центрове за данни в Европа. Open облак VPS / VDS сървър на бърз SSD за 1 минута!

Най-добър уеб хостинг:
- ще предпазят данните от неоторизиран достъп в защитена Европейския център за данни
- ще плати най-малко в Bitcoin.
- Той ще постави вашата дистрибуция

- защита от DDoS-атаки
- безплатно архивиране
- Uptime 99,9999%
- DPC - TIER III
- ISP - етап I

Подкрепа в руските 24/7/365 работи с юридически и физически лица. Сега трябва 24 ядро ​​и 72 Gb RAM. Моля ви!

Нашите конкурентни цени доказват, че най-евтиният хостинг, че не знаеш!

За броени минути, изберете конфигурация, заплати и CMS на VPS е готова.
Връщане на парите - за 30 дни!

Банкови карти, електронни валута през QIWI терминали, Webmoney, PayPal, Novoplat и други.

Задайте въпрос 24/7/365 поддръжка

Намерете отговорите в нашата база данни, както и да отговарят на препоръките на

Към днешна дата, Apache е най-популярният уеб сървър поради своята гъвкавост и производителност.

Много потребители са запознати с синтаксиса на конфигурационните файлове, Apache 2.2, но някои дистрибуции доставят с Apache 2.4 по подразбиране (например Ubuntu 14.04 LTS). В повечето случаи, Apache 2.2 и Apache 2.4 синтаксис е същото, но те имат някои съществени разлики.

Това ръководство ще ви разкажа за тези различия в някои по-стари директиви, както и други промени в синтаксиса Apache. За да се демонстрира примери за използване на Ubuntu 14.04 (дистрибуция, която идва с Apache 2.4 по подразбиране) и Ubuntu 12.04 (Apache 2.2).

Изисква от всички отпуснати
не изисква IP 111.111.111.111

Traffic ще бъдат проверени от тези фактори в зависимост от техния ред в конфигурацията на сървъра. Обикновено тези настройки са в следните блокове:



Изискване потребител корен
Изискване на IP 123.123.123.123



Изискване група sysadmins
Изискване група useraccounts
Изискване на потребителя Антъни


Изискване група restrictedadmin
Изискване домакин bad.host.com


Тези директиви са преместени в отделна единица, наречена mod_access_compat, тъй като той трябва да бъде включен, за да получите достъп до тях. Разбира се, по-добре е да използвате новите функции на синтаксиса, защото те ни позволяват да се определи много по-гъвкава политика.

Други промени в синтаксиса на Apache

Освен посочените по-горе новости в Apache конфигурация е направено много други промени, които са от значение за завършване на конфигурационни файлове.

Някои от тях искат да сменят имената или отмени новите стойности по подразбиране. По-пълен списък с промените можете да намерите тук; В този раздел са само най-сложните от тях.

Свързаност и ограничени дъщерни процеси

Няколко директиви са преименувани по-добре да се опише тяхната функционалност.

  • MaxConnectionsPerChild използва за замяна на MaxRequestsPerChild. Новата директива име добре описва неговата цел като директива за ограничаване на броя на връзките (не заявки).
  • директива MaxClients се заменя MaxRequestWorkers. При използване на асинхронни многопроцесорни модули на клиентите не трябва да съвпада с броя на работните процеси. Той помага да се определят по-точно тази част от конфигурацията, която зависи от директивата.

промяна AllowOverride

AllowOverride директива, която разрешава на някои конфигурационни файлове да отмените настройките по подразбиране, претърпя малки промени, които могат да повлияят на конфигурацията.

Тази стратегия (блокиране на сървъра, което и по-нататъшно елиминират настройките), използвани от повечето потребители. Това може да попречи на някои атаки, тъй като много хора забравят да блокира тази директива ръчно.

Промени в SendFile

Тази мярка за сигурност се използва за да се гарантира, че системата е добре поддържана операция. Неправилното изпълнение на някои операции може да доведе до повреди и грешки. Те може да зависи от системата, особено хардуер или метод на достъп съдържание (дистанционно файлова система и т.н.).

Забраняването на тази директива по подразбиране позволява на администратора да блокира предварително проверка на системата за съвместимост.

подробности за внедряването

Някои от стандартните разпределителни конфигурационни файлове са променени по време на прехода.

В Debian или Ubuntu Apache главния конфигурационен файл 2.4 (/etc/apache2/apache2.conf), сега е малко по-различни дръжки допълнителни файлове.

В Apache 2.2, тези дистрибуции са използвани conf.d файлове и обекти с разрешени за подкрепа на допълнителни конфигурационни файлове (обикновено това е необходимо, за да изберете виртуални хостове). Тези насоки са както следва:

Включи conf.d /
Включване на сайтове с активирани /

Сравнение с неутрални символи (английски маска съвпадение.) - нова функция, която ви позволява да включите някои файлове шаблони вместо трансфер указател в неговата цялост.

Това означава, че можете да използвате вместо по-горе посочената конфигурация, както следва:

Включи conf.d / *. Conf
Включва обекти, активирани / *. Conf

Въпреки това, този нов синтаксис може да доведе до проблеми, защото тя не работи, както и предишната. Включи директива се използва с сравнение с неутрални символи, че няма да работи и ще доведе до грешка, ако файлът не може да се намери за сравнение.

За да избегнете този проблем, има IncludeOptional директива, която работи по същия начин, но тя няма да даде грешка, ако установи, подходящ файл.

За да направите това, че повечето дистрибуции са започнали да използват повече каталози:

IncludeOptional конф-съвместим / *. Conf
IncludeOptional сайтове с активиран / *. Conf

Както можете да видите, тя използва допълнително отстраняване на грешки: създаване на индивидуални каталози конф-съвместим и конф-достъпно, отразяващи сайт-директории * и mods- *. В тази обстановка, всички действителни конфигурационните файлове трябва да завършват с .conf разширение.

За тази трябва да свикне с ако обикновено по-нататък виртуален хост файловете по подразбиране, site1.com т.н. Въпреки това, този метод на работа прави конфигурация по-гъвкави, тъй като тя вече е в указателя за конфигурация може да съхранява други файлове (например, различни версии на конфигурацията, настройка тест, на README и т.н.).

Това е, за тестване, можете просто да използвате:

CD / и т.н. / apache2 / обекти с разрешени /
кп mainconfig.conf mainconfig.conf.bak
нано mainconfig.conf

В допълнение a2dissite и a2ensite операции можете да използвате този метод запазва старата работа файла в директорията, която може да се използва и в бъдеще да се върне към старата версия му.

Също така, можете да забележите, че някои от директивите са били прогонени и някои директиви виртуални хостове са се променили. Сега виртуални хостове файлове вече не съдържат следните три блока:


Опции FollowSymLinks
AllowOverride None


Опции индекси FollowSymLinks MultiViews
AllowOverride None
Поръчка позволяват да отрича
позволи от всичко

ScriptAlias ​​/ CGI-хамбар / / ЮЕсАр / ИЪ / CGI-хамбар /

AllowOverride None
Опции + ExecCGI -MultiViews + SymLinksIfOwnerMatch
Поръчка позволяват да отрича
Оставя се от всичко

Първите два блока са вече в apache2.conf файл и актуализирани, за да Изискване директиви:


Опции FollowSymLinks
AllowOverride None
Изискване на всички се отричаха


Опции индекси FollowSymLinks
AllowOverride None
Изисква от всички отпуснати

Определяне цигара-бин директория е премахнат от досието на виртуални хостове и изпълнява в конф-достъпно / служи-CGI-bin.conf файла. Сега тези файлове са отговорни само за уникалната директивата.


ServerAdmin уебмастъра @ Localhost
DocumentRoot / Var / WWW
ErrorLog $ / error.log
CustomLog $ / access.log комбиниран

Както можете да видите, този подход може значително да намали някои конфигурация.

Като цяло, имайки предвид всички процедурата по актуализация, новите насоки и усъвършенствани техники, преходът към Apache 2.4 не е толкова сложно. Функционално, че е малко по-добре, отколкото Apache 2.2, тъй като предлага широка гама от допълнителни функции и използва по-прост синтаксис.