Apache

Начальная установка и настройка

Правка файла httpd.conf

  1. Для загрузки модуля mod_rewrite найдите и раскомментируйте (уберите в начале строки символ «#») данную строку:LoadModule rewrite_module modules/mod_rewrite.so
  2. Для загрузки PHP интерпретатора, в конец блока загрузки модулей необходимо добавить строку:LoadModule php5_module «C:/php/php5apache2_2.dll»
  3. Определите каталог содержащий конфигурационный файл PHP, добавив ниже следующую строку:PHPIniDir «C:/php»
  4. Найдите и раскомментируйте строку:ServerName www.example.com:80
    Отредактируйте ее следующим образом установив изначальное имя сервера:ServerName localhost:80
  5. Найдите строку:DocumentRoot «c:/Apache2/htdocs»
    Назначьте корневую директорию управления сайтами (немного позже мы ее создадим):DocumentRoot «C:/apache»
  6. Найдите данный блок:<Directory />
       Options FollowSymLinks
       AllowOverride None
       Order deny,allow
       Deny from all
    </Directory>
    И замените его на нижеследующий:<Directory />
       Options Includes Indexes FollowSymLinks
       AllowOverride All
       Allow from all
    </Directory>
  7. Удалите или закомментируйте первоначальный блок управления директориями (он нам не понадобится), который без комментариев выглядит примерно так:<Directory «c:/Apache2/htdocs»>
       Options Indexes FollowSymLinks
       AllowOverride None
       Order allow,deny
       Allow from all
    </Directory>
  8. Найдите блок:<IfModule dir_module>
       DirectoryIndex index.html
    </IfModule>
    Замените его на:<IfModule dir_module>
       DirectoryIndex index.html index.htm index.shtml index.php
    </IfModule>
  9. Найдите строку:ErrorLog «logs/error.log»
    Замените на нижеследующую (в этом случае просматривать глобальный файл ошибок сервера будет удобнее):ErrorLog «C:/apache/error.log»
  10. Найдите строку:CustomLog «logs/access.log» common
    Замените на:CustomLog «C:/apache/access.log» common
  11. Для работы SSI (включения на стороне сервера) следующие строки, находящийся в блоке <IfModule mime_module>, необходимо найти и раскомментировать:AddType text/html .shtml
    AddOutputFilter INCLUDES .shtml
  12. Добавьте ниже, в тот же блок <IfModule mime_module>, две строки:AddType application/x-httpd-php .php
    AddType application/x-httpd-php-source .phps
  13. И, наконец, найдите и раскомментируйте строки:Include conf/extra/httpd-mpm.conf
    Include conf/extra/httpd-autoindex.conf
    Include conf/extra/httpd-vhosts.conf
    Include conf/extra/httpd-manual.conf
    Include conf/extra/httpd-default.conf

Сохраните изменения и закройте файл «httpd.conf»NameVirtualHost *:80
<VirtualHost *:80>
   DocumentRoot «C:/apache/localhost/www»
   ServerName localhost
   ErrorLog «C:/apache/localhost/error.log»
   CustomLog «C:/apache/localhost/access.log» common
</VirtualHost>Сохраните изменения и закройте файл «httpd-vhosts.conf»

Установите и настройте PHP

Несмотря на высокую конкуренцию, PHP остаётся самым распространённым серверным языком программирования с продвинутыми объектно-ориентированными возможностями

4.1. Загрузите архив с последней версией PHP для 64–разрядной Windows: php-7.3.2-Win32-VC15-x64.zip. На всякий случай, проверьте на официальном сайте PHP нет ли версии новее: https://windows.php.net/download/.

Обратите внимание, что вам нужна версия Thread Safe, то есть работающая в нескольких потоках, и она должна точно соответствовать версии Visual Studio, с помощью которой был скомпилирован Apache, например — VC15. Разрядность тоже должна быть как у Apache, 64-битные версии обозначаются x64, а 32-битные — x86

4.2. Распакуйте архив и перенесите все его содержимое в папку D:\web\php.

4.3. Откройте файл D:\web\apache\conf\httpd.conf. Найдите секцию файла со множеством строк LoadModule и в самый ее конец добавьте две строки, первая — , и вторая — .

Отдельная секция настроечного файла Apache посвящена модулям, которые расширяют возможности сервера. Строки можно было бы указать где угодно, но принято указывать их в этой секции. Здесь мы дополняем функциональность сервера библиотекой PHP и указываем расширения файлов c этим языком — .php. Существуют еще сотни популярных и полезных модулей, серьезно улучшающих работу Apache.

4.4. В том же файле httpd.conf сразу после секции LoadModule добавьте строку .

Директивой PHPIniDir задается адрес файла php.ini. Этот файл содержит множество важных настроек самого PHP: допустимые размеры файлов для обработки, ограничения времени работы скриптов, параметры пользовательских сессий и многое другое.

4.5. В том же файле httpd.conf найдите и измените значение на . Сохраните файл httpd.conf с перезаписью.

4.6. Перезапустите Apache, откройте браузер и перейдите по адресу http://localhost/ или http://127.0.0.1/ — вы должны увидеть сведения о конфигурации PHP и Apache.

Это значит, что вы все сделали правильно.

4.7. Откройте файл D:\web\php\php.ini-development и сохраните его под именем D:\web\php\php.ini.

Изначально php.ini отсутствует из соображений безопасности, владелец сервера должен самостоятельно его создать и проверить.

4.8. В файле D:\web\php\php.ini найдите, раскомментируйте и отредактируйте следующие параметры: параметр , параметр , параметр , параметр , параметр (укажите свой часовой пояс в соответствии с документацией php.net/manual/ru/timezones.php). Сохраните php.ini и перезапустите Apache.

В то время как PHP работает как расширение Apache, у самого PHP также есть множество важных и полезных расширений в виде библиотек, многие из которых идут в комплекте с PHP; прежде чем подключать эти расширения необходимо указать их адрес в параметре extension_dir. По ходу работы большинства популярных скриптов создаются временные файлы, необходимо указать папку для этих файлов в параметре sys_temp_dir. Одно из самых востребованных расширений — mysqli, стандартная библиотека для PHP, которая позволяет подключаться к базам данных под управлением MySQL. При работе с базами нередко нужно разбивать или собирать строки из нескольких мегабайт, для чего будет полезна библиотека mbstring. Также не стоит забывать про свой часовой пояс — он указывается вручную. С этим минимальным набором вы можете выполнять скрипты на PHP, хотя локальной базы данных у вас ещё нет.

4.0. Обновить PHP легко. Переименуйте папку D:\web\php в php_old, распакуйте новую версию PHP в D:\web\php, перенесите php.ini из папки php_old в папку php. Если все работает — удалите php_old.

Конфигурация и безопасность

Для того чтобы понять, что такое Apache в свете безопасности, нужно рассмотреть его конфигурацию. Большая часть конфигурации выполняется в файле apache2.conf и httpd.conf, в зависимости от системы, в которой ПО работает. Любое изменение этого файла требует перезапуска сервера или повторного принудительного чтения.

Лицензия на программное обеспечение, по которой распространяется базовое ПО «Апач», является отличительной частью истории Apache HTTP Server и сообщества открытого исходного кода. Лицензия позволяет распространять продукты с открытым и закрытым исходным кодом.

Фонд свободного ПО не считает таковым Apache License, совместимого с версией 2 GNU General Public License (GPL), в которой программное обеспечение лицензируется и не интегрировано с ПО. Это нужно учитывать, перед тем как настроить веб-сервер Apache, распространяемого под лицензией GPL. Тем не менее версия 3 GPL включает в себя положение, которое позволяет ему быть совместимым с лицензиями, имеющими оговорки о патентном возмещении.

Большинство обнаруженных и устраненных уязвимостей безопасности могут быть использованы только локальными пользователями, а не удаленно. Однако некоторые все же запускаются удаленно в определенных ситуациях. Или если они используются злонамеренными локальными пользователями для нарушения соглашений о совместном хостинге, использующего PHP в качестве модуля свободного веб-сервера Apache.

Проверяем доступность страницы с других компьютеров и настраиваем брандмауэр

Снова пробуем открыть знакомую нам страницу http://192.168.0.189 (у вас цифры другие) но уже с любого другого компьютера в локальной сети.  

Если вместо знакомой страницы вы увидели «Не удается получить доступ к сайту» или аналогичное сообщение — выполним настроку брандмауэра. Для этого возвращаемся на тот компьютер, где установлен Apache, заходим в «Панель управления» — «Система и безопасность» — «Брандмауэр Windows» и в левой части экрана щелкаем на «Дополнительные параметры

Кликаем на раздел «Правила для входящих подключений», затем в правой части окна «Создать правило»

Выбираем «Для порта» — Далее, Протокол TCP, Опреленные локальные порты: 80, Далее 

Устанавливаем «Разрешить подключение» — Далее, 

Ставим все три галочки

Указываем произвольное имя, например «Веб сервер 80 порт для 1С». Готово.

Снова идем на другие компьютеры и убеждаемся, что теперь по IP адресу http://192.168.0.189 броузер показывает знакомую нам страницу It Works

Управление URL и другие функции модуля mod_rewrite

Данный модуль – удобный инструмент для фильтрации и модификации URL. Его можно использовать для скрытия некоторых частей адреса сайта, например, расширения файла «.php» (актуально для сайтов, созданных на языке PHP). Для управления работой модуля вводят директивы (правила) в .htaccess-файлах.

Например, для замены расширения файлов «.aspx» на «.php» необходимо ввести следующее:

RewriteEngine On

RewriteBase /

RewriteRule ^(.*)\.php$ $1.aspx {QSA,L]

Как видно, для создания правил используются регулярные выражения (например, символ «^» характеризует начало строки, запись «(.*)» — любое количество любых символов). Представленное выше правило позволяет скрыть факт того, что сайт был создан с использованием технологии ASP.NET. Фактическая смена имени файла в файловой системе не выполняется. Apache интерпретирует запись в режиме реального времени, выполняет обратную замену «.php» на «.aspx» и вызывает нужный файл скрипта.

Прочие возможности модуля:

  • Первичная фильтрация для повышения безопасности;
  • Реализация алгоритма кэширования данных в файловой системе путем перенаправления запросов;
  • Установка ограничений на скачивание определенных файлов.

Web Site Content ¶

Web site content can take many different forms, but may be broadly
divided into static and dynamic content.

Static content is things like HTML files, image files, CSS files,
and other files that reside in the filesystem. The directive specifies where in your
filesystem you should place these files. This directive is either set
globally, or per virtual host. Look in your configuration file(s) to
determine how this is set for your server.

Typically, a document called will be served
when a directory is requested without a file name being specified. For
example, if is set to
and a request is made for
, the file
will be served to the
client.

Dynamic content is anything that is generated at request
time, and may change from one request to another. There are numerous
ways that dynamic content may be generated. Various handlers are available to generate content. CGI programs may be written to generate
content for your site.

СМИ ПОН

Подлинная история советского «ограбления века». Дело братьев Калачян

В 1977 году в Армении произошло крупнейшее в истории СССР ограбление Госбанка.

Об ограблении денежных хранилищ Госбанка не думали даже матёрые уголовники. И тем не менее в 1977 году случилось немыслимое — злоумышленники покусились на святая святых советской финансовой системы.

Операция «Архив». Как Советский Союз окончательно избавился от Гитлера

На рубеже 1980–1990-х годов, когда в Восточной Европе произошло обрушение просоветских режимов, а Западная Германия поглотила Восточную, произошло резкое усиление позиций неонацистов.

На фоне ниспровержения социализма крайне правые силы пытались добиться хотя бы частичной реабилитации нацизма.

Непобедимая страна. 15 интересных фактов о Советском Союзе

30 декабря 1922 года на Первом Всесоюзном съезде Советов было утверждено образование Союза Советских Социалистических республик. Советский Союз занимал территорию площадью 22 400 000 квадратных километров, являясь самой большой страной на планете, имел самую протяжённую границу в мире (свыше 60 000 километров) и граничил с 14 государствами.

Великая душа. Жизнь и принципы Махатмы Ганди

Мохандас Карамчанд Ганди родился 2 октября 1869 года в индийском городе Порбандар в состоятельной семье из варны вайшьев. Маленький Мохандас, или Мохан, меньше всего напоминал философа, мыслителя и политика, идеи которого перевернут мир.

Продукт гуманизма. Как сердобольный дантист придумал «электрический стул»

6 августа 1890 года человечество вписало новую страницу в свою историю. Научно-технический прогресс добрался и до такого специфического рода деятельности, как исполнение смертных приговоров. В Соединённых Штатах Америки была проведена первая смертная казнь на «электрическом стуле».

Придуманный из гуманных соображений «электрический стул» оказался одним из самых жестоких способов смертной казни.

Фото АН-64 Апач

Израильский AH-64D «Сараф»

Упавший в Ираке «Апач» (позднее отремонтирован)

Похожее

Ми-28Н Ночной охотник Вооружение. Скорость. Двигатель. Размеры. История

Вертолет Ми-24 Скорость. Двигатель. Размеры. История. Дальность полета

Ка-52 Аллигатор Вооружение. Скорость. Двигатель. Размеры. История

Вертолет Ми-8 Двигатели. Размеры. Вес. История. Дальность полета

Вертолет AH-64 Апач Скорость. Двигатель. Размеры. История. Дальность полета

Ка-50 Чёрная акула Вооружение. Скорость. Двигатель. Размеры. История

Вертолет Ми-26 Двигатели. Размеры. Грузоподъемность. История. Дальность полета

Вертолет CH-47 Чинук Скорость. Двигатель. Размеры. История. Дальность полета

Вертолет Ми-2 Скорость. Двигатель. Размеры. История. Дальность полета

Вертолет Ми-6 Грузоподъемность. Двигатель. Размеры. История. Дальность полета

Вертолет Белл UH-1 Ирокез Вооружение. Скорость. Размеры. Двигатель

Вертолет Ми-12 Двигатели. Размеры. Вес. История. Грузоподъемность

Вертолет Ка-27 Скорость. Двигатель. Размеры. История. Дальность полета

Вертолет Ка-62 Двигатель. Размеры. Вес. История. Дальность полета

Вертолет Ми-4 Двигатель. Размеры. Вес. История. Дальность полета

Вертолет Ка-26 Двигатель. Размеры. Вес. История. Дальность полета

Вертолет Ка-226 Двигатели. Размеры. История. Вес. Дальность полета

Вертолет Ми-38 Двигатель. Размеры. Вес. История. Дальность полета

Вертолет Ми-34 Двигатели. Размеры. Вес. История. Дальность полета

Вертолет Ми-14 Скорость. Двигатель. Размеры. История. Дальность полета

Вертолет Як-24 Двигатели. Размеры. Вес. История. Грузоподъемность

Вертолет Ка-29 Скорость. Двигатель. Размеры. История. Дальность полета

Вертолет Ми-1 Двигатель. Размеры. Вес. История. Дальность полета

Вертолет Ка-60 Касатка Скорость. Двигатель. Размеры. История. Дальность полета

Вертолет Ми-10 Двигатели. Размеры. Вес. История. Грузоподъемность

Вертолет В-7 Скорость. Двигатель. Размеры. История. Дальность полета

Вертолет AH-1 Кобра Скорость. Двигатель. Размеры. История. Дальность полета

Вертолет Ка-25 Скорость. Двигатель. Размеры. История. Дальность полета

Вертолет Ка-118 Двигатель. Размеры. История. Грузоподъемность

Вертолет Ка-10 Двигатель. Размеры. История. Вес. Дальность полета

Вертолет Ка-8 Иркутянин Скорость. Двигатель. Размеры. История. Дальность полета

Вертолет Ка-15 Двигатель. Размеры. История. Дальность полета. Статический потолок

Вертолет Ка-22 Двигатели. Размеры. Вес. История. Дальность полета

Вертолет Ка-126 Двигатель. Размеры. История. Грузоподъемность

Вертолет Ка-37 Двигатель. Размеры. История. Дальность полета

Вертолет Ка-31 Двигатель. Размеры. История. Дальность полета. Статический потолок

Вертолет Ка-18 Двигатель. Размеры. История. Вес. Дальность полета

You have no rights to post comments

Как работает веб-сервер Apache?

Хоть Apache и называется веб-сервер, но в реальном положении вещей он является не сервером, а программой, которая запускается на сервере. Его задача установить соединение между сервером и браузером посетителей (Firefox, Google Chrome, Safari и др.) при доставке файлов туда и обратно между ними (клиент-серверная структура). Apache – это кроссплатформенное программное обеспечение, что значит оно хорошо работает как на Unix, так и на Windows серверах.

Когда посетитель хочет загрузить страницу вашего сайта, например, домашнюю страницу или страницу «О нас», его браузер отправляет запрос на ваш сервер и Apache возвращает ответ со всеми запрошенными файлами (текст, изображение и так далее). Сервер и клиент взаимодействуют по протоколу HTTP и Apache ответственен за гладкое и безопасное соединение между двумя машинами.

Apache хорошо и удобно настраиваемый поскольку имеет модульную структуру. Модули позволяют администраторам сервера включать или выключать дополнительную функциональность. У Apache есть модули безопасности, кэширования, редактирования URL, аутентификации по средством пароля и другие. Вы можете установить свою собственную конфигурацию через файл .htaccess, который является файлом настроек для Apache и поддерживается всеми тарифными планами Hostinger.

Знаете ли вы, что в Hostinger есть специальные предложения? Посетите нашу страницу купонов и сэкономьте до 82%!

Не стоит забывать, что это предложение ограничено во времени!
Использовать Купон

Установите и настройте Apache HTTPD

Apache HTTPD или просто «апач» чаще всего используется для обработки запросов и отправки сформированных скриптами ответов по протоколам HTTP и HTTPS

2.1. Загрузите архив с последней версией Apache HTTPD для 64–разрядной Windows: httpd-2.4.38-win64-VC15.zip. На всякий случай, проверьте на официальном сайте Apache Lounge нет ли версии новее: apachelounge.com/download.

Официальная сборка Apache под Windows не выпускается, сборки готовят отдельные организации, самой активной из которых является Apache Lounge. Сам Apache работает по HTTP и в Windows трудится как фоновый процесс, а в Linux — как демон (англ. daemon), откуда и название HTTPD. Существует Apache и под 32-битные версии Windows, для них необходима версия Win32, а не Win64. Указанные в имени файла VC15, VC14 и VC11 говорят о версии Visual Studio, которой скомпилирован Apache. Выберете самую последнюю версию и установите свежие вспомогательные файлы Visual Studio с официального сайта Microsoft: VC_redist.x64.exe.

2.2. Распакуйте архив и перенесите содержимое папки Apache24 в папку D:\web\apache.

Важно ничего не перепутать и перенести не все содержимое архива, а лишь содержимое подпапки с именем Apache24. В архиве могут быть файлы readme и прочая информация, которая не нужна для работы сервера

2.3. Откройте файл D:\web\apache\conf\httpd.conf. Поиском по файлу найдите и измените значение на . Найдите и измените значения и на .

У Apache несколько файлов с настройками, все они находятся в папке conf (от слова configuration, «конфигурация» в переводе с английского). Основные настройки задаются в файле httpd.conf. Параметр ServerRoot задает корневую папку самой программы Apache, а DocumentRoot и Directory задают корневую папку хоста, то есть ту папку, в которой хранятся файлы сайта. Номера строк с параметрами могут меняться в новых версиях Apache, поэтому я их не привожу, поищите параметры по документам. Чтобы открыть окошко поиска в вашем текстовом редакторе, нажмите Ctrl + F.

2.4. В том же файле httpd.conf найдите, раскомментируйте и измените значение на .

Параметр ServerName задаёт доменное имя, по которому хост (иначе говоря, сайт) будет откликаться. Так повелось, что домен внутри компьютера называют localhost и этот домен соответствует IP–адресу 127.0.0.1. Для обращения к сайту можно использовать как доменное имя, так и IP–адрес. Порт под номером 80 используется в вебе для протокола HTTP без шифрования. Комментарии в файле конфигурации Apache предваряются октоторпом (символом решетки), сервер будет игнорировать такие строки.

2.5. В том же файле httpd.conf найдите и измените значение параметра ErrorLog на , а также значение CustomLog на common. Сохраните файл httpd.conf с перезаписью.

Как правило, работающий сервер выдает ошибки. Даже опытным разработчикам редко удается их избежать. Параметры ErrorLog и CustomLog хранят адреса файлов с журналами ошибок сервера. Если с сервером что–то не так — загляните в эти файлы.

2.6. Установите Apache через командную строку. Откройте командную строку (или выполните команду cmd в PowerShell) от имени администратора и выполните команду .

Сервер установится тут же, прямо в режиме командной строки. Если вся подготовка прошла без ошибок — Apache установится, но ещё не запустится. Если захотите удалить Apache, то выполните в командной строке команду .

2.7. Запустите «Диспетчер задач» Windows, перейдите на вкладку «Службы». Найдите Apache2.4 в списке служб, вызовите контекстное меню: так вы сможете запустить, остановить или перезапустить сервер. Запустите сервер.

В файлах сервера Apache для Windows также есть программа Apache Monitor, графический интерфейс, смысл которого ровно такой же: запускать, останавливать и перезапускать службу Apache2.4. Но в последней версии Windows 10 сильно проще попасть в список служб, поэтому смысла пользоваться Apache Monitor больше нет.

2.8. Откройте браузер и наберите адрес http://localhost/ или http://127.0.0.1/ — вы должны увидеть надпись Hello world.

Браузер обратится с запросом по 80 порту к тому же компьютеру, на который он установлен, и будет ждать ответа. Если установка Apache прошла без ошибок, но в ответе нет надписи Hello world — проверьте есть ли в каталоге D:/web/www файл index.html и еще раз пройдитесь по всем пунктам. Если все прошло успешно и в ответ вы получили файл index.html, то поздравляю, вы уже можете дополнять его кодом на HTML, CSS и JavaScript и обращаться к файлам по имени хоста.

2.0. Обновить Apache легко. Переименуйте папку D:\web\apache в apache_old, распакуйте новую версию Apache в D:\web\apache, перенесите httpd.conf из папки apache_old в папку apache. Если все работает — удалите apache_old.

Log Files and Troubleshooting ¶

As an Apache HTTP Server administrator, your most valuable assets are
the log files, and, in particular, the error log. Troubleshooting any
problem without the error log is like driving with your eyes closed.

The location of the error log is defined by the directive, which may be set globally,
or per virtual host. Entries in the error log tell you what went wrong,
and when. They often also tell you how to fix it. Each error log message
contains an error code, which you can search for online for even more
detailed descriptions of how to address the problem. You can also
configure your error log to contain a log ID which you can then
correlate to an access log entry, so that you can determine what request
caused the error condition.

Apache и другие веб-сервера

Кроме Apache существует ещё довольно много веб-серверов. Каждое приложение веб-сервера создавалось для различных целей. Не смотря на то, что Apache является самый широко используемым, для него есть несколько альтернатив и конкурентов.

Apache или NGINX

Nginx произносится как Engine-X, это более новое веб-серверное программное обеспечение с первым релизом в 2004 году. Как на сегодня он добился большой популярности среди владельцев сайтов. Nginx был создан для решения так называемой проблемы c10k – проблемы 10 тысяч соединений, что означает, что веб-сервера, использующие потоки не могут обрабатывать запросы пользователей более, чем с 10 000 подключений одновременно.

  1. Так как Apache использует структуру основанную на потоках, владельцы сайтов с высоким трафиком могли столкнуться с проблемой производительности. Nginx один из веб-серверов, который был нацелен на решение проблемы c10k и возможно это одно из самых успешных решений.
  2. Nginx имеет событийно ориентированную архитектуру, которая не создаёт новый процесс для каждого запроса. Вместо этого он обрабатывает каждый входящий запрос в едином потоке. Этот главный процесс управляет несколькими рабочими процессами, которые выполняют непосредственную обработку запросов. Модель Nginx, основанная на событиях распространяет запросы пользователей среди рабочих процессов эффективным путём, что приводит к лучшей масштабируемости.
  3. Если вам нужно обслуживание сайта с высокой посещаемостью, то Nginx – отличный выбор, поскольку он может сделать это, затратив минимальные ресурсы. И не случайно он используется сайтами с большим количеством показов, такими как: Netflix, Hulu, Pinterest и Airbnb.
  4. Однако для мелких и средних игроков, Apache имеет несколько преимуществ в сравнении с Nginx, среди которых: более простая настройка, множество модулей и среда дружественная для начинающих.

Apache или Tomcat

Tomcat – это веб-сервер также разработанных Apache Software Foundation, поэтому его официальное название Apache Tomcat. Это тоже HTTP-сервер, однако он обрабатывает приложения Java вместо статических сайтов. Tomcat может запускать несколько Java спецификаций, таких как: Java Servlet, Java Server Pages (JSP), Java EL и WebSocket.

  1. Tomcat был разработан специально для приложений на Java, в то время как Apache позиционируется как HTTP-сервер. Вы можете использовать Apache совместно с другими языками программирования (PHP, Python, Perl и т.д.) с помощью специального модуля Apache (mod_php, mod_python, mod_perl и др.).
  2. Хотя вы и можете использовать сервер Tomcat для статических веб-страниц, но это будет менее эффективно, чем использование Apache. Например, Tomcat заранее загружает виртуальную машину Java и другие Java-библиотеки, которые могут быть ненужными для работы вашего сайта.
  3. Tomcat также хуже настраиваемых в сравнении с другими веб-серверами. Например, для запуска WordPress, лучшим выбором будет стандартный HTTP-сервер, такой как Apache или NGINX.

Настройка

Для применения изменений в настройках необходимо перезапустить демон Apache:

sudo service apache2 restart
       /etc/apache2/
       |-- apache2.conf
       |       `--  ports.conf
       |-- mods-enabled
       |       |-- *.load
       |       `-- *.conf
       |-- conf-enabled
       |       `-- *.conf
       `-- sites-enabled
               `-- *.conf

Настройки модулей расположены в директории /etc/apache2/mods-available. Для подключения или отключения модулей (настроек модулей) следует использовать соответствующие команды или . Пример подключения модуля:

sudo a2enmod <mod-name>

Свои настройки следует сохранять в файлы, расположенные в директории /etc/apache2/conf-available. Для подключения или отключения своих настроек следует использовать соответствующие команды или . Пример подключения файла со своими настройками:

sudo a2enconf <config-name>

Настройки виртуальных хостов следует сохранять в файлы, расположенные в директории /etc/apache2/sites-available. Для подключения виртуальных хостов следует использовать соответствующие команды или . Пример подключения виртуального хоста:

sudo a2ensite <site-name>

Кодировка по умолчанию

Для указания кодировки по умолчанию следует использовать директиву в файле /etc/apache2/conf-available/charset.conf (или раскомментировать соответствующую строку):

AddDefaultCharset UTF-8

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

Файлы настроек виртуальных хостов хранятся в /etc/apache2/sites-available/*.conf. По умолчанию в Apache уже настроен один виртуальный хост. Его настройки лежат в файле 000-default.conf. Вы можете использовать этот виртуальный хост в качестве примера.

Пример настройки виртуального хоста:

<VirtualHost *:80>
    #Имя хоста
    ServerName host1.server1
    #Корневая папка хоста
    DocumentRoot /var/www/host1.server1
    <Directory /var/www/host1.server1>
        #Разрешение на перезапись всех директив при помощи .htaccess
        AllowOverride All
    </Directory>
</VirtualHost>

Назовите файл настройки именем вашего хоста host1.server1.conf и сохраните.

После создания файла настроек допишите в /etc/hosts имя вашего хоста:

127.0.0.1    host1.server1

Для включения созданного виртуального хоста используется утилита :

sudo a2ensite host1.server1

Отключается хост аналогично утилитой :

sudo a2dissite host1.server1

mod_userdir

Модуль позволяет использовать директории, находящиеся в домашних директориях пользователей для хранения веб страниц. По умолчанию Apache ищет запрашиваемые страницы в директории ~/public_html

mkdir ~public_html

Чтобы включить , выполните:

sudo a2enmod userdir

и добавьте необходимого пользователя в группу www-data:

sudo adduser $USER www-data

после чего перезагрузите Apache:

sudo service apache2 restart

Страницы будут доступны по адресу http://localhost/~username, где username — имя пользователя.

CGI

Если Вы хотите запускать на сервере cgi-скрипты, подключите модуль командой

sudo a2enmod cgi

По умолчанию cgi-скрипты размещаются в директории /usr/lib/cgi-bin, но вы можете разместить их где угодно,
указав это в настройках своего виртуального хоста, либо глобально для всех хостов в файле
/etc/apache2/conf-enabled/serve-cgi-bin.conf.

Eсли ваш сервер работает во внешней сети, то в целях безопасности настоятельно рекомендуется размещать cgi-скрипты вне корневой директории виртуального хоста

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *