Apache тохиргооны файл. Apache тохиргооны файл. Apache хяналтын командууд

Apache тохиргооны файлууд

Ихэнх багцуудад Apache-ийн үндсэн тохиргооны файлыг httpd.conf гэж нэрлэдэг. Системийн хувилбараас хамааран энэ файл нь өөр өөр директоруудад байрлаж болох боловч формат нь өөрчлөгдөөгүй хэвээр байна. Caldera болон SuSE системүүд дээр httpd.conf файл нь /etc/httpd директорт байрладаг; Debian болон Slackware дээр энэ нь /etc/apache-д байрладаг (Slackware нь /etc/apache/httpd.conf.default жишээ файлыг өгдөг; серверийг ажиллуулахын тулд зөвхөн нэрийг өөрчлөхөд л хангалттай. энэ файлшаардлагатай өөрчлөлтүүдийг хийх); Red Hat болон TurboLinux дээр httpd.conf файл нь /etc/httpd/conf/ директорт байрладаг.

Ердийнх шиг, httpd.conf файлын # тэмдэгээр эхэлсэн мөрүүд нь тайлбарыг агуулна. Серверийн тохиргоог тодорхойлох сонголтуудыг дараах байдлаар зааж өгсөн болно.

Удирдамжийн утга

Удирдамж гэдэг нь үүнтэй холбоотой ямар нэг утгатай байж болох нэр юм. Утга нь тоо, файлын нэр эсвэл дурын тэмдэгтийн мөр байж болно. Зарим заавар нь олон дэд сонголтыг зааж өгөх боломжийг олгодог. Энэ тохиолдолд удирдамжийн нэрийг өнцгийн хаалтанд байрлуулна. Ийм удирдамжийн жишээг доор өгөв.

Сонголтууд FollowSymLinks

AllowOverride None

Сүүлийн мөрөнд эхэнд заасан зааврын нэрийг агуулсан боловч ямар ч утга өгөөгүй. Блокыг төгсгөх удирдамжийн нэрний өмнө ташуу зураас байна.

Зарим тохиолдолд доор жагсаасан нэмэлт тохиргооны файлуудыг Apache-г тохируулахад ашигладаг. Тэдгээрийг ихэвчлэн httpd.conf-тэй ижил санд байрлуулдаг.

Access.conf. Энэ файлын холбоос нь AccessConfig удирдамжийг ашиглан үүсгэгдсэн бөгөөд httpd.conf файлд агуулагдсан болно. access.conf файл нь ихэвчлэн удирдамж агуулдаг , тэдгээрт заасан лавлах руу нэвтрэх боломжуудыг тодорхойлох. Одоогоор энэ файлыг ихэвчлэн хоосон орхидог бөгөөд заримдаа AccessConfig утгыг /dev/null гэж тохируулдаг бөгөөд энэ нь access.conf-г ашиглахыг хориглодог.

Mime.types. Мэдээллийг хэрхэн боловсруулахыг вэб хөтчид хэлэхийн тулд вэб сервер нь MIME (Олон зорилготой интернет шуудангийн өргөтгөлүүд) стандартыг ашигладаг. Жишээлбэл, MIME төрлийн text/plain нь өгөгдөл нь энгийн текст, харин image/jpeg нь график өгөгдлийг JPEG (Joint Photographic Experts Group) форматаар зааж өгдөг. mime.types файл нь MIME төрөл болон файлын өргөтгөлүүдийн хоорондох зураглалын талаарх мэдээллийг агуулдаг. Жишээлбэл, .txt болон .asc-ээр төгссөн файлын нэр нь MIME төрлийн text/plain-тэй холбоотой байдаг. Хэрэв энэ зураглалыг зөв тохируулаагүй бол вэб хөтөч зарим төрлийн файлуудыг боловсруулахад хүндрэлтэй байх болно. Багцын нэг хэсэг болгон нийлүүлсэн файл нь вэб хуудсан дээр байрлуулж болох бараг бүх төрлийн өгөгдлийг боловсруулах боломжийг олгодог. Хэрэв та ховор төрлүүдийг ашиглах шаардлагатай бол энэ файлд шинэ оруулга нэмэх шаардлагатай болно.

Ид шид. Мөн энэ файл нь MIME төрөл болон өгөгдлийн хоорондох зураглалыг тодорхойлох боломжийг танд олгоно. Мэдээлэлд дүн шинжилгээ хийхдээ та нэг төрлийн тодорхой шинж тэмдгийг олж мэдэх боломжтой. Жишээлбэл, олон файлд тусгай түлхүүрүүд байдаг - "шидэт" байт дараалал. Эдгээр дарааллыг хөрвүүлсэн текст харах, шидэт файлд заасан байдаг. Хэрэв та энэ файлын форматыг сайтар судлаагүй бол түүнд өөрчлөлт оруулахыг зөвлөдөггүй. Шидэт файлын бүтцийг энэ бүлэгт авч үзэхгүй.

Хэрэглэгчдэд зориулсан Линукс номноос зохиолч Костромин Виктор Алексеевич

8.2.2. Үндсэн тохиргооны файлууд Хэрэв та Sect-ийг уншсан бол. 8.2.1 (эсвэл та /etc/inittab файлыг харвал) хэвийн нөхцөлд init процесс нь getty процессыг эхлүүлэхээс гадна 2 үндсэн үйлдлийг гүйцэтгэдэг гэж төсөөлөөд үз дээ: /etc-ээс rc.sysinit скриптийг ажиллуулдаг. /rc.d лавлах; rc скриптийг ажиллуулдаг

DIY Linux сервер номноос зохиолч

12.5. SSL болон Apache 12.5.1. SSL SSL (Secure Sockets Layer) суулгах нь интернетийн аюулгүй байдлыг хангах зорилгоор Netscape-ийн боловсруулсан шифрлэлтийн арга юм. Энэ арга нь олон шифрлэлтийн аргыг дэмждэг бөгөөд үйлчлүүлэгчийн болон үйлчлүүлэгчийн түвшний баталгаажуулалтыг хангадаг.

Asterisk™: The Future of Телефон утасны хоёрдугаар хэвлэл номноос зохиолч Мэггелен Жим Ван

Линукс сүлжээний хэрэгслүүд номноос Смит Родерик В.

Линукс номноос: Бүрэн гарын авлага зохиолч Колисниченко Денис Николаевич

