Apache директиви, Директивата за базова конфигурация на Apache
Пътят към HTTP-сървър изпълними файлове Apache.
Тази директива httpd.conf посочва директорията, която съдържа HTML код и др файлове на едно място. В случай на необходимост да подкрепи две или повече сайтове с една единствена Apache сървъра, трябва да използвате контейнера за директива
Директиви, изброени в контейнер Directory ще засегнат всички файлове и папки, посочена директория. Път до директорията, посочи веднага след думата Directory, като: блок от код
. Директива.
регулира поведението на посочената директория. Вместо в директорията, трябва да използвате регулярни изрази.
Опции директива определя кои сървърни функции са достъпни в определена директория.- Всичко - позволява на всички възможности, с изключение на MultiViews (инсталиран по подразбиране).
- Няма - всички варианти са забранени.
- ExecCGI - могат да се показват CGI скриптове.
- FollowSymLinks - Сървърът ще проследява символните тази директория.
- Включва - SSI (сървър-Site Включва) поддръжка.
- IncludesNOEXEC - SSI е позволено, но #exec на екип и #include в замразяването на CGI-скриптове.
- Индекси - ако исканата URL мачове директория, в която няма нищо, съответстващо отпечатан каталог DirectoryIndex (например index.htm), а след това сървърът ще върне списък на всички файлове и директории на директории.
- MultiViews - право на съдържание договаряне MultiViews.
- SymLinksIfOwnerMatch - сървърът ще следват само символни връзки, за които съответния файл или директория е със същия потребителски идентификатор, както е връзката.
Ако директива няколко опциите Опции прилага до директорията, а след това другите опции, се прилагат към нейните поддиректории, директорията родител не се отнася до поддиректория.
Пример №1 - наследството на опции:
Опции индекси FollowSymLinks
Опции Включва
В този пример, директорията C: / WWW и всички нейни поддиректории, с изключение на C: / WWW / otherdir, възложени "индекси" и "FollowSymLinks". Но поддиректория C: / WWW / otherdir и всички нейни поддиректории са разпределени само опция "Включва".
Използване на символите "+" и "-", за да добавяте или премахвате всяка възможност за поддиректорията.
Пример №2 - наследяване възможности:
Опции индекси FollowSymLinks
Опции + Включва -Indexes
В този случай, в директорията C: / WWW / otherdir ще има опции "FollowSymLinks" (добавено в директорията майка), и "включва" - се добавя чрез знака "+". Опцията "Индекси" отстранени от директорията C: / WWW / otherdir със символ "-".
AllowOverride опция показва, Apache, който директиви в .htaccess е позволено (на името на файл ".htaccess", или всяка друга дефинирани директива AccessFileName).- Всички - всички налични директиви (по подразбиране).
- Няма - не .htaccess обработени.
- AuthConfig - позволява използването на директиви разрешително (AuthDBMGroupFile, AuthDBMUserFile, AuthGroupFile, AuthName, AuthType, AuthUserFile, изисква и т.н ..).
- FileInfo - позволява използването на директивите контролиращи видове документи (AddEncoding, AddLanguage, AddType, DefaultType, ErrorDocument, LanguagePriority и т.н ..).
- Индекси - приема derektiv управление индексиране на стоките (AddDescription, AddIcon, AddIconByEncoding, AddIconByType, DefaultIcon, DirectoryIndex, FancyIndexing, HeaderName, IndexIgnore, IndexOptions, ReadmeName и т.н ..).
- Limit - позволява използването на директиви контролират достъпа гостоприемник (позволи отрече, и ред).
- Опции [= Опция. ] - позволява използването на директивите, които контролират дадена директория функции (Опции и XBitHack).
С цел постигането на максимална ефективност и безопасност на главния Apache HTTP сървър директория "/", каза контейнер
- Позволете, Deny - е отказан достъп по подразбиране, с изключение на домакините, посочени в ред след Оставя се от.
- Deny, Allow - е разрешено достъп по подразбиране, с изключение на домакините, посочени в ред след Deny от
- Взаимно-недостатъчност - позволява достъп само до тези домакини, които се намират в Допускане и лишена от Deny.
Позволете стойности са най-често използваните, Deny и Deny, Allow. Стойността по подразбиране зададете последната дума (разрешите или забраните). Между думи Allow и Deny директива Поръчка трябва да бъде само със запетая, без интервали.
В Примери №1-3 пропуска отваряне и затваряне на контейнера
Пример №1 на първа линия на "Ред Deny, Allow" задава реда на четене на правата за достъп: за първи път прочетох всички права, които забраняват нищо (. Deny от), И само след разрешаване на правото (Оставя се от). Настройката по подразбиране е Позволи. Вторият ред "Deny от всички" откаже достъп до всички хостове на всички домейни. Третият "Allow от apache.org", позволява достъп до apache.org домейн.
Пример №1 прехвърляне на права за достъп
Поръчка Deny, Allow
Отказ от всичко
Оставя се от apache.org
Пример №1, по-горе, се допуска достъп на всички страници / apache.org домейни файлове, всички други ресурси от други домейни отказан достъп.
Следващият пример №2, само предоставя достъп до областта apache.org освен поддомейн foo.apache.org (Deny от foo.apache.org). Всички други области няма да бъдат достъпни.
Пример №2 прехвърляне на права за достъп
Поръчка Allow, Deny
Оставя се от apache.org
Отказ от foo.apache.org
Пример №3 №2 се различава само от стойността на поръчката: "Deny, Allow", вместо "Разрешаване Deny". Но логиката на Apache разрешения на климата, на пръв поглед, не съвсем да се очаква. Достъпът ще бъде напълно отворен за всички области, дори и да foo.apache.org поддомейн, изрично забранено линия "Deny от foo.apache.org". Това е така, защото от порядъка на линиите "Allow от." И "Отказ от". Няма значение. Процедурата за определяне на правилата, определени с Директива Поръчка, от които Apache izhodya първо отказва достъп на foo.apache.org, а след това се записва върху това правило izhodya на директивата "Allow от apache.org".
Пример №3 прехвърляне на права за достъп
Поръчка Deny, Allow
Оставя се от apache.org
Отказ от foo.apache.org
Пример №4 забранява достъп до директорията C: / WWW подразбиране, дори и без използването на "Deny от." Line.
Пример №4 прехвърляне на права за достъп
Поръчка Allow, Deny
За повече информация относно директиви Alow, Deny и ред може да се получи от официалния Apache2.2 на документация (инж).
контейнер
Във всеки контейнер VirtualHost, можете да използвате почти всяка директива Apache, който ви позволява да изберете всеки сайт е най-подробен начин.
Пример поддръжка 2-различни места един от Apache
ServerName first.loc
Serveralias www.first.loc
DocumentRoot "C: /www/first.loc/public"
ErrorLog "C: /www/first.loc/logs/error.log"
ServerName second.loc
Serveralias www.second.loc
DocumentRoot "C: /www/second.loc/public"
ErrorLog "C: /www/second.loc/public"
За повече информация за виртуални хостове от Apache, можете да прочетете тук: "Официалната документация Apache на Virtual Host".