DHCP тохиргооны файлууд Ихэнх түгээлтүүд Линукс багцуудИнтернэт Програм хангамжийн Консорциумын (http://www.isc.org/products/DHCP/) боловсруулсан DHCP серверийг агуулна. Интернет Програм хангамжийн Консорциум (ISC) 2000 оны сүүлээр DHCP 3.0 хувилбарыг гаргасан боловч 2002 оны эхээр олон Линукс хувилбаруудхамт ирсэн хэвээр байна хуучин хувилбар 2.0

Ubuntu 10 номноос. Хурдан эхлүүлэх гарын авлага зохиолч Колисниченко Д.Н.

The C Language - Эхлэгчдэд зориулсан гарын авлага номноос Прата Стивен бичсэн

Exim тохиргооны файлууд Exim-ийн үндсэн тохиргооны файлыг exim.conf гэж нэрлэдэг. Энэ нь ихэвчлэн /etc санд байрладаг. Энэ файл нь дараах форматын оруулгуудыг агуулж байна: сонголт = утга Ердийнх шиг, тайлбар агуулсан мөрүүд # тэмдэгтээр эхэлдэг.

Линукс номноос хакерын нүдээр зохиолч Фленов Михаил Евгеньевич

Линукс цөмийн хөгжүүлэлт номноос Хайр Роберт

16.1. Apache-г суулгах Тархалтаас хамааран Apache вэб серверийг суулгасан багцыг apache эсвэл httpd, баримтжуулалтын багцыг apache-docs эсвэл httpd-manual гэж нэрлэж болно. Эхний тохиолдолд та агуулсан apache нийтлэг багцыг суулгах хэрэгтэй болно

Зохиогчийн номноос

16.2. Apache тохиргоо. Тохиргооны файлууд Apache-г суулгасны дараа та дараах файлуудыг засах хэрэгтэй:? /etc/httpd/conf/httpd.conf - үндсэн тохиргооны файл. Apache 2.x-ийн хувьд. Энэ файлыг httpd2.conf гэж нэрлэж болно;? /etc/logrotate.d/apache эсвэл /etc/logrotate.d/httpd (2.0 хувилбарт) - эргүүлэх файл

Зохиогчийн номноос

16.10. SSL болон Apache 16.10.1. SSL SSL (Secure Sockets Layer) суулгах нь өгөгдөл дамжуулах аюулгүй байдлыг хангах зорилгоор Netscape-ийн боловсруулсан шифрлэлтийн арга юм. Энэ арга нь шифрлэлтийн олон аргыг дэмждэг бөгөөд үйлчлүүлэгч болон үйлчлүүлэгчийн түвшинд баталгаажуулалтыг хангадаг.

Зохиогчийн номноос

19.2. Ачаалагчийн тохиргооны файлуудын жагсаалт 19.1 нь үндсэн GRUB2 тохиргооны файлыг харуулж байна - /boot/grub/grub.cfg. Үүнийг гараар засварлах боломжгүй. Үүнийг үүсгэхийн тулд энэ тохиргооны файлыг үүсгэгч /usr/sbm/grub-mkconfig хэрэгслийг ашиглана уу. загварууд дээр үндэслэсэн,

Зохиогчийн номноос

26.2.3. Серверийн тохиргооны файлууд Серверийн тохиргооны файлууд нь /etc/apache2 санд байрладаг. Үндсэн тохиргооны файлыг apache2.conf гэж нэрлэдэг. Түүний анхдагч тохиргоо нь ихэнх хэрэглэгчдэд тохирно. Хэрэв та вэб серверийг зөвхөн дотооддоо ашиглахаар төлөвлөж байгаа бол (

Зохиогчийн номноос

Эх файлууд болон гүйцэтгэх файлууд Манай гайхалтай програм нь хэдийгээр товч бөгөөд энгийн боловч #include эсвэл printf гэх мэт зааврыг "ойлгодоггүй" тул компьютерт зориулсан огт утгагүй тэмдэгтүүдийн багц юм. Тэр зөвхөн ойлгодог тусгай хэл,

Зохиогчийн номноос

5.3.1. Тохируулгын файлууд Бүх SSH протоколын тохиргооны файлууд /etc/ssh директорт байрладаг. Эндээс та дараах жагсаалтыг харж болно:? SSH серверийн тохиргооны файл - sshd_config;? SSH үйлчлүүлэгчийн тохиргооны файл - ssh_config;? төрөл бүрийн гол файлууд

Зохиогчийн номноос

Цөмийн дибаг хийх тохиргооны сонголтууд Эмхэтгэх үед идэвхжсэн цөмийн кодыг дибаг хийх, шалгахад туслах хэд хэдэн тохиргооны сонголтууд байдаг. Эдгээр сонголтууд нь цөмийн тохиргооны засварлагч цэсний Цөмийг хакердах зүйлд байдаг. Энэ бүгд

Apache бол вэб сервер юм.

Тохиргооны файлууд

Анхдагч байдлаар, бүх тохиргооны файлууд "conf" хавтсанд хадгалагддаг.

httpd.conf нь үндсэн тохиргооны файл apache сервер. Энэ файлд хийсэн өөрчлөлтүүд хүчин төгөлдөр болохын тулд apache серверийг дахин эхлүүлэх шаардлагатай.

"Нэмэлт" хавтсанд ("conf" хавтас дотор) байна нэмэлт тохиргооны файлууд. Шаардлагатай бол тэдгээрийг үндсэн тохиргооны файл дотор холбож болно.

Тохиргооны файлуудын синтакс

Нэг мөрөнд зөвхөн нэг удирдамж байх ёстой. Удирдамж дараагийн мөрөнд үргэлжлэхийг харуулахын тулд \ (буцах налуу зураас) тэмдэгтийг мөрийн сүүлчийн тэмдэгт болгон ашиглаж болно. Мөрийн төгсгөлөөс бусад тэмдэгтээс хойш \ тэмдэгтийн дараа хоосон зай байх ёсгүй.

Заавар болон түүний аргументууд нь зайгаар тусгаарлагдана. Аргументууд нь мөн зайгаар тусгаарлагдсан байдаг. Хэрэв аргумент хоосон зайтай бол түүнийг хашилтанд оруулах ёстой.

Удирдамжууд нь жижиг жижиг үсгээр ялгагддаггүй, харин аргументууд нь эсрэгээр нь том жижиг үсгээр хардаг.

# (хэш) тэмдэгтээр эхэлсэн мөрийг тайлбар гэж үзэж, үл тоомсорлодог. Тайлбарыг заавартай нэг мөрөнд байрлуулах боломжгүй.

Хоосон зайны тэмдэгтүүд, зааврын өмнө оруулсан нь үл тоомсорлодог тул кодыг уншихад хялбар болгох үүднээс догол оруулахад ашиглаж болно. Хоосон мөрүүдбас үл тоомсорлодог.

Модулиуд

Модуль бол нэмэлт функцийг нэмэх боломжийг олгодог залгаас файл юм. Бүх залгаасууд нь анхдагчаар "модуль" хавтсанд байрладаг.

Модулиуд нь Apache вэб серверийн цөмд ороогүй удирдамжийг ашиглах боломжийг танд олгоно.

.htaccess

Htaccess нь Apache вэб сервер болон ижил төстэй серверүүдийн нэмэлт тохиргооны файл юм. Энэ нь үндсэн тохиргооны файлыг өөрчлөхгүйгээр тусдаа сангуудын функцийг тохируулах боломжийг олгодог, учир нь түүнд хандах нь ихэвчлэн хориотой байдаг.

.htaccess файл нь зөвхөн өөрийн байрлаж буй лавлах болон түүний хүүхэд директоруудад л нөлөөлнө. .htaccess файлыг дурын санд байрлуулж болно. Энэ файлын зааврууд нь одоогийн директор доторх бүх файлууд болон түүний бүх дэд директоруудад нөлөөлдөг (эдгээр зааврыг үндсэн .htaccess файлуудын заавраар хүчингүй болгохоос бусад тохиолдолд).

.htaccess файлд хийсэн өөрчлөлт нь серверийг дахин эхлүүлэх шаардлагагүй.

Хэрэв .htaccess файлд ямар нэгэн алдаа гарсан бол, жишээлбэл, удирдамж эсвэл удирдамжийн утгыг буруу бичсэн бол сервер алдаа буцаана: Алдаа 500.

.htaccess файл нь Apache тохиргооны файлуудтай ижил синтакс ашигладаг.

Та .htaccess файл дотор ямар удирдамж байрлаж болохыг тодорхой зааврын "контекст"-ийн удирдамжийн лавлахаас харж болно.

Үзэл баримтлал:тохиргоо, заавар. Тохируулгын файлууд, заавар. Үндсэн тохиргооны заавар. Серверийн процессууд. Директорууд болон файлуудад хандах хандалтыг хянах.

Тохиргоо (Латин configuratio - харилцан зохицуулалт) нь тусгай логик, арга зүйн арга, янз бүрийн сэдвүүдийн мэдлэг, нэг объектын талаархи өөр өөр санааг нэгтгэх оюун санааны арга юм.

Заавар, g. (Латин Directio - чиглэлээс). Дээд байгууллагаас доод албан тушаалтанд өгсөн ерөнхий удирдамж (сервер ажлын станцгэх мэт) .

Тохируулгын файл нь нэлээд энгийн форматтай файл юм. Мөр бүр нь түлхүүр үг болон нэг буюу хэд хэдэн аргументыг илэрхийлдэг. Энгийн байхын тулд ихэнх мөрөнд зөвхөн нэг аргумент агуулагддаг. # тэмдэгтийн дараах бүх зүйл нь тайлбар бөгөөд үүнийг үл тоомсорлодог.

Apache нь /etc/httpd/conf/ директор доторх үйлчилгээний файлуудыг өөрчлөх замаар тохируулагддаг. Вэб серверийн үндсэн тохиргооны файл нь httpd.conf юм. Тохируулгын удирдамжийг Include үндсэн бүтцэд file_name.conf агуулсан янз бүрийн файлд байрлуулж болно.

Хэрэв файл эсвэл директорийн байршлыг тохиргооны файлд далд зааж өгсөн бол (тодорхой байршил нь файлын системийн үндэсээс "/" тэмдэгтээс эхэлдэг) Apache нь ServerRoot зааварт заасан лавлахыг ашиглан файлын бодит байршлыг тодорхойлно. бай.

Apache модулиудын тодорхойлолт ба тохиргооны удирдамж

Удирдамжийг дараах түвшинд ашиглаж болно.

Серверийн тохиргооны түвшин - удирдамжийг зөвхөн үндсэн тохиргооны файлд ашиглах боломжтой.

V түвшин - удирдамжийг өөр өөр виртуал хостуудад өөр өөрөөр ашиглаж болно.

D түвшин - дурын лавлахын хувьд та энэ түвшний удирдамжийг ашиглан өөрийн тохиргоог хийж болно.

Htaccess файлуудын H түвшин - удирдамжийг серверээс зөвшөөрөгдсөн газруудад .htaccess файлд ашиглахыг зөвшөөрдөг.

Зааварт файлын нэрийн параметрийг ашиглах нь ямар ч үед ServerRoot лавлахаас файлд хүрэх үнэмлэхүй ("/"-ээр эхэлсэн) эсвэл харьцангуй замыг зааж өгдөг.

CORE - вэб серверийн цөм (Apache үндсэн модуль)

AccessConfig файлын нэр

Тохиргооны файлын байршлыг тохируулна. Анхдагч системийн тохиргооны файл нь conf/access.conf; Энэ файлыг уншихыг цуцлахын тулд /dev/null тохиргоог хийхийг зөвлөж байна.

AccessFileName файлын файл ...

Өгөгдмөлөөр шууд тохиргоог тохируулахад ашигладаг хандалтын файлуудын нэрийг тохируулна - .htaccess.

AddModule модулийн модуль ... [A]

Тусдаа номын сангийн файл хэлбэрээр нийлүүлсэн динамикаар ачаалагдсан модулийг идэвхжүүлдэг.

AddModule модулийн модуль ...

Тусдаа номын сангийн файл хэлбэрээр нийлүүлсэн эсвэл үндсэн httpd модулийн дотор эмхэтгэсэн динамикаар ачаалагдсан модулийг идэвхжүүлдэг.

AllowOverride параметрийн параметрийг ...

Apache нь дотоод .htaccess файлуудад удирдамжийг ашиглах дүрмийг тогтоодог;

Аль нь ч биш - үл тоомсорлодог;

Бүгд - бүх удирдамжийг ашигладаг;

Сонголтууд - Options болон XBitHack ашиглахыг зөвшөөрдөг;

Индексүүд - лавлах индексжүүлэх удирдлагын удирдамж;

FileInfo - файлын төрлүүд болон тэдгээрийн зохицуулагчийг удирдах заавар;

AuthConfig - Auth* лавлах руу хандах заавар;

Хязгаар - зөвшөөрөх/татгалзах/захиалга өгөх.

AuthName хүрээ

AuthType төрөл

Вэб сайтын лавлах руу нэвтрэхийн тулд хэрэглэгчийн нэр, нууц үг хүсэх, дамжуулах аргыг тодорхойлоход ашигладаг. Ихэнхдээ тэд Basic ашигладаг, бага байдаг - Digest болон бусад.

BindAddress хаяг [A]

Apache холболтыг хүлээн авах хаягийг зааж өгнө. Та хостын нэр, IP хаяг эсвэл * ашиглаж болно.

ClearModuleList [A]

Заавар нь ачаалагдсан модулиудын жагсаалтыг арилгадаг. Энэ удирдамжийн дараа та шаардлагатай модулиудтай ажиллахын тулд AddModule удирдамжийг ашиглах хэрэгтэй.

ContentDigest асаалттай|унтарсан

MD5 өгөгдлийн хэш дамжуулалтыг идэвхжүүлэх эсвэл идэвхгүй болгох. Энэ нь бүх дамжуулагдсан хуудсуудад зориулагдсан бөгөөд кэшд хадгалагдаагүй болно.

CoreDumpDirectory нэр [A]

Яаралтай байдлын үед үүссэн санах ойн дамп файлууд (үндсэн) хадгалагдах директор руу Apache-г зааж өгнө.

DefaultType mimetype

Хэрэв Apache нь mime.types файл эсвэл AddType удирдамжаар төрлийг тодорхойлж чадахгүй бол үйлчлүүлэгчид илгээсэн MIME төрлийг тохируулна. Өгөгдмөлийг текст/энгийн гэж тохируулсан.

...

Өгөгдсөн директорт байрлах баримт бичигт хандах үед Apache-ийн зан төлөвийг тодорхойлсон удирдамжуудын бүлгийг нэгтгэдэг. Нэрийн маск ашиглахыг зөвшөөрнө - тэмдэг *, ? бүрхүүлийн дүрмийн дагуу. Хэрэв маск хэрэглэвэл нэрний өмнө ~ зураас тавина.

...

Тогтмол илэрхийллээр заасан сангуудын бүлгийг тодорхойлж, Apache-д энэ бүлгийн лавлах болон файлуудтай ажиллах дүрмийг тогтоодог.

DocumentRoot нэр

Доорх вэб серверийн өгөгдлийн бүтэц болох лавлах модны үндсэн байршлыг серверт заана.

ErrorDocument filename|string|URL

Алдаа гарсан тохиолдолд заасан хуудсууд руу чиглүүлдэг. Та мөн үүссэн нөхцөл байдлын талаархи тайлбарыг нэг хашилтаар эхлэх боломжтой. Жишээ:

ErrorDocument 500 http://foo.example.com/cgi-bin/tester

ErrorDocument 404 /cgi-bin/bad_urls.pl

ErrorDocument 401 /subscription_info.html

ErrorDocument 403 "Уучлаарай, танд өнөөдөр хандахыг зөвшөөрөхгүй"

ErrorLog файлын нэр

Алдааны бүртгэлийн файлын нэр. Хэрэв параметрийн мөр (/) -ээр эхэлсэн бол файлын замыг ServerRoot-ээс зааж өгөх ёстой; хэрэв энэ нь (|) -ээр эхэлсэн бол алдааны мэдэгдлүүд нь стандарт оролт дээр заасан тушаалд дамждаг. Жишээлбэл, ийм байдлаар та логийг SQL DBMS-д шууд хадгалах эсвэл шууд шахаж, жишээ нь gzip рүү шилжүүлэх боломжтой. Хэрэв систем энэ функцийг дэмждэг бол Apache 1.3 болон түүнээс хойшхи хувилбарууд нь өгөгдмөл байдлаар syslog руу мессеж гаргадаг; гэхдээ үүнийг syslog:facility ашиглан идэвхгүй болгож болно.

...

Файлын хандалтын хяналт. Хэсэгүүд удирдамжийн хэсгүүдийг уншсаны дараа тохиргооны файлтай ижил дарааллаар боловсруулагдана болон .htaccess файлууд, гэхдээ лавлах хэсгүүдийг уншихаас өмнө . Аргумент нь файлын нэр эсвэл "?" - дурын тэмдэгт, "*" - дурын тэмдэгт. Нэмэлт ~ тэмдэгтэй бол өргөтгөсөн регдыг ашиглаж болно. илэрхийллүүд (grep(1) дахь REGULAR EXPRESSIONS хэсгийг үзнэ үү) Жишээ нь: Интернетэд түгээмэл хэрэглэгддэгтэй тохирч байх болно график файлууд.

...

Үүнтэй адил , гэхдээ тогтмол хэллэг ашигладаг.

Энэ нь зөвхөн хүрээлэн буй орчинд Apache болон forking процессуудыг эхлүүлэх, өгөгдсөн нэрэнд тохирох эрхтэй холбоотой юм.

HostNameLookups on|off|давхар

Урвуу DNS ашиглан зочны хост нэрийг тодорхойлох чадварыг хянадаг. Энэ нь удаан ажилладаг бөгөөд анхдагчаар идэвхгүй гэж тооцогддог. Давхар гэдэг нь хүсэлт илгээсэн хостын IP хаягтай тохирч байгаа эсэхийг шалгахын тулд хостын нэрийг нэмэлт шалгалтанд оруулах ёстойг харуулж байна.

IdentityCheck on|off

RFC1413 баталгаажуулалтыг идэвхжүүлнэ үү. Функцийг идэвхжүүлснээр серверт хандах хугацааг мэдэгдэхүйц нэмэгдүүлэх болно.

...

Тэгээдтохиолдолд л гүйцэтгэх ёстой энэ параметр Apache дотоод бүтцэд тодорхойлсон. Параметрийн өмнөх [!] тэмдэг нь тухайн параметр тодорхойлогдоогүй тохиолдолд л удирдамжийн блок уншигдах болно гэдгийг илэрхийлнэ.

...

Хос удирдамжаар үүсгэгдсэн блок дотор удирдамжуудыг байрлуулсан болохыг заана Тэгээдтохиолдолд л гүйцэтгэх ёстой энэ модуль Apache дээр эмхэтгэсэн. Модулийн өмнөх [!] тэмдэг нь параметр тодорхойлогдоогүй тохиолдолд л удирдамжийн блок уншигдах болно гэдгийг харуулж байна.

Файлын нэрийг оруулах [A]

Энэхүү заавар нь серверийн тохиргоонд тохиргооны файлуудыг оруулах боломжийг олгодог.

KeepAlive асаалттай|унтраах [A]

Үйлчлүүлэгчид TCP холболтыг таслахгүйгээр олон файлыг дараалан хүсэх боломжтой.

KeepAliveTimeout сек [A]

TCP холболт хаагдахаас өмнөх (секундээр) Apache нь үйлчлүүлэгчийн дараагийн хүсэлтийг хүлээхийг заана.

...

Дотор байрлуулсан контентууд нь аль HTTP арга (жишээ нь GET эсвэл POST) хамаарахыг зааж өгөх боломжийг танд олгоно. ... хандалтыг хязгаарлах командууд.

Дараах аргуудыг ашиглаж болно: GET, POST, PUT, DELETE, CONNECT, OPTIONS, TRACK, PATCH, PROPFIND, PROPPATCH, MKCOL, COPY, MOVE, LOCK, UNLOCK.

Портыг сонсох [A]

Apache-г заасан хаяг, портуудыг сонсохыг албаддаг. Жишээлбэл, серверийг 80 ба 8000 портууд дээр сонсохыг албадахын тулд дараахыг ашиглана уу:

Apache-г заасан портын дугаартай өөр өөр интерфейс дээр ажиллуулахын тулд:

192.170.2.1:80-ыг сонсоорой

192.170.2.5:8000-г сонсоорой

ListenBacklog урт [A]

Холболтын боловсруулалтын дарааллын хамгийн их урт.

...

Дэлгэрэнгүйг apache гарын авлагад байгаа :)

...

Дэлгэрэнгүйг apache гарын авлагад

Түгжих файлын нэр [A]

Заавар нь цоож файл руу хүрэх замыг зааж өгдөг.

LogLevel emerg|alert|crit|алдаа|анхааруулах|мэдэгдэл|мэдээлэл|дибаг

Протоколын мэдээллийн агуулгын түвшинг (серверийн үйлдлийн бүртгэлийн файл) тохируулна. Зөвлөмж болгож буй хэрэглээ: ядажтүвшний шүүмж.

MaxClients тоо [A]

Уг заавар нь серверт нэгэн зэрэг илгээх хүсэлтийн тоонд хязгаарлалт тавьдаг. Үнэн хэрэгтээ энэ тоо нь серверийн хүүхэд процессуудын тооноос хэтэрч болохгүй бөгөөд энэ нь анхдагчаар 256-аас их байж болохгүй. Нөхцөл байдлыг засахын тулд HARD_SERVER_LIMIT-г httpd.h дээр засварлаж, эмхэтгэ.

MaxKeepAliveRequest тоо [A]

KeepAlive-г идэвхжүүлсэн тохиолдолд TCP холболтыг таслахгүйгээр заасан тооны файлыг дараалан хүсэх боломжийг үйлчлүүлэгчид олгоно. Хэрэв параметрийг 0 гэж тохируулсан бол Apache зөвхөн KeepAliveTimeout параметр дээр тулгуурлан холболтыг хаах болно.

MaxRequestsPerChild тоо [A]

Уг заавар нь бие даасан хүүхэд процессын хариуцах хүсэлтийн тоонд хязгаарлалт тавьдаг. Хэрэв MaxRequestsPerChild-ийг 0 гэж тохируулсан бол хүсэлтийн тоо хязгааргүй болно.

MaxSpareServers тоо [A]

Заавар нь идэвхгүй серверийн процессуудын хүссэн дээд тоог тогтоодог. Хэрэв Apache-ийн Microsoft Windows хувилбарыг ашиглавал заавар нь ашиггүй болно.

MinSpareServers тоо [A]

Уг заавар нь идэвхгүй серверийн процессуудын хүссэн хамгийн бага тоог тогтоодог. Хэрэв Apache-ийн Microsoft Windows хувилбарыг ашиглавал заавар нь ашиггүй болно.

NameVirtualHost порт [A]

Энэ порт-нэрийн хүсэлтийг хандаж байгаа хостын нэрээр (HTTP "Host:" толгой) тусгаарлах ёстойг харуулж байна. Нэг IP хаягаар олон виртуал хостуудыг тодорхойлох боломжийг танд олгоно.

Парам параметрийн сонголтууд...

Заасан агуулгын хувьд Apache үйлдлийн тохиргоог тодорхойлдог. Бүх боломжит тохиргоог apache гарын авлагад дэлгэрэнгүй тайлбарласан болно. Түгээмэл хэрэглэгддэг: Indexes - хэрэв индекс файл олдохгүй бол директорийн агуулгыг харуулахыг идэвхжүүлдэг (DirectoryIndex заавар); ExecCGI - энэ директорт гүйцэтгэх боломжтой файлуудыг (cgi, perl скриптүүд) байрлуулах боломжийг олгодог; Үүнд - SSI директорт файлуудыг байрлуулах боломжийг олгодог. Тохиргоо бүрийг түүнийг ашигладаг харгалзах модуль дэмждэг бөгөөд хэрэв шаардлагатай модуль ачаалагдаагүй бол ажиллахгүй байж болно. Сонголтуудын удирдамж бүрийг эх лавлахуудад тодорхойлсон аль хэдийн мэдэгдэж байгаа Сонголтуудаас гадна гэж үздэг. Тохиргоо бүрд + эсвэл - гэсэн угтвар залгаж өгөгдсөн контекст дээр идэвхжүүлэх эсвэл идэвхгүй болгох боломжтой.

PidFile файлын нэр [A]

Уг заавар нь сервер процессын танигчийг бичих файлын нэрийг тогтоодог.

Apache портыг заана - 0-ээс 65535 хүртэлх тоо (зарим портыг бусад протокол ашиглаж болохыг анхаарна уу, /etc/servises-ийг үзнэ үү). http протоколын стандарт порт нь 80 байна.

userid|groupid|хүчинтэй-хэрэглэгч|файл эзэмшигч|бүлэг эзэмшигчийг шаардах [A]

Ямар хэрэглэгчид лавлахад хандах эрхтэйг тодорхойлно.

Хэрэглэгчийн ID-г шаардах - зөвхөн эдгээр хэрэглэгчид хандах эрхтэй

Бүлгийн бүлгийн нэр [бүлгийн нэр] шаардах - эдгээр бүлгийн бүх хэрэглэгчид

Хүчинтэй хэрэглэгчийг шаардах - бүх хүчинтэй хэрэглэгчид.

ResourceConfig файлын нэр [A]

Сервер httpd.conf-г уншсаны дараа энэ файлаас дараагийн удирдамжийг уншина. Файлын нэрийг ServerRoot-тэй харьцуулахад тохируулсан. Идэвхгүй болгож болно: ResourceConfig /dev/null

RLimitCPU max|сек[ max|сек] [A]

RLimitMEM max|байт[ max|байт] [A]

RLimitNPROC max|тоо[ max|тоо] [A]

Дурын|бүгдийг хангах [A]

Зөвшөөрөх болон шаардах хоёрыг нэгэн зэрэг ашигласан тохиолдолд хандалтын бодлогыг тодорхойлно. Тухайн газар руу нэвтрэх эрх нь нэр/нууц үг болон үйлчлүүлэгчийн хаягаар хязгаарлагдах үед ашиглагддаг. Энэ тохиолдолд анхдагч ("бүгд") нь үйлчлүүлэгчийг хаягаар баталгаажуулж, хэрэглэгчийн нэр, нууц үгээ зөв оруулахыг шаарддаг. "Аливаа" параметрийн хувьд үйлчлүүлэгч зөв нэр, нууц үгээ оруулсан эсвэл хостын хязгаарлалтыг давсан тохиолдолд хандах боломжтой болно. Нууц үгээр дамжуулан хандалтыг хязгаарлахад ашиглаж болох боловч нууц үггүйгээр тодорхой хаягаас үйлчлүүлэгчдэд хандахыг зөвшөөрдөг.

ScoreBoardFile файлын нэр [A]

Уг заавар нь хүүхэд болон эхийн процессуудын хооронд харилцахын тулд серверийн ашигладаг файлын нэрийг зааж өгөх шаардлагатай. Та Apache-г ажиллуулж, өгөгдсөн нэртэй файл үүсгэж байгаа эсэхийг харснаар энэ файл шаардлагатай эсэхийг мэдэх боломжтой. Хэрэв тийм бол үүнийг Apache-ийн зөвхөн нэг хуулбар ашиглаж байгаа эсэхийг шалгах хэрэгтэй.

SendBufferSize байт [A]

TCP буферийн хэмжээг тохируулна.

ServerAdmin имэйл

Серверийн алдааны мессежээр үйлчлүүлэгчид үзүүлэх имэйл хаягийг тохируулна.

ServerAlias ​​хостын нэр

Өөр виртуал хост нэрийг зааж өгнө.

ServerName хостын нэр

Заавар нь серверийн нэрийг тогтоодог; холбоос үүсгэхэд ашигладаг. Хэрэв нэрийг заагаагүй бол сервер үүнийг өөрийн IP хаягаас авахыг оролдох болно.

ServerPath зам

Заавар нь хостын хуучин замын нэрийг тогтоодог.

ServerRoot зам [A]

Серверийн амьдардаг лавлахыг тохируулна. Ихэвчлэн conf/ болон logs/ дэд сангуудыг агуулна. Бусад тохиргооны файлуудын замууд нь энэ директортой харьцуулахад бүтээгдсэн.

ServerSignature on|ff|mail

Серверээс үүсгэсэн баримт бичгийн доод талд байгаа мөрийг тохируулна. Өгөгдмөлөөр идэвхгүй, Асаалттай - виртуал хостын серверийн хувилбар болон ServerName-ийг харуулдаг, Имэйл нь ServerAdmin руу mailto: холбоосыг нэмнэ.

ServerTokens Minimal|OS|Бүрэн [A]

Серверийн үйлдлийн систем болон хөрвүүлсэн модулиудыг тодорхойлсон серверээс үйлчлүүлэгч рүү илгээсэн толгой хэсгийг хянадаг.

ServerType бие даасан|inetd [A]

Систем серверийг хэрхэн эхлүүлж байгааг тодорхойлдог. inetd - inetd системийн процессоос ажилладаг. бие даасан - демон процесс шиг.

Эхлэх серверийн тоо [A]

Эхлэх үед үүсгэсэн хүүхдийн процессуудын тоог тохируулна. Ачааллаас хамааран тоо нь динамикаар өөрчлөгддөг тул энэ тохиргоог өөрчлөх ямар ч шалтгаан байдаггүй.

Apache-ийн хүлээх хугацаа: GET хүсэлтийг хүлээн авах, POST болон PUT хүсэлтүүд дээр TCP пакетуудыг хүлээн авах, TCP пакетуудыг хариултаар дамжуулах үед ACK-уудын хооронд түр зогсоох.

UseCanonicalName on|off

Apache нь SERVER_PORT-ийн SERVER_NAME утгыг ашиглан үүсгэсэн хуудсынхаа нэрийг үүсгэхэд хүргэдэг.

Хэрэглэгчийн нэр

Сервер хүсэлтэд хариу өгөх хэрэглэгчийн ID-г тохируулна. Зааврыг ашиглахын тулд сервер root хэлбэрээр ажиллаж байх ёстой.

...[A]

Хос удирдамжаас үүссэн блок дотор байрлуулсан удирдамж ТэгээдБи өгөгдсөн виртуал хостын тохиргоог тодорхойлдог. Виртуал хост бүр өвөрмөц IP хаяг, портын дугаар эсвэл хостын нэртэй байх ёстой. Жишээлбэл, сервер нь дотоод сүлжээнд сүлжээний интерфэйстэй, гадаад сүлжээнд өөр интерфейстэй бол энэ удирдамжийг ашиглах нь утга учиртай.

mod_env - CGI/SSI файлд боловсруулах хувьсагчдыг тохируулж дамжуулдаг

PassEnv хувьсагч[ хувьсагч] ...

Орчны хувьсагчийг (жишээ нь HOME) зохицуулагчдад дамжуулдаг.

SetEnv хувьсагчийн утга

Заасан орчны хувьсагч руу заасан утгыг бичнэ.

UnsetEnv хувьсагч[ хувьсагч] ...

Хувьсагчийг дахин тохируулснаар үүнийг зохицуулагчаас унших боломжгүй болгодог.

mod_setenvif - орчны хувьсагчдыг тохируулахын тулд нөхцөлт илэрхийлэлүүдийг ашигладаг

BrowserMatch regex env-variable[=value] ] ... [A]

Дамжуулсаныг ашигладаг тогтмол илэрхийлэлҮйлчлүүлэгч хөтчийн Хэрэглэгч-Агент толгойн шүүлтүүр болгон. Амжилттай цохиход хувьсагчийг өгөгдсөн утгаар эхлүүлнэ. Зөвхөн хувьсагчийн нэрийг зааж өгсөн бол 1 гэсэн тоогоор эхлүүлнэ. Хэрэв хувьсагчийг өмнөх "!" - хувьсагчийг дахин тохируулсан.

BrowserMatchNoCase regex env-variable[=value] ] ... [A]

BrowserMatch-тай адил үйлдэл хийж, дамжуулсан User-Agent утга болон шүүлтүүр болгон ашигладаг ердийн илэрхийллийн хоорондох тэмдэгтийн ялгааг гаргах боломжтой.

SetEnvIf атрибут regex env-variable[=value] ] ... [A]

Захирамжаар гүйцэтгэсэн үйлдэл нь BrowserMatch-тай бүрэн төстэй боловч User-Agent-ын оронд өөр ямар ч толгойг ашиглаж болно: Remote_Host; Remote_addr; Remote_User; Хүсэлт_Арга; Хүсэлт_URI; Илтгэгч

SetEnvIfNoCase атрибут regex env-variable[=value] ] ... [A]

SetEnvIf-ийн ялгаа нь дээрх BrowserMatch-ийн BrowserMatchNoCase-тай ижил байна.

mod_unique_id - UNIQUE_ID өвөрмөц орчны хувьсагчийг үүсгэх

Хувьсагчийг серверийн IP хаяг, ажиллаж байгаа процессын тоо, цагийн тэмдэг болон нэмэлт дотоод тоолуураас санамсаргүй байдлаар үүсгэнэ.

Энэ хувьсагч нь ижил хүсэлтийг бусад аргуудыг ашиглан хянах боломжгүй үед нийлмэл баримт бичигт ашиглах зориулалттай.

mod_mime - файлыг үйлчлүүлэгч рүү шилжүүлэхдээ mime төрлийг тодорхойлоход зориулагдсан

AddCharset тэмдэгтийн өргөтгөл...

Заасан файлын өргөтгөлүүдийн хувьд үйлчлүүлэгчид хариу өгөхдөө энэ тэмдэгтийн багцыг дамжуулахыг Apache-д хэлдэг.

AddEncoding MIME-enc өргөтгөл...

Заасан файлын өргөтгөлүүдийн хувьд Apache-д хүссэн MIME кодчилолыг ашиглан файлыг шилжүүлэхийг хэлдэг.

AddHandler зохицуулагч нэрийн өргөтгөл ...

Өгөгдсөн өргөтгөлүүдтэй файлуудыг тодорхой зохицуулагч руу дамжуулах ёстойг Apache-д хэлдэг. Зохицуулагч нь өмнө нь Үйлдлийн удирдамжаар тодорхойлсон дотоод (cgi-script болон бусад) эсвэл гадаад байж болно.

AddLanguage MIME хэлний өргөтгөл ...

Хариуд илгээсэн файлын өргөтгөлүүд болон хэлний код хоорондын хамаарлыг тогтооно.

AddType MIME төрлийн өргөтгөл ...

MIME төрлийн хүснэгтийг файлын өргөтгөлүүдийн шинэ зураглал болон үйлчлүүлэгчид өгөх MIME кодоор шинэчилдэг.

DefaultLanguage MIME хэл

Хэрэв өөр аргаар үүнийг хийх боломжгүй бол үргэлж илгээгдэх хариултын хэлийг тохируулна.

ForceType MIME төрлийн

Өгөгдсөн удирдамжийг хуваарилсан лавлах доторх өгөгдсөн MIME төрлөөр хариу үйлдэл хийнэ.

RemoveEncoding өргөтгөл...

Эдгээр өргөтгөлтэй файлуудын хариулт дахь MIME кодчилолын кодыг устгана.

RemoveHandler өргөтгөл...

Apache-д эдгээр өргөтгөлтэй файлуудад зохицуулагч ажиллуулахгүй байхыг хэлдэг.

RemoveType өргөтгөл...

Үйлчлүүлэгчийн хариуд MIME төрлийг өгөгдмөл MIME төрөлд дахин тохируулна

SetHandler зохицуулагч

Энэ удирдамжийг хуваарилсан бүх файлын хувьд энэ зохицуулагчийн дуудлагыг албаддаг.

TypesConfig файлын нэр [A]

MIME төрлийн зураглалын хүснэгтийн байршлыг заана. Өгөгдмөл - conf.mime.types

mod_mime_magic - хариуд илгээсэн файлын MIME төрлийг тодорхойлох нарийн төвөгтэй дүрмийг ашигладаг модуль

MimeMagicFile файлын нэр

Вэб серверийн өгөгдсөн документ талбар эсвэл Apache-д ашиглах боломжтой бүх баримт бичигт заасан файлыг ашиглан модулийн үйлдлийг идэвхжүүлдэг.

mod_negotiation - үйлчлүүлэгч болон серверийн хооронд дамжуулагдсан өгөгдлийн төрлүүдийн талаар тохиролцох боломжийг олгодог

CacheNegotiatedDocs [A]

Завсрын прокси серверүүд болон клиент компьютер дээр тогтмол агуулгатай баримт бичгүүдийг кэшлэх боломжийг олгодог.

LanguagePriority MIME-lang... [A]

Үйлчлүүлэгчийн хүссэн баримт бичгийн хэлийг нарийн тодорхойлох, олох боломжгүй тохиолдолд үйлчлүүлэгчид хариу өгөхөд ашигласан хэлний тэргүүлэх чиглэлийг тодорхойлдог.

mod_alias - вэб серверийн лавлахуудад илүү дур зоргоороо баримт бичгийг байрлуулах боломжийг танд олгоно

Alias ​​URL-зам файлын системийн зам

Өгөгдсөн URL-ын "доор" байгаа баримт бичгүүдийг тухайн байршлын "доор" хайх ёстой гэдгийг Apache-д хэлж байна Файлын систем.

AliasMatch URL-regexp файлын системийн зам

URL-уудыг ердийн илэрхийлэлтэй харьцуулах замаар файлын систем дэх өгөгдөл хайх илүү төвөгтэй дүрмийг тодорхойлдог.

URL-замын URL-г дахин чиглүүлэх

Хүсэлтийн хариуд URL-зам болон "доорх" баримтууд нь заасан хариултын кодыг (анхдагчаар 302) буцааж өгч, үйлчлүүлэгчийг өөр URL руу дахин чиглүүлдэг. Статусыг тоогоор эсвэл бэлгэдлээр тодорхойлж болно: байнгын (301), temp (302), seeother (303), явсан (410). 410 хариултын кодын хувьд хариултын URL хаягийг орхих ёстой.

RedirectMatch URL-regexp URL

Redirect-тэй адил, дамжуулсан URL-г харьцуулахын тулд яг таарч тохирохоос илүү тодорхой ердийн илэрхийлэл ашиглана.

RedirectTemp URL-замын URL

302 хариултын кодыг ашиглан дахин чиглүүлэхтэй төстэй.

RedirectPermanent URL-замын URL

301 хариултын кодыг ашиглан дахин чиглүүлэхтэй төстэй.

ScriptAlias ​​URL-зам файлын системийн зам

Alias-тай адилхан ажилладаг боловч зорилтот директор доторх бүх файлыг ажиллуулахаар cgi-харьцуулагчийг автоматаар тохируулдаг.

ScriptMatch URL-regexp файлын системийн зам

ScriptAlias-тай төстэй бөгөөд URL-г тогтмол илэрхийлэл ашиглан шалгадаг.

mod_rewrite - сервер дээрх баримт бичгийн байршлыг хянадаг

Apache удирдамжийн товч тайлбарын цуглуулгад энэхүү цогц модулийн шийдвэрлэсэн ажлуудыг тайлбарлахад хэцүү байдаг. Үйлдлийн удирдамж болгон apache гарын авлагын "Module mod_rewrite URL Rewriting Engine" болон "URL Rewriting Guide"-ийн тусгай хэсгүүдийг ашиглах нь зүйтэй. Энэ модулийг хэрхэн ашиглах талаар сурах хамгийн хялбар арга бол үүнийг ашиглан тодорхой асуудлууд, тэдгээрийн шийдлүүдийг авч үзэх явдал юм.

Хүүхдийн процессыг бий болгох үүрэгтэй нэг үндсэн (эцэг эх) процесс байдаг бөгөөд энэ нь эргээд холболтыг сонсож, үйлчлүүлэгчийн хүсэлтийг боловсруулах үүрэгтэй. Apache нь ирж буй хүсэлтийг боловсруулахад бэлэн байгаа цөөн хэдэн ашиглагдаагүй серверийн процессуудыг нөөцөд байлгахыг үргэлж хичээдэг.Иймээс үйлчлүүлэгчид өөрсдийн хүсэлтэд үйлчлэхээс өмнө салаа болох шинэ хүүхэд процесс үүсэхийг хүлээх шаардлагагүй болно.StartServers, MinSpareServers, MaxSpareServers болон MaxClients удирдамжууд нь эцэг эхийн үйл явц нь үйлчилгээний хүсэлтэд туслах процессуудыг хэрхэн үүсгэхийг хянадаг.

Ерөнхийдөө Apache нь маш бие даасан байдаг тул ихэнх вэбсайтуудын хувьд эдгээр удирдамжийг үндсэн утгаасаа өөрчлөх шаардлагагүй байдаг.

256-аас дээш хүсэлтийг нэгэн зэрэг үзүүлэх ёстой сайтуудын хувьд MaxClients-ийг нэмэгдүүлэх, хязгаарлагдмал санах ойтой сервер дээр байрладаг сайтуудын хувьд серверийг санах ойг диск болон буцааж солихыг албадахаас зайлсхийхийн тулд MaxClients-ийг багасгах шаардлагатай байж болно). ажлын ноцтой удаашралд хүргэдэг.

Модулиудыг сонгох нь Apache вэб серверийн аюулгүй байдлыг хангах хамгийн чухал алхамуудын нэг юм. Бид нэг сайн дүрмийг баримтлах ёстой: бага байх тусмаа сайн. Бидэнд хэрэгтэй, хангадаг функцийг идэвхжүүлэхийн тулд сайн хамгаалалт, дараах модулиудыг идэвхжүүлсэн байх ёстой:

httpd_core - Apache цөм, Apache суулгалт бүрт шаардлагатай.

mod_access - Үйлчлүүлэгчийн IP хаяг эсвэл хостын нэрээс хамааран серверийн лавлах хандалтыг хянадаг.

mod_auth - Текст файл ашиглан хэрэглэгчдэд зөвшөөрөл олгоход шаардлагатай.

mod_dir - Индекс файлуудыг хайхад шаардлагатай: "index.html", "default.html" гэх мэт.

mod_log_config - Сервер рүү илгээсэн хүсэлтийг бүртгэх боломжийг олгодог. mod_mime - Сервер дээрх янз бүрийн MIME төрлийн зохион байгуулалтыг хөнгөвчлөх удирдамжийг агуулдаг.

Бусад бүх Apache модулиудыг идэвхгүй болгосон байх ёстой. Бидэнд хэрэггүй тул аюулгүйгээр унтрааж болно. Шаардлагагүй модулиудыг идэвхгүй болгосноор бид халдагчид эдгээр модулиудын аль нэгэнд илэрсэн эмзэг байдлыг ашиглахаас сэргийлдэг.

Хоёр Apache модуль (mod_autoindex ба mod_info) нь хамгийн аюултай гэдгийг тэмдэглэх нь зүйтэй. Эхний модуль нь лавлахыг автоматаар индексжүүлэх боломжийг олгодог бөгөөд анхдагчаар идэвхждэг. Энэ нь хэрхэн ажилладагийг харахын тулд, жишээ нь, http://server_name/icons/ гэж оруулна уу, хэрэв энэ директорт индекс файл байхгүй бол бүхэл бүтэн директорийн агуулгыг харуулах болно. Хоёрдахь модуль mod_info нь Apache вэб серверийн тохиргоог бүхэлд нь харуулж байгаа тул интернетээр хэзээ ч нэвтрэх боломжгүй.

Дараагийн асуулт бол модулиудыг хэрхэн эмхэтгэх вэ. Динамик аргаас (програмыг эхлүүлэх үед кодуудыг цуглуулдаг) илүү статик арга (кодуудыг гүйцэтгэх файлд суулгасан) нь хамгийн шилдэг нь юм шиг санагдаж байна. Статик аргыг сонгосноор бид mod_so гэсэн өөр модулийн хэрэгцээг арилгадаг.

Бие даасан ажил:Өгөгдлийн сангийн сервертэй ажиллах MySQL өгөгдөл. Хүснэгтүүдийг үүсгэх. Өгөгдлийн санд өгөгдөл оруулах, сэргээх, шинэчлэх.

Лабораторийн ажил No12. Apache вэб серверийг суулгаж, тохируулж байна.

Бие даасан ажил: MySQL өгөгдлийн сангийн сервертэй ажиллах.

Apache бол интернет дэх хамгийн алдартай вэб сервер бөгөөд идэвхтэй сайтуудын талаас илүү хувь нь үйлчилдэг.

Энэ нийтлэлд бид Ubuntu/Debian систем дээрх нийтлэг тохиргооны файлууд болон үндсэн Apache тохиргоог авч үзэх болно

Анхаарна уу: Apache файлууд нь тархалтаас хамааран өөр өөр байдаг тул энэ нийтлэл нь RHEL хэрэглэгчдэд тохиромжгүй.

Ubuntu/Debian дээр Apache суулгаж байна

Хэрэв Apache вэб сервер суулгаагүй бол дараах тушаалуудыг ашиглана уу.

sudo apt-get шинэчлэлт
sudo apt-get install apache2

Суулгалт амжилттай болсон эсэхийг шалгахын тулд хөтчөө серверийнхээ IP хаяг руу нээнэ үү. Apache тавтай морилно уу хуудас таны дэлгэцэн дээр гарч ирэх ёстой:

Энэ нь ажилладаг!
Энэ бол энэ серверийн өгөгдмөл вэб хуудас юм.
The вэб серверпрограм хангамж ажиллаж байгаа боловч контент нэмээгүй байна.

Apache файлын шатлал

Ubuntu болон Debian дээр Apache нь тохиргооны файлуудыг /etc/apache2 хавтсанд хадгалдаг.

cd /etc/apache2
ls -F
apache2.conf envvars magic mods-enabled/sites-available/
conf.d/ httpd.conf mods-available/ ports.conf sites-enabled/

Энэ хавтас нь хэд хэдэн энгийн хавтас агуулдаг текст файлуудболон дэд сангууд. Тэдгээрийн хамгийн чухал нь:

  • apache2.conf: үндсэн серверийн тохиргооны файл. Бараг бүх тохиргоог үүн дотор хийж болно.
  • ports.conf: Энэ файл нь виртуал хостуудын сонсох портуудыг зааж өгдөг. SSL-г тохируулахдаа энэ файлыг шалгана уу.
  • conf.d/: Энэ лавлах нь Apache тохиргооны зарим талыг хянадаг. Жишээлбэл, энэ нь ихэвчлэн SSL тохиргоо болон стандарт аюулгүй байдлын бодлогыг тодорхойлоход хэрэглэгддэг.
  • sites-available/: Энэ лавлах нь сайтад ямар контент үйлчлэхийг тодорхойлох боломжтой бүх виртуал хостуудыг хадгалдаг. Эдгээр хостууд идэвхтэй биш байна.
  • sites-enabled/: Энэ лавлах нь идэвхтэй виртуал хостуудыг тодорхойлдог. Ерөнхийдөө энэ нь сайтуудын боломжтой лавлахад тодорхойлсон файлуудын симбол холбоосуудыг агуулдаг.
  • mods-/: Эдгээр сангууд нь ашиглах боломжтой сайтууд болон сайтуудыг идэвхжүүлсэнтэй ижил аргаар ажилладаг. Тэд модулиудыг хадгалдаг.

Таны харж байгаагаар Apache-ийн тохиргоо нь үндсэн тохиргооны файлаар хязгаарлагдахгүй бөгөөд хэд хэдэн файл, директоруудад тархсан байдаг. Энэхүү тохиргооны бүтцийг шинэ файлуудаар өргөжүүлж болно.

Apache тохиргооны файл

Apache-ийн үндсэн тохиргоог /etc/apache2/apache2.conf-д хадгалдаг.

Энэ файл нь гурван үндсэн хэсгийг агуулдаг: Apache глобал тохиргоо, анхдагч серверийн тохиргоо, виртуал хостын тохиргоо.

Ubuntu болон Debian дээр файлын ихэнх хэсэг нь глобал тохиргоонд зориулагдсан бөгөөд үндсэн серверийн тохиргоо болон виртуал хостын тохиргоог Include зааврыг ашиглан файлын төгсгөлд зохицуулдаг.

Файлын төгсгөлд та олон Include тохиргоог олох болно. Тэд модулиудыг тодорхойлж, ports.conf баримт, conf.d/ лавлахаас тодорхой файлууд болон sites-enabled/ лавлахаас виртуал хостын тохиргоог нэмнэ.

Apache вэб серверийн глобал тохиргоонд анхаарлаа хандуулцгаая.

Apache глобал тохиргоо

Энэ хэсгийг судалж байна чухал параметрүүд глобал тохиргооАпачи.

Завсарлага

Анхдагчаар энэ параметрийг 300 гэж тохируулсан байна. Энэ нь сервер хүсэлт бүрийг гүйцэтгэхэд хамгийн ихдээ 300 секунд байна гэсэн үг юм. Ихэнх тохиолдолд энэ утга нь маш том бөгөөд үүнийг 30-60 секунд хүртэл багасгахыг зөвлөж байна.

Амьд байх

Хэрэв энэ тохиргоо Асаалттай байвал сервер нь үйлчлүүлэгчид нэг холболт дотор олон объектыг хүсэх боломжийг олгоно. Хэрэв параметр байгаа бол Утгагүй, дараа нь шинэ хүсэлт бүр бие даасан холболт үүсгэх болно. Энэ зан үйл нь өндөр ачаалалтай сайтыг хэт ачаалахад хүргэдэг.

MaxKeepAliveRequests

Энэ тохиргоо нь нэг холболтын хүсэлтийн дээд хэмжээг тодорхойлох боломжийг танд олгоно. Энэ нь танд Apache-ийн гүйцэтгэлийг нэмэгдүүлэх боломжийг олгоно.

0 утга нь вэб серверт нэг холболтын хүрээнд хязгааргүй тооны хүсэлтийг боловсруулах боломжийг олгоно.

KeepAliveTimeout

Энэ параметр нь хүсэлтийн хоорондох хугацааны интервалыг тогтоодог. Хэрэв үйлчлүүлэгч заасан хугацаанд өөр хүсэлт гаргаагүй бол. Вэб сервер холболтыг зогсооно. Хэрэв энэ үйлчлүүлэгч дараа нь хүсэлт гаргавал сервер шинэ холболт үүсгэнэ.

MPM тохиргоо

Apache ямар модулиудаар хөрвүүлснийг мэдэхийн тулд терминалыг нээгээд бичнэ үү:

apache2 -l
Модулиар эмхэтгэсэн:
үндсэн.c
mod_log_config.c
mod_logio.c
prefork.c
http_core.c
mod_so.c

Таны харж байгаагаар энэ тохиолдолд вэб серверийг prefork.c модуль болон apache2.conf файлаар хөрвүүлсэн байна.

Виртуал хостын тохиргоо

Өгөгдмөл виртуал хост нь сайтуудын боломжтой лавлах дахь анхдагч файлд байрладаг.

Ерөнхий виртуал хост форматыг харахын тулд энэ файлыг нээнэ үү:

sudo nano /etc/apache2/sites-available/default

ServerAdmin webmaster@localhost
DocumentRoot /var/www

Сонголтууд FollowSymLinks
AllowOverride None


Сонголтуудын индексүүд FollowSymLinks MultiViews
AllowOverride None
Захиалга зөвшөөрөх, татгалзах
бүгдээс зөвшөөрнө

. . .

Анхдагч байдлаар, виртуал хост хүсэлтийг 80 порт дээр боловсруулдаг.

Энэ нь вэб сервер тухайн порт дээрх хүсэлт бүрийг заавал боловсруулна гэсэн үг биш юм. Apache нь тохиргоог хүчингүй болгож чадна.

Дээд түвшний виртуал хостын тохиргоо

Эдгээр тохиргоог Виртуал хост хэсэгт тохируулсан бөгөөд бүх виртуал хостод хэрэгжинэ.

ServerAdmin параметр нь сервер дээр асуудал гарсан тохиолдолд ашиглах холбоо барих имэйл хаягийг зааж өгдөг. Энэ хаягийг алдааны хуудсанд буулгаж болно. Үүнийг хийхийн тулд ServerSignature параметрийг (/etc/apache2/conf.d/security файлд) Email болгож тохируулах ёстой.

ServerName заавар нь серверийн домэйн нэр эсвэл IP хаягийг зааж өгдөг. Энэ нь ServerName утгатай тохирч байвал өгөгдмөл тохиргоог хүчингүй болгож болох виртуал хостын тохиргоо юм.

ServerAlias ​​параметр нь сайтын нэрсийг нэмэх боломжийг олгодог - өөр нэр, ижил агуулга руу хөтлөх зам. Жишээлбэл, домэйн нэрийг ихэвчлэн www гэж тохируулдаг.

DocumentRoot нь вэб сервер энэ виртуал хостын агуулгыг хадгалдаг лавлахыг заадаг. Ubuntu дээр анхдагч нь /var/www.

Лавлах тохиргоо

Виртуал хостын тохиргоо нь тусдаа файлын системийн лавлах боловсруулалтыг тохируулах тусгай хэсэгтэй. Эдгээр тохиргоог мөн дарж болно.

Нэгдүгээрт, виртуал хост нь / лавлах (эх лавлах) дүрмийн багцыг санал болгодог. Энэ хэсэг нь файлын систем дээр үйлчилдэг бүх файлуудтай холбоотой виртуал хостын үндсэн тохиргоог өгөх болно.

Анхдагч байдлаар Ubuntu нь файлын системд ямар ч хязгаарлалт тавьдаггүй. Apache нь хэд хэдэн стандарт хандалтын хязгаарлалтыг нэмэхийг зөвлөж байна, жишээлбэл:


Сонголтууд FollowSymLinks
AllowOverride None
Захиалга өгөхөөс татгалзах, зөвшөөрөх
Бүгдээс татгалз

Энэ нь дараагийн лавлах тодорхойлолтуудад өөрөөр заагаагүй бол бүх контент руу нэвтрэх эрхийг хаах болно.

AllowOverride параметр нь .htaccess файлуудыг ашиглан тохиргоог хүчингүй болгох боломжийг олгодог. Тохиргоог хүчингүй болгохын тулд .htaccess файл нь агуулгын санд байх ёстой. Анхдагч байдлаар энэ функц идэвхгүй байна.

Alias ​​болон ScriptAlias ​​тохиргоо

Заримдаа Alias ​​болон ScriptAlias ​​параметрүүд лавлах хэсгийн өмнө гарч ирдэг.

Alias ​​удирдамж нь DocumentRoot-ээс гадуурх лавлахуудыг үйлчилгээ үзүүлж буй контентод нэмэх боломжийг олгодог.

ScriptAlias ​​нь үүнтэй төстэй байдлаар ажилладаг боловч гүйцэтгэгдэх боломжтой файлуудтай директоруудын замыг агуулдаг.

Жишээлбэл, example.com гэх мэт виртуал хост дахь ийм мөр нь example.com/content/ хүсэлт гаргах үед /path/to/content/ лавлах дахь контентод хандах боломжийг олгоно.

Нэр /агуулга/ /зам/хүрэх/агуулгын/

Нэмэлт лавлах хандалтыг нээхдээ тэдгээрт хязгаарлагдмал давуу эрх олгох хэрэгтэй гэдгийг санаарай.

Apache дахь сайтууд болон модулиудыг идэвхжүүлэх

Виртуал хост файлыг үүсгэсний дараа та үүнийг идэвхжүүлж болно. Үүнийг хийхийн тулд та сайтуудыг идэвхжүүлсэн директор доторх файл руу симбол холбоос үүсгэх хэрэгтэй.

sudo a2ensite virtualhostfile

Таны сайтыг идэвхжүүлсний дараа вэб серверт тохиргоог дахин унших боломжийг олгохын тулд Apache-г дахин эхлүүлнэ үү:

sudo үйлчилгээг apache2 дахин ачаална уу

Виртуал хостыг идэвхгүй болгохын тулд та идэвхжүүлсэн сайтуудаас симбол холбоосыг устгах хэрэгтэй:

sudo a2dissite virtualhostfile

Үүний дараа та вэб серверийг дахин эхлүүлэх хэрэгтэй:

sudo үйлчилгээг apache2 дахин ачаална уу

Та дараах тушаалуудыг ашиглан Apache модулийг идэвхжүүлж, идэвхгүй болгож болно (тус тусад нь):

a2enmod
a2dismod

Эдгээр нь өмнө дурдсан a2ensite болон a2dissite командуудтай адил ажилладаг. Модулийг идэвхжүүлж, идэвхгүй болгосны дараа та вэб серверийг дахин эхлүүлэх хэрэгтэй.

Дүгнэлт

Энэ нийтлэлд зөвхөн хамаарна үндсэн тохиргоо Apache вэб серверийн файлууд. Apache-ийн функцүүдийн багцыг модулиудыг ашиглан ихээхэн өргөжүүлж болно.

Хэрэв чамд хэрэгтэй бол Нэмэлт мэдээлэлвэб серверийн талаар холбоо барина уу

Apache бол хамгийн алдартай үнэгүй вэб сервер юм. 2016 оны байдлаар энэ нь нийт интернет сайтуудын 33%-д ашиглагдаж байгаа бөгөөд энэ нь ойролцоогоор 304 тэрбум сайт юм. Энэхүү вэб сервер нь 1995 онд алдартай NCSA серверийг орлохоор бүтээгдсэн бөгөөд түүний олон асуудлыг зассан. Тэрээр NCSA-ын алдааг засаж байсан тул түүний нэр хэсэгхэн байсан гэсэн цуу яриа байдаг. Одоо энэ нь Windows, Linux болон MacOS-ийг дэмждэг, хангалттай уян хатан байдал, тохируулга, үйл ажиллагааг хангадаг хөндлөн платформ програм юм. Хөтөлбөр нь модульчлагдсан бүтэцтэй бөгөөд энэ нь модулиудыг ашиглан функцийг бараг хязгааргүй өргөжүүлэх боломжийг олгодог.

Та Linux дээр Apache-г хэд хэдэн командыг ашиглан суулгаж болно, гэхдээ програм нь өөрчлөх боломжтой маш олон тооны тохиргоо, түүнчлэн идэвхжүүлсэн үед илүү сайн ажиллах модулиудыг өгдөг. Энэ нийтлэлд Apache-г суулгах, тохируулах талаар авч үзэх болно, бид Ubuntu-г үндсэн систем болгон ашиглах болно, гэхдээ та эдгээр алхмуудыг бусад түгээлт дээр давтаж болно. Бид зөвхөн програмыг өөрөө суулгахаас гадна түүнийг хэрхэн тохируулах, apache виртуал хостуудыг тохируулах, мөн хамгийн хэрэгтэй модулиудыг авч үзэх болно.

Асаалттай Энэ мөч, хамгийн шинэ хувилбарпрограмууд 2.4; тиймээс Apache 2.4-ийг тохируулах талаар авч үзэх болно. Би аль хэдийн хэлсэнчлэн, онд Линукс програмшууд утгаараа хэд хэдэн тушаалаар суулгадаг. Ubuntu дээр суулгахын тулд эхлээд системийг хамгийн сүүлийн хувилбар руу шинэчилнэ үү.

sudo apt шинэчлэлт
$ sudo apt шинэчлэх

Дараа нь apache2-г суулгана уу:

sudo apt install apache2

Бусад түгээлтийн хувьд програмын багцыг this эсвэл httpd гэж нэрлэдэг бөгөөд үүнийг суулгах нь танд ямар ч хүндрэл учруулахгүй.

Суулгаж дууссаны дараа компьютерийг асаасны дараа гараар эхлүүлэхгүйн тулд вэб серверийг эхлүүлэх хэрэгтэй.

sudo systemctl apache2-г идэвхжүүлнэ

Apache тохиргоо

Apache тохиргоог нэг файлд хадгалдаг байсан үе өнгөрсөн. Гэхдээ энэ нь зөв: бүх зүйл өөрийн санд хуваарилагдсан үед тохиргооны файлуудыг удирдах нь илүү хялбар болно.

Бүх тохиргоонууд /etc/apache/ хавтсанд байна:

  • Файл /etc/apache2/apache2.confүндсэн тохиргоог хариуцдаг
  • /etc/apache2/conf-available/* - нэмэлт тохиргоовэб сервер
  • /etc/apache2/mods-available/*- модулийн тохиргоо
  • /etc/apache2/sites-available/*- виртуал хостын тохиргоо
  • /etc/apache2/ports.conf- apache ажилладаг портууд
  • /etc/apache2/envvars

Таны анзаарснаар conf, mods болон site гэсэн хоёр хавтас байдаг. Эдгээр нь боломжтой бөгөөд идэвхжсэн. Та модуль эсвэл хостыг идэвхжүүлэх үед боломжтой хавтаснаас идэвхжүүлэх хавтас руу симбол холбоос үүсгэгдэнэ. Тиймээс боломжтой хавтаснуудад тохиргоо хийх нь дээр. Ерөнхийдөө та эдгээр хавтасгүйгээр хийж болно, бүгдийг нь авч, бүгдийг нэг файлд хийнэ, тэгвэл бүх зүйл ажиллах болно, гэхдээ одоо хэн ч үүнийг хийхгүй байна.

Эхлээд харцгаая үндсэн файлтохиргоо:

vi /eta/apache2/apache2.conf

Завсарлага- сервер тасалдсан өгөгдөл дамжуулах эсвэл хүлээн авах ажиллагааг хэр удаан үргэлжлүүлэхийг заана. 160 секунд хангалттай байх болно.

Амьд байлга- маш хэрэгтэй параметр бөгөөд энэ нь зөвхөн нэг холболтоор бус хэд хэдэн файл дамжуулах боломжийг олгодог html хуудас, гэхдээ бас зураг болон css файлууд.

MaxKeepAliveRequests 100- нэг холболтын хүсэлтийн хамгийн их тоо, илүү их байх тусмаа сайн.

KeepAliveTimeout 5- Холболтын завсарлага, ихэвчлэн хуудсыг ачаалахад 5-10 секунд хангалттай байдаг тул та дахин тохируулах шаардлагагүй, гэхдээ бүх өгөгдлийг ачаалахаас өмнө холболтыг таслах шаардлагагүй.

Хэрэглэгч, бүлэг- програмыг нэрийн өмнөөс ажиллуулах хэрэглэгч болон бүлэг.

Хост нэр хайх- IP хаягийн оронд бүртгэлд бичих домэйн нэрс, ажлыг хурдасгахын тулд үүнийг идэвхгүй болгох нь дээр.

Бүртгэлийн түвшин- алдааны бүртгэлийн түвшин. Анхдагч байдлаар, warn-г ашигладаг боловч бүртгэлийг удаан бөглөхийн тулд алдааг идэвхжүүлнэ үү

оруулах- бүх заавар нь дээр дурдсан тохиргооны файлуудыг холбох үүрэгтэй.

Лавлах удирдамж нь файлын систем дэх тодорхой директор руу нэвтрэх эрхийг тохируулах үүрэгтэй. Энд байгаа синтакс нь:


Параметрийн утга

Дараах үндсэн сонголтуудыг эндээс авах боломжтой.

AllowOverride- .htaccess файлуудыг энэ сангаас унших эсэхийг заана; эдгээр нь ижил тохиргооны файлууд бөгөөд ижил синтакстай. All - бүгдийг зөвшөөрөх, None - эдгээр файлуудыг бүү унш.

DocumentRoot- Хэрэглэгчдэд харуулахын тулд ямар фолдероос баримт бичгийг авахыг тохируулна

Сонголтууд- энэ фолдерт ямар вэб серверийн функцийг зөвшөөрөх ёстойг заана. Жишээлбэл, All - бүх зүйлийг зөвшөөрөх, FollowSymLinks - симбол холбоосыг дагах, Indexes - индекс файл байхгүй бол директорийн агуулгыг харуулах.

шаардах- энэ лавлахад ямар хэрэглэгчид хандахыг тохируулна. Бүгдийг үгүйсгэхийг шаардах - хүн бүрийг үгүйсгэх, Бүгдийг зөвшөөрөхийг шаардах - бүгдийг зөвшөөрөх. Та хэрэглэгчийг тодорхой зааж өгөхийн тулд бүхний оронд хэрэглэгч эсвэл бүлгийн удирдамжийг ашиглаж болно.

Захиалга- директор руу хандах хандалтыг хянах боломжийг танд олгоно. Хоёр утгыг хүлээн зөвшөөрнө: Зөвшөөрөх, Үгүйсгэх - заагдсанаас бусад бүх хүмүүст зөвшөөрөх эсвэл Үгүйсгэх, Зөвшөөрөх - зааснаас бусад бүх хүмүүст татгалзах..ru.

Эдгээр бүх удирдамжийг энд ашиглаагүй, учир нь бид анхдагч утгуудад сэтгэл хангалуун байгаа боловч .htaccess файлд тэдгээр нь маш хэрэгтэй байж болно.

Бидэнд /etc/apache2/ports.conf файл үлдсэн:

Энэ нь програмд ​​ямар порт дээр ажиллах ёстойг зааж өгдөг Listen гэсэн зөвхөн нэг удирдамжийг агуулдаг.

Сүүлийн файл нь /etc/apache2/envvars, та үүнийг ашиглах боломжгүй, энэ нь бусад тохиргооны файлуудад ашиглагдах хувьсагчдыг агуулдаг.

htaccess-ээр Apache серверийг тохируулж байна

.htaccess файлууд нь Ubuntu вэб серверээ тодорхой директор дотор ажиллахаар тохируулах боломжийг танд олгоно. Энэ файлд заасан бүх зааврыг шошгонд ороосон мэт гүйцэтгэнэ хэрэв тэд үндсэн файлд байсан бол.

Сервер .htaccess-аас зааврыг уншихын тулд үндсэн эсвэл виртуал хост файл дахь энэ фолдерын тохиргоонд агуулагдах ёсгүй гэдгийг анхаарах нь чухал юм. AllowOverride NoneТанд хэрэгтэй бүх тохиргоог ажиллуулахын тулд Бүгдийг хүчингүй болгохыг зөвшөөрөх.

Үгүй бол модулиудыг идэвхжүүлэхээс эхлээд фолдерт хандах хандалтыг өөрчлөх хүртэл Apache серверийн дурын тохиргоог энд хийж болно. Бид бүх параметрүүдийг аль хэдийн авч үзсэн тул хэд хэдэн жишээ хэлье:

Захиалга өгөхөөс татгалзах, зөвшөөрөх
Бүгдийг үгүйсгэ

Тохируулгын фолдеруудыг ашиглахад чухал ач холбогдолтой энэ фолдерт хандах хандалтыг хүн бүрээс хориглоно. Ихэнхдээ .htaccess нь mod_rewrite модультай ажиллахад ашиглагддаг бөгөөд энэ нь танд хүсэлтийг шууд өөрчлөх боломжийг олгодог.

RewriteEngine асаалттай
RewriteRule ^ бүтээгдэхүүн/([^/\.]+)/?$ product.php?id=$1 [L]

Гэхдээ энэ бол маш өргөн хүрээний сэдэв бөгөөд энэ нийтлэлийн хамрах хүрээнээс гадуур юм.

Apache модулиудыг тохируулах

Миний хэлсэнчлэн Апачи - модульчлагдсан програм, түүний функцийг модулиудыг ашиглан өргөжүүлж болно. Бүх боломжтой дуудагч модулиуд болон модулийн тохиргооны файлууд /etc/apache/mods-available хавтсанд байрладаг. Мөн /etc/apache/mods-enable-д идэвхжсэн.

Гэхдээ та эдгээр фолдеруудын агуулгыг шинжлэх шаардлагагүй. Модуль нэмэх замаар Apache 2.4-ийг тохируулах нь тусгай тушаалуудыг ашиглан хийгддэг. Та бүх ажиллаж байгаа модулиудыг дараах тушаалаар харж болно.

Та модулийг дараах тушаалаар идэвхжүүлж болно.

sudo a2enmod module_name

Мөн идэвхгүй болгох:

sudo a2dismod module_name

Модулиудыг идэвхжүүлж, идэвхгүй болгосны дараа та apache-г дахин эхлүүлэх хэрэгтэй:

sudo systemctl apache2-г дахин эхлүүлнэ

Эдгээр командуудын аль нэгийг гүйцэтгэх үед өргөтгөлийн ачаалал бүхий модулийн файлын симбол холбоосыг mods-available директорт үүсгэж эсвэл устгадаг. Та энэ файлын агуулгыг харж болно, зөвхөн нэг мөр байна. Жишээлбэл:

vi /etc/apache2/mods-available/deflate.load

Энэ нь apache2.conf файлд энэ мөрийг нэмэхэд л модулийг идэвхжүүлж болно гэсэн үг. Гэхдээ төөрөгдөлд орохгүйн тулд үүнийг л хийдэг заншилтай.

Модулийн тохиргоонууд нь нэг хавтсанд, зөвхөн ачааллын оронд .conf өргөтгөлтэй файлд байрладаг. Жишээлбэл, шахалтын шахалтын ижил модулийн тохиргоог харцгаая.

vi /etc/apache2/mods-available/deflate.conf

conf-боломжтой хавтсанд байгаа файлууд нь ижил модулиуд бөгөөд тэдгээрийг зөвхөн apache-ээс тусад нь суулгадаг бөгөөд эдгээр нь php модулийг эсвэл бусад програмчлалын хэлийг идэвхжүүлэх тохиргооны файлууд байж болно. Энд бүх зүйл яг адилхан ажилладаг, зөвхөн эдгээр модулиудыг идэвхжүүлэх, идэвхгүй болгох командууд нь арай өөр байна:

a2enconf модулийн нэр

a2disconf модулийн нэр

Таны харж байгаагаар модулиудыг идэвхжүүлэх нь маш энгийн зүйл юм. Хэд хэдэн шаардлагатай боловч өгөгдмөл модулиудыг идэвхжүүлээгүй байна:

sudo a2enmod хугацаа дуусна
$ sudo a2enmod толгой
$ sudo a2enmod дахин бичих
$ sudo a2enmod ssl

Хугацаа дуусах ба толгойн модулиуд нь сервер дээрх ачааллыг бууруулдаг. Сүүлчийн хүсэлтээс хойш баримт бичиг өөрчлөгдөөгүй бол өөрчлөгдөөгүй толгой хэсгийг буцаана. Хугацаа дуусах модуль нь хөтөч хүлээн авсан баримтыг кэш хийх цагийг тохируулах боломжийг танд олгоно. Дахин бичих нь хүссэн хаягаа шууд өөрчлөх боломжийг олгодог. Энэ нь CNC холбоос үүсгэхэд маш их хэрэгтэй. Мөн сүүлийнх нь SSL шифрлэлтийн дэмжлэгийг идэвхжүүлдэг. Тохиргоог хийж дууссаны дараа apache2-г дахин эхлүүлэхээ бүү мартаарай.

Apache виртуал хостуудыг тохируулах

Зөвхөн нэг вэбсайтыг нэг физик машин дээр байршуулах боломжтой бол энэ нь тийм ч тохиромжтой биш байх болно. Apache нь нэг компьютер дээр хэдэн зуун сайтыг дэмжиж, тус бүрдээ зөв контентоор үйлчлэх боломжтой. Үүний тулд виртуал хостуудыг ашигладаг. Сервер нь хүсэлт аль домэйнд ирж байгааг тодорхойлж, энэ домэйны фолдероос шаардлагатай контентоор үйлчилдэг.

Apache хостуудын тохиргоо нь /etc/apache2/hosts-available/ хавтсанд байрладаг. Шинэ хост үүсгэхийн тулд ямар ч нэртэй файл үүсгээд (хотын нэрээр төгсөх нь дээр) шаардлагатай мэдээллээр бөглөнө үү. Та эдгээр бүх параметрүүдийг зааварт оруулах хэрэгтэй VirtualHost.Энд хэлэлцсэн параметрүүдээс гадна дараахь зүйлийг ашиглана.

  • Серверийн нэр- үндсэн домэйн нэр
  • ServerAlias- сайтад хандах боломжтой нэмэлт нэр
  • Серверийн админ - Имэйладминистратор
  • DocumentRoot- энэ домэйны баримт бичиг бүхий хавтас

Жишээлбэл:

vi /etc/apache2/sites-available/test.site.conf