Содержание

что это такое и как им пользоваться

Apache – один из самых популярных в мире веб-серверов. Начинающие вебмастера не всегда понимают, что представляет собой Apache и как происходит взаимодействие с таким программным обеспечением.

Далее я постараюсь максимально подробно рассказать о нем, приводя объяснения общим терминам.

Понятие «веб-сервер‎»

Перед тем как переходить непосредственно к разбору Apache, кратко затрону понятие веб-сервера, ведь рассматриваемое программное обеспечение таковым и является. 

Веб-сервер – средство для обслуживания сайта в интернете. Он обрабатывает файлы, базы данных и всю информацию, хранящуюся на ресурсе. Веб-сервер занимается тем, что доставляет данные с серверного компьютера на устройство конечного пользователя в режиме реального времени, имея доступ ко всем файлам. Несколько запросов может обрабатываться одновременно, при этом не возникает проблем с файлами, написанными на совершенно разных языках программирования. При обработке все они превращаются в HTML-код и отправляются на обработку в браузер.

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

Комьюнити теперь в Телеграм

Подпишитесь и будьте в курсе последних IT-новостей

Подписаться

Работа веб-сервера Apache

Веб-сервер Apache – это программное обеспечение, которое установлено на сам сервер. Как мы уже поняли, благодаря ему устанавливается соединение между юзером, использующим браузер, и сервером, чтобы осуществить передачу данных при запросе. Пользователь переходит на страницу, далее отправляется сигнал на обработку, Apache находит необходимые данные и возвращает их пользователю, чтобы тот смог ознакомиться с ними. Работает это и в обратном направлении, примерно по такому же принципу.

Все остальное зависит от подключаемых модулей, которые существуют для Apache Web Server, то есть его можно назвать модульным (собираемым из разных дополнений, расширяющих функциональность). Здесь уже создатель сайта сам решает, какие дополнения установить, редактируя конфигурацию через специальный файл под названием .htaccess. Дополнений существует множество – начиная со средств повышения безопасности и заканчивая модулями аутентификации пользователей при вводе учетных данных.

Пример использования файла .htaccess

Вкратце рассмотрим и упомянутый выше конфигурационный файл. Он помещается в разных директориях веб-сервера, от чего и зависит область его действия. Соответственно, сохраненный в корне файл применяет свои правила на весь веб-сервер. Однако учтите, что если вы используете виртуальный хостинг для обслуживания нескольких сайтов на одном сервере, возможно появление проблем при наличии нескольких директив .htaccess, то есть при их наследовании от подкаталогов до корня.

Самая простая строка кода, вводимая в этот файл выглядит так:


AddType "text/html; charset=koi8-r" .html .htm .shtml

Ее основное предназначение – указать Apache кодировку, в которой нужно возвращать текст пользователю. Такое изменение делается в тех случаях, когда стандартный вывод вас не устраивает.

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

Если вы нуждаетесь в получении дополнительной информации о виртуальном хостинге с этим веб-сервером, ознакомьтесь с документацией Virtual Apache Host на официальном сайте разработчика ПО.

Подробнее: Apache Virtual Host documentation

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

Есть и другие веб-серверы, обладающие своими преимуществами и недостатками. Обо всех них в рамках этой статьи говорить не будем, рассмотрим лишь пару достойных конкурентов.

Начнем с самого известного решения – Nginx. Здесь сказать можно только одно – его главным преимуществом является преодоление барьера в 10 000 одновременных соединений. Apache не может обработать такой большой поток трафика сразу, поэтому многие вебмастера и переключились на альтернативу, когда масштабы их проекта значительно увеличились. Связано это с поточной структурой Apache и невозможностью реализовать прохождение такого барьера. Однако в некотором плане Апач превосходит Nginx, если говорить о простоте настройки, подключении модулей и юзерфрендли-подходе от разработчиков.

Примечание. Хостинг Timeweb на своих серверах использует связку Nginx+Apache: Nginx отдает статический контент, а Apache подключается позже и отвечает за обработку динамического контента.

Второй конкурент – Tomcat, его разработала та же компания, что и Apache, но уже для других целей. Он используется для работы приложений, написанных на Java, а Apache-сервер – это HTTP-направленный инструмент. Если вы не используете Java, а управляете статическими веб-страницами, переключаться на Tomcat точно не стоит.

Установка Apache на компьютер

Если вы хотите самостоятельно попробовать Apache, организовав полноценно работающий сайт с веб-сервером, базой данных и другими компонентами, воспользуйтесь информацией, предоставленной на официальном сайте. Там вы найдете все необходимые файлы для Windows, архивы и команды инсталляции для Linux, а также объяснения всех тонкостей, связанных с настройкой данного компонента.

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

Подробнее: Как использовать Apache в качестве обратного прокси при помощи mod_proxy на Ubuntu 16. 04

Преимущества и недостатки Apache

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

Плюсы

Начну с положительных моментов, поскольку многие из них становятся решающими при выборе первого веб-сервера для своего проекта. Перечислю только самые влиятельные факторы.

  • Открытый исходный код. Он позволяет не только бесплатно скачивать программу, но и изменять ее под свои цели, чем и занимаются многие компании по всему миру, составляя уникальные конфигурации.
  • Простота настройки. Помимо того, что в Apache есть огромное количество настроек, их редактирование остается таким же простым, а за вспомогательной информацией всегда можно обратиться к официальной документации.
  • Модульная структура. Считаю, что возможность подключения любого количества модулей значительно расширяет функциональность веб-сервера, делая его универсальным.
  • Кроссплатформенность. Скачать веб-сервер можно для любой операционной системы (но не для мобильной). При этом процесс настройки не меняется, различается только принцип инсталляции и расположение каталогов. Остается таким же и создание сайтов. Apache можно освоить как в Windows, так и в Linux или macOS.
  • Масштабируемость. Данный веб-сервер подойдет как для одного сайта, так и для нескольких, расположенных на одном виртуальном хостинге.

Минусы

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

  • Влияние трафика на производительность. Apache работает медленно, если наплыв пользователей слишком большой.
  • Дыры в безопасности. Это относится только к тем случаям, когда к веб-серверу подключено огромное количество модулей. Чем их больше, тем сложнее процесс конфигурирования, появляются уязвимые места и дыры.
  • Редактирование файлов в Linux. Управление конфигурационными файлами в этих дистрибутивах осуществляется вручную без графического интерфейса, что не всегда удобно (в качестве рекомендации могу подсказать приложение Apache GUI, благодаря которому настройку можно выполнить через веб-обозреватель).

Apache – несомненно, один из лучших веб-серверов, в чем вы смогли сами убедиться, дочитав мой обзор. 

Что такое Apache сервер, как установить, настроить и запустить апаче

В этой статье мы простым языком объясним, что такое apache сервер, как правильно его настроить и использовать. На сегодняшний день это один из самых востребованных видов программного обеспечения, которое отвечает за отображение информации на сайте. Поэтому с ним сталкивается каждый веб-разработчик.

Что такое Apache и зачем он нужен

Apache часто называют веб сервером. Но корректнее назвать его программным обеспечением для развертывания веб сервера.

Этот продукт создавался в качестве усовершенствованной модификации другого HTTP-клиента. Разработчики вносили в него доработки и улучшения. Их называют патчи, что в переводе означает «заплатки». Эти части кода автоматически устраняют недочёты общего кода. Когда их объединили, появился новый, уникальный IT-продукт с модульной структурой.

Чтобы понять, для чего нужен apache, вспомним, как протекает процесс открытия сайта.

Человек пишет запрос, адрес сайта. Чтобы предоставить нужную информацию, в том числе изображение, текст, формы и другие элементы, браузеру нужно связаться с сервером. В этом ему помогает веб сервер, обрабатывая расположенные на ресурсе файлы. Его задача – найти нужные и направить их браузеру. Когда браузер их получит, он может продемонстрировать контент пользователю.

Веб-сервер способен обрабатывать несколько запросов параллельно, так что не возникает проблем, если файлы написаны на разных языках программирования. В процессе обработки они всё равно трансформируются в HTML-код, в котором их в итоге получает браузер.

Условно можно выделить 4 ключевые задачи из тех, что делает apache.

  • Способствует повышению скорости открывания динамических PHP-страниц.
  • Распределяет нагрузку на сервер.
  • Повышает отказоустойчивость сервера.
  • Помогает настроить сервер при запуске PHP-скриптов.

Архитектура Apache

Apache состоит из ядра и модулей, а его параметры можно изменить, корректируя конфигурационные файлы.

Ядро нужно, чтобы обрабатывать конфигурационные файлы, протокол HTTP/HTTPS и загружать модули. Оно способно функционировать само по себе, без подключения модулей, однако в этом случае функционал будет сильно ограничен.

Как можно расширить функционал веб сервера? Подключить к ядру модули. Это дополнительные файлы, отвечающие за конкретные аспекты обработки запросов. Например, поддержку какого-либо языка программирования, безопасность данных, кэширование и другие функции. То есть общая задача делится на мелкие процессы, и за каждый из них отвечает конкретный модуль.

Модули бывают двух основных видов.

  • Статические прикрепляют к ядру ещё до загрузки. По сути, пользователь просто выбирает подходящую версию сборки.
  • Динамические можно добавлять позже, в процессе загрузки. Для этого предусмотрен особый встроенный модуль mod_so.

Для апаче уже созданы сотни модулей. А некоторые приложения сразу пишутся в виде модулей для удобного использования.

Конфигурация Apache

Система конфигурации Apache базируется на содержащих настройки текстовых файлах и состоит из трёх уровне.

  • Конфигурация сервера – файл httpd.conf. Это главный конфигурационный файл, охватывающий полностью механизм веб-сервера.
  • Каталог – файл .htaccess. Это второстепенный конфигурационный файл, так как его директивы действуют исключительно в каталоге, где файл находится, а также его подкаталогах.
  • Виртуальный хоста – файл httpd.conf> или extra/httpd-vhosts.conf. Действуют только в конкретном каталоге и его подкаталогах.

Если интересуетесь, как настроить apache, то ищите нужные файлы в папке «conf» и вложенной в неё папке «extra». Редактирование осуществляется в самом файле или командной строке.

Плюсы и минусы Apache

Веб сервер апаче функционирует на базе технологии мультипроцессинга, отсюда вытекают его сильные и слабые стороны.

Любое соединение с сервером образует индивидуальный поток. Для наглядности сравним его с узким тротуаром, на котором помещается всего один пешеход. Причём люди не могут двигаться друг за другом. Следующий может пройти по тротуару только в том случае, если предыдущий успел дойти до конца.

Возвращаясь к Apache, второе соединение невозможно до тех пор, пока первое не будет завершено.

Такой подход имеет один серьёзный недостаток – повышенную вероятность перегрузки. Число потоков не бесконечно. И когда пользователей становится много, работоспособность программного обеспечения снижается.

Кроме того, доступность системы становится её недостатком. Ведь злоумышленники тоже могут создать свой модуль или прошить в нём вредоносный код, вирусы. Чтобы избежать проблем, важно внимательно выбирать модули, которые планируете использовать. Ставьте их только в том случае, если уверены в разработчиках и доверяете им.

Иногда лишних модулей слишком много. Для быстрой и удобной работы их приходится отключать вручную.

Зато у него много достоинств.

  • Бесплатное использование, в том числе для коммерческих целей.
  • Открытый исходный код, благодаря которому он легко адаптируется под индивидуальные требования пользователей.
  • Совместимость с различным серверным программным обеспечением за счёт поддержки множества языков программирования.
  • Простая и удобная настройка apache с возможностью масштабирования.
  • Совместимость с разнообразными CMS.
  • Поддержка технологий FastCGI и CGI.
  • Возможность применения СУБД для аутентификации пользователей.
  • Обширная база знаний. Так как работа над данным IT продуктом началась ещё в 1998 году, за время его существования было создано огромное количество инструкций под самые разнообразные ситуации.

Альтернативы Apache

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

  • Nginx. Прекрасный вариант для отображения статичного контента. Может использоваться как HTTP и обратный прокси-сервер, почтовый прокси-сервер.
  • XAMPP. Удобный бесплатный дистрибутив Apache, в котором содержатся MariaDB, PHP и Perl.
  • Serva 32/64. Автоматизированный сервер PXE Solution Solution Accelerator. Принцип его работы базируется на портативном многосерверном механизме со множеством протоколов.
  • Lighttpd. Веб сервер создавался специально для использования в проектах, требовательных к скорости передачи данных.
  • Caddy. Расширяемый кроссплатформенный веб-сервер с открытым исходным кодом.
  • Tomcat. Контейнер сервлетов для обработки спецификации Java.
  • Microsoft IIS. Набор сервисов с целью глубокой интеграции и поддержки продуктов Microsoft.
  • Apache kafka – стриминговая платформа для хранения, обработки и доставки большого объёма данных в реальном времени.

На самом деле список очень длинный. При желании можно подобрать оптимальное решение для конкретной задачи.

Как установить apache

Установка apache возможна на операционной системе windows и linux. Инструкция несложная.

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

В следующем окне нужно выбрать пункт «Custom» и нажать «далее».

Создайте и выберете соответствующую папку для установки. Нажмите «Install», а после завершения процесса «Finish».

Как запустить apache

На нижней панели управления появится иконка веб сервера.

Если кликнуть по нему правой кнопкой мыши, откроется доступ к системным службам. Это и есть ответ на вопрос, как включить apache. Всё очень просто.

Как повысить производительность apache

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

В Ubuntu они расположены в каталоге /etc/apache2/sites-available внутри файла 000-default.conf.

В первой строке указана директива с параметром 80. Это используемые IP-адрес и порт.

В строчке №3 «ServerAdmin» нужно указать актуальный e-mail. В строчке №4 «DocumentRoot» содержится доступ к файловой системе, корневой каталог. Важно проконтролировать, чтобы он не заканчивался символом «/». В строке №8 «VirtualHost» указан файл, где сохраняются ошибки apache. В строке №9 «CustomLog» применяется для регистрации запросов.

Чтобы добавить ещё один виртуальный хост, необходимр создать каталог, для использования в качестве document root, а также базовую страницу – именно её увидит пользователь, когда откроет сайт.

Файлы виртуальных хостов хранятся в каталоге /etc/apache2/sites-available.

В минимальной конфигурации появится ещё одна директива «ServerName», определяющая виртуальный хост. Файл нужно сохранить как example.conf.

Затем введите команду «a2ensite» для формирования символической ссылки в каталог. Перезагрузите конфигурацию сервера.

Как проверить apache

Важно добавить запись в файл /etc/hosts того устройства, с которого выполняется связь с сайтом.

$ sudo echo “192.168.122.241 www.example.local” >> /etc/hosts

Так вы связываете адрес сервера с названием виртуального хоста. Указание IP-сервера напрямую ссылался бы на виртуальный хост по умолчанию. Теперь, если зайти с клиентского компьютера на указанный адрес, откроется страничка, которую настраивали ранее.

Заключение

Apache – практичное решение для быстрого запуска сайтов. Он совместим с внушительным списком IT продуктов и языков программирования, за счёт чего имеет гибкие возможности для расширения функционала.

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

  

Туториал: как использовать apache

Что такое Apache? Подробный обзор веб-сервера Apache

ВПС

06 февраля 2023 г.

Richard B.

5min Read

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

В Hostinger, например, наша инфраструктура хостинга работает на другом популярном веб-сервере Litespeed. Эта конкретная настройка значительно улучшает сильные стороны обоих серверов, позволяя нам обеспечивать оптимальную производительность для наших пользователей.

Узнайте больше, чтобы найти ответ на вопрос, что такое Apache, его сравнение с другими веб-серверами, такими как NGINX и Tomcat, а также его плюсы и минусы.

Загрузить глоссарий для начинающих веб-мастеров

Что такое Apache?

Apache — это бесплатное программное обеспечение с открытым исходным кодом, которое позволяет пользователям размещать свои веб-сайты в Интернете. Это одно из старейших и наиболее надежных программ для веб-серверов, поддерживаемых Apache Software Foundation, первая версия которого была выпущена в 1995 году. 

Что такое веб-сервер?

Файловые серверы, серверы баз данных, почтовые серверы и веб-серверы используют различные виды серверного программного обеспечения. Каждое из этих приложений может получать доступ к файлам, хранящимся на физическом сервере, и использовать их для различных целей.

Работа веб-сервера заключается в обслуживании веб-сайтов в Интернете. Для достижения этой цели он действует как посредник между сервером и клиентскими машинами. Он извлекает контент с сервера по каждому запросу пользователя и доставляет его в Интернет.

Самой большой проблемой веб-сервера является одновременное обслуживание множества разных веб-пользователей, каждый из которых запрашивает разные страницы. Веб-серверы обрабатывают файлы, написанные на разных языках программирования, таких как PHP, Python, Java и других.

Они превращают их в статические HTML-файлы и обслуживают эти файлы в браузере для веб-пользователей. Когда вы слышите слово «веб-сервер», думайте о нем как об инструменте, отвечающем за правильное взаимодействие между сервером и клиентом.

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

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

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

Сервер и клиент обмениваются данными по протоколу HTTP, а веб-сервер Apache отвечает за бесперебойную и безопасную связь между двумя машинами.

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

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

Чтобы настроить Apache, вам потребуется доступ к .htaccess. Этот файл конфигурации Apache поддерживается всеми планами веб-хостинга Hostinger.

HTTP-сервер Apache и другие веб-серверы

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

Apache против NGINX

Nginx, произносится как Engine-X, — это бесплатное программное обеспечение с открытым исходным кодом. По сравнению с Apache, это более новое приложение веб-сервера, выпущенное в 2004 году.

Nginx был создан для решения так называемой проблемы c10k, означающей, что веб-сервер, использующий потоки для обработки пользовательских запросов, не может управлять более чем 10 000 соединений. в то же время.

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

Прочтите нашу статью о Nginx и Apache!

Apache против Tomcat

Tomcat — популярный веб-сервер, также разработанный Apache Software Foundation, поэтому его официальное название — Apache Tomcat. Подобно Apache, Tomcat является HTTP-сервером. Однако его основная функциональность заключается в том, чтобы запускать приложения Java вместо статических веб-сайтов. Tomcat может выполнять несколько различных спецификаций Java, таких как Java Servlet, JavaServer 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

Веб-сервер Apache может стать отличным выбором для запуска вашего веб-сайта на стабильной и универсальной платформе. Тем не менее, он также имеет некоторые недостатки, на которые следует обратить внимание.

Pros :

  1. Открытый исходный код и бесплатный, даже для коммерческого использования.
  2. Надежное, стабильное программное обеспечение.
  3. Часто обновляемые исправления безопасности.
  4. Гибкость благодаря модульной структуре.
  5. Простота настройки, удобство для начинающих.
  6. Кроссплатформенный (работает как на серверах Unix, так и на Windows).
  7. Оптимальная доставляемость статических файлов и совместимость с любым языком программирования (PHP, Python и т. д.)
  8. Готово работает с сайтами WordPress.
  9. Огромное сообщество и легкодоступная поддержка в случае возникновения каких-либо проблем.

Минусы :

  1. Проблемы с производительностью на веб-сайтах с чрезвычайно интенсивным трафиком.
  2. Слишком большое количество параметров конфигурации может привести к уязвимостям в системе безопасности.

Итак, что такое Apache?

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

Принцип работы HTTP-сервера Apache заключается в том, что он будет принимать запросы от веб-браузеров, таких как Google Chrome и Microsoft Edge, и превращать программные сценарии в веб-страницы, содержимое которых будет видно посетителям.

Вы можете установить веб-сайт WordPress на веб-сервер Apache без какой-либо настройки. Кроме того, сервер Apache без проблем работает со многими другими системами управления контентом (Joomla, Drupal и т. д.), веб-фреймворками (Django, Laravel и т. д.) и языками программирования. Это делает его хорошим выбором для всех типов платформ веб-хостинга, таких как VPS или виртуальный хостинг.

Надеюсь, эта статья содержит все ответы, которые вам нужно знать о том, что такое Apache. Оставляйте комментарии ниже, если у вас остались вопросы об этом веб-сервере!

Дополнительные сведения о хостинге и разработке веб-сайтов

Что такое веб-хостинг
Что такое cPannel
Что такое доменное имя
Как выбрать провайдера веб-хостинга
Как выбрать тарифный план веб-хостинга

Ричард — разработчик программного обеспечения для WordPress и эксперт по системам управления контентом. Когда он не играет с кодом, Ричард наслаждается хорошим кино и крафтовым пивом.

Подробнее от Ричарда Б.

Как работает ASF

Если вас интересуют подробности управления, у нас есть описание управления в стиле Apache.
Проект Apache Community Development также здесь, чтобы помочь новичкам сориентироваться.

На этой странице представлен обзор всего, что вы всегда хотели знать о Apache Software Foundation, но боялись спросить: разница между членством и комиссии, кто что решает, как проходят выборы, как наши настроена инфраструктура, что такое правление и чем оно занимается, что такое ЧВК, какова философия инкубатора и то, как АЧС справляется с невероятный рост новых проектов и участников за эти годы. Приходите и посмотрите за кулисами АЧС.

  • Что такое Apache Software Foundation?

  • Меритократия

  • Структура Фонда

  • роли

  • Управление проектом и сотрудничество

  • Инфраструктура Фонда

  • Инкубатор Фонда

  • Прочие организации Фонда

  • Выводы

Что такое Apache Software Foundation?

Apache Software Foundation (ASF) — это некоммерческая общественная благотворительная организация 501(c)3. зарегистрирована в Соединенных Штатах Америки. Он был создан в 1999 году в основном для:

  • обеспечивают основу для открытой совместной разработки программного обеспечения проекты путем поставки оборудования, связи и бизнес-инфраструктуры

  • создать самостоятельное юридическое лицо, которому компании и физические лица могут пожертвовать ресурсы и быть уверенным, что эти ресурсы будут использованы для общественная польза

  • предоставить средства для защиты отдельных добровольцев от юридических костюмы, направленные на проекты Фонда

  • защищать торговую марку «Apache» применительно к ее программным продуктам от подвергается насилию со стороны других организаций

Это сухие факты, но как все это произошло и что это значит на самом деле означает? Нам нужно немного отступить в истории.

Меритократия

В отличие от других усилий по разработке программного обеспечения с открытым исходным кодом лицензии, как ядро ​​Linux или языки Perl/Python, ни один разработчик не инициировал веб-сервер Apache. Разнообразная группа людей, разделявших общие интересы, разработала проект, обмениваясь информацией, исправлениями программного обеспечения и предложениями.

Когда группа начала разрабатывать собственную версию программного от версии NCSA привлекли больше людей и начали помогать вне, сначала отправляя небольшие исправления или предложения, или отвечая на электронную почту в списке рассылки, позже с более важными вкладами.

Когда группа почувствовала, что человек «заслужил» заслугу быть частью сообщество разработчиков, они предоставили прямой доступ к коду репозиторий, тем самым расширяя группу и повышая ее способность разрабатывать программу, а также поддерживать и развивать программное обеспечение. эффективно.

Мы называем этот основной принцип «меритократией»: управление по заслугам.

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

Без ограниченных и, следовательно, ценных ресурсов (денег, энергии, времени) на кону группа был рад, что новые люди приходят и помогают. Они отфильтровали только тех, кто проявил интерес, чтобы найти и включить тех, кто, по их мнению, был достаточно предан делу и соответствовал требованиям. человеческое отношение, необходимое для того, чтобы хорошо работать с другими, особенно когда разногласия.

После объяснения структуры АФС мы увидим, как меритократия относится к различным ролям.

Структура фонда

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

К моменту возникновения АЧС существовало несколько отдельных сообщества, каждое из которых сосредоточено на другой стороне проблемы «веб-обслуживания», но все они объединены общим набором целей и уважаемым набором культурных традиции как этикета, так и процесса.

Эти отдельные сообщества назывались «проектами» и, хотя похожи, каждый из них имел небольшие отличия, которые делали их особенными.

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

В то же время культурное влияние первоначальной группы апачей сильны, и сходство между различными сообществами очевидно, поскольку мы увидим позже.

Фондом управляют следующие лица:

  • Совет директоров (правление) управляет фондом и состоит из члены.

  • Комитеты по управлению проектами (КУП) управляют проектами, и они состоит из коммиттеров. (Обратите внимание, что каждый член ЧВК по определению также является коммиттер.)

  • Различные должностные лица корпорации, назначаемые правлением, которые устанавливают Политика Фонда в конкретных областях (юридическая, торговая марка, сбор средств и т. д.)

Подробную информацию можно найти в нашем обзоре управления.

Совет директоров (правление)

Совет отвечает за управление и надзор за бизнесом и дела корпорации в соответствии с учреждением Устав. Это включает в себя управление корпоративными активами (средства, интеллектуальная собственность, товарные знаки и вспомогательное оборудование) и выделение корпоративных ресурсов для проектов.

Тем не менее, PMC каждого проекта Apache имеет полномочия по принятию технических решений относительно содержания и направление проекта.

Правление в настоящее время состоит из девяти человек, избираемых члены фонда. В уставе не указано количество членов правления которое должно было быть в основании, но это было число первая доска и она никогда не менялась. Правление избирается каждый год.

На сайте правления есть дополнительная информация, список текущих директоров, расписание встреч и протоколы прошедших встреч.

Комитеты по управлению проектами (КУП)

Совет учреждает Комитеты по управлению проектами (КУП), которые отвечают за активное управление одним или несколькими конкретными сообщества.

В состав каждой ЧВК входит как минимум один офицер АЧС, который назначает своего председателя и может включать одного или нескольких других членов АЧС.

Правление назначает председателя PMC, который также становится офицером (вице-президентом) ASF. Председатель несет основную ответственность перед Советом, и имеет право устанавливать правила и процедуры для повседневной жизни управление сообществами, за которые несет ответственность ЧВК, в том числе состав самой ЧВК. См. дальнейшее обсуждение роли Стул ЧВК и почему стулья офицеры.

Устав ASF (раздел 6.3) определяет PMC и должность стула. Некоторые электронные письма помогают уточнить: здесь и здесь.

Роль ЧВК с точки зрения Фонда заключается в надзоре. Главный роль ЧВК заключается не в кодировании и не кодировании, а в том, чтобы ее сообщество решало все юридические выпускает и следует установленным процедурам, и что каждый релиз является продуктом сообщества в целом. Это ключ к нашему механизмы судебной защиты.

Вторая роль PMC заключается в содействии долгосрочному развитию и здоровья общества в целом, а также обеспечить сбалансированное и широкое имеет место масштабная экспертная оценка и сотрудничество. В АЧС мы беспокоимся о любом сообществе, которое сосредоточено вокруг нескольких людей, которые работают практически без обзора. Мы считаем, что это наносит ущерб качеству, стабильность и надежность как кода, так и долгосрочных социальных структур.

Мы твердо верим в шляпы. Ваша роль в ASF назначена вами лично, и даруется вам вашими сверстниками. Это не привязано к ваша работа или текущий работодатель или компания.

Однако те, кто находится в PMC, придерживаются более высоких стандартов. ЧВК и Председатель, в частности, являются глазами и ушами Правления АФС, поэтому мы полагаемся и должны доверять вам в обеспечении юридического надзора.

Правление может прекратить работу PMC в любое время по решению.

На страницах с информацией для разработчиков Apache содержится более подробная информация о том, как работают PMC. Также доступен полный список всех проектов Apache.

Офицеры

Офицеры Apache Software Foundation наблюдают за повседневной дела Фонда. Совет Директор избирает этих должностных лиц.

Роли

Меритократия обычно имеет различные роли в каждом отдельном сообществе проекта Apache:

пользователь | разработчик | коммиттер | член ЧВК | стул ЧВК | Участник ASF

Пользователь

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

Разработчик

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

Коммиттер

Коммиттер — разработчик, имеющий доступ для записи кода репозиторий и имеет подписанное лицензионное соглашение участника (CLA) в файле. У них есть почтовый адрес apache.org. Им не нужно зависеть от других людей для внесения исправлений в код или документацию, они фактически принимают краткосрочные решения для проекта. PMC может (даже молчаливо) согласиться и одобрить изменения на постоянной основе, или они могут отвергнуть их. Помните, что решения принимает ЧВК, а не отдельные лица. коммиттеры.

Член PMC

Член PMC является коммиттером, который был избран в связи с заслуга в развитии проекта. У них есть доступ для записи к репозиторию кода, почтовый адрес apache.org, право голоса по решениям, касающимся сообщества, и право на предлагать других активных участников для участия. ЧВК в целом является субъектом который контролирует проект, никто другой. В частности, PMC должен проголосовать за утверждение любого официального выпуска программных продуктов своего проекта.

Председатель PMC

Правление назначает Председателя PMC из членов PMC. ЧВК в целом является организация, которая контролирует и ведет проект. Стул — это интерфейс между Советом и Проектом. У председателей PMC есть определенные обязанности.

Член АФС

Член АФС — это лицо, выдвинутое действующими членами и избран за заслуги в развитии и прогрессе фонда. Члены заботятся о самом АФС, как правило, посредством деятельности, связанной с проектом и между проектами. По закону член является «акционер» фонда, один из владельцев. Они имеют право избирать правление, баллотироваться в качестве кандидата на выборах в правление и предложить коммиттера для членства. Они также имеют право предлагать новый проект для инкубации (позже мы увидим, что это значит). Участники координировать свою деятельность через свой список рассылки и через свои ежегодное собрание. У нас есть полный список членов Apache.

Управление проектами и совместная работа

Проекты Apache управляются с помощью совместной, основанной на консенсусе процесс. У нас нет иерархической структуры; скорее разные группы участников имеют разные права и обязанности в организация.

Поскольку назначенные ЧВК имеют право создавать свои собственные правила самоуправления, нет единого видения того, как ЧВК должны управлять своими проектами и развивать сообщества, которые они возглавляют.

В то же время при наличии некоторых отличий имеется ряд общие черты всех проектов ASF:

Связь

Связь осуществляется через списки рассылки. Это «виртуальная встреча комнаты», где разговоры происходят асинхронно, что является общим требования к группам, распределенным по многим часовые пояса (как обычно для Apache сообщества).

Некоторые проекты дополнительно используют более синхронный обмен сообщениями (например, IRC или обмен мгновенными сообщениями). Голосовое общение крайне редко, обычно из-за затрат и языкового барьера (речь труднее понять чем письменный текст).

В целом асинхронная связь важна, поскольку она позволяет создавать архивы и более терпимо относится к волонтерам характер различных сообществ.

Документация

Каждый проект отвечает за собственный веб-сайт проекта. Доступна дополнительная информация для помощи коммиттерам, разработчикам и PMC. в инфраструктуре ASF.

Принятие решений

Проекты обычно управляются автоматически и управляются добровольцами для работы. Иногда это называют «до-ократией» — власть тех, кто делает. Это хорошо работает в большинстве случаев.

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

Голосование по номерам:

  • +1 — положительный голос

  • 0 — воздержался, не имею мнения

  • -1 — отрицательный голос

Правила требуют, чтобы член ОНК, регистрирующий голос против, должен был включить альтернативное предложение или подробное объяснение причин отрицательного голосования.

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

Этот процесс называется «сбором консенсуса», и мы считаем его очень важным показателем здорового общества.

Отдельные случаи имеют более подробные правила голосования.

Философия

Хотя официального списка нет, люди часто цитируют эти шесть принципов, часто называемых «путь апачей». как основные убеждения, лежащие в основе фонда:

  • совместная разработка программного обеспечения

  • коммерческая стандартная лицензия

  • неизменно качественное программное обеспечение

  • уважительное, честное, техническое взаимодействие

  • точное выполнение стандартов

  • безопасность как обязательная функция

Все проекты ASF разделяют эти принципы. Точно так же проекты Apache должны управлять собой независимо от неправомерного коммерческого влияния.

Операция

Все участники проектов АЧС являются волонтерами и никто (даже члены или офицеров) оплачивается непосредственно фондом за выполнение их работы. Есть много примеры коммиттеров, которым платят за работу над проектами, но никогда сам фундамент. Скорее, компании или учреждения, которые используют программное обеспечение и хотите улучшить его или поддерживать его обеспечить зарплату.

ASF заключает контракты на различные услуги, включая бухгалтерский учет, Связи с прессой и СМИ, администрирование инфраструктурных систем.

Отдельные лица составляют ASF

Все ASF, включая правление, должностных лиц, коммиттеров и члены участвуют как отдельные лица. Это одна из сильных сторон ASF: личная принадлежность не омрачает вклад человека.

Если специально не указано иное, все, что участник ASF публикует в любой рассылке список делается как сами . Это индивидуальная точка зрения, носящая их личная шляпа, а не как рупор для какой бы компании ни случилось подписывать свои зарплаты прямо сейчас, и даже не как директор АЧС.

Все участники ASF неявно имеют несколько шляп, особенно Правление, офицеры и председатели ЧВК. Им иногда нужно поговорить о вопросе политики, чтобы не показаться выражением личного мнения, они заявят, что говорят в своем особом качестве. Однако в большинстве случаев в этом нет необходимости: работает личное мнение. хорошо.

Некоторые люди заявляют о своих успехах, используя специальный нижний колонтитул к своей электронной почте, другие заключают свои утверждения в специальные кавычки, третьи используют свой адрес электронной почты apache.org, в противном случае они использовали бы свой личный один. Этот последний метод ненадежен, так как многие люди используют свои адрес apache.org все время.

Баланс между конфиденциальностью и публичным обсуждением

Мы стараемся проводить как можно больше публичных обсуждений. Этот поощряет открытость, предоставляет публичные записи и стимулирует более широкое сообщество.

Однако иногда необходимы внутренние личные списки рассылки. Вы никогда не должны разглашать информацию из такого списка публично без специального разрешения список. Также никогда не копируйте электронную почту между частными и общедоступными списками (без копии). Такое мероприятие вышло бы за рамки обычной необходимости соблюдения этикета электронной почты и стало бы серьезное нарушение доверия. Это может иметь серьезные последствия, вызывая ненужная путаница и неинформативное обсуждение.

Частные списки обычно используются только для вопросов, касающихся людей, как отдельные лица (например, голосование в новых коммиттерах) и юридические вопросы, требующие конфиденциальность.

Инфраструктура Фонда (#infrastructure)

У ASF нет офисов или зданий. Его единственное физическое существование — это техническая инфраструктура, которая позволяет ему работать, и персонал.

Команда инфраструктуры ASF, известная как «Инфра», поддерживает службы, которые помогают ASF и его проектам функционировать и процветать. Узнать больше.

Инкубатор Фонда

Для поддержки и поощрения новых проектов АФС создал Инкубатор в помощь новым усилия присоединяются к фонду.

Поскольку меритократические правила действуют в ASF снизу вверх, жизненно важно для долгосрочной стабильности этой формы правления, первоначальный набор коммиттеров должен очень хорошо понимать динамику такого системы и разделять одинаковое философское отношение к сотрудничества и открытости, которые ASF ожидает от своих проектов.

Инкубатор отвечает за:

  • фильтрация предложений о создании нового проекта или подпроект

  • помогает создать новый проект и необходимую инфраструктуру работать

  • надзор и наставничество за инкубируемым сообществом, чтобы помочь ему создать открытая, меритократическая среда

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

Инкубатор (как и доска) не работает фильтрация по техническим причинам. Основа уважает и поддерживает различные технические подходы. Он не боится инноваций или даже внутренней конфронтации между проектами, которые пересекаются в функциональность.

Инкубатор фильтрует проекты на основе вероятности проектов становятся успешными меритократическими сообществами. Основные требования к инкубации:

  • рабочая кодовая база — за годы и после нескольких неудач Foundation пришел к пониманию, что без исходной работающей кодовой базы он как правило, трудно запустить сообщество. Это потому, что заслуга не хорошо признан разработчиками без работающей кодовой базы. Так же трение, которое может возникнуть на начальном этапе проектирования, вероятно, фрагментировать сообщество.

  • намерение назначить достаточный интеллектуальный права собственности на программное обеспечение ASF — это позволяет основание для получения безотзывного и постоянного права на перераспределение и работать над кодом, не опасаясь блокировки ни для себя, ни для своих пользователей, при этом по-прежнему позволяя оригинальному автору сохранять свои авторские права.

  • спонсирующий член или офицер АФС — это лицо действует как главный наставник, дающий указания по проекту, помогающий в повседневных делах детали и поддерживать связь с PMC инкубатора.

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

Может показаться, что этого довольно легко достичь, но в волонтерская и высокоизбирательная среда, привлечение новых коммиттеров не автоматический.

Разнообразие обязательств важно по двум основным причинам:

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

  • дает большее разнообразие технических видений. Это гарантирует лучшее соответствие среде и потребностям пользователей, таким образом, больше шансов найти реальное использование программного обеспечения.

Другие организации фонда

Наряду с инкубатором у фонда есть несколько других межфондовые проекты. Например, у ASF нет офисов или здания. Это виртуальный объект, который существует только в Интернете, и команда инфраструктуры управляет техническая инфраструктура, обеспечивающая его работу.

Узнайте больше об этих и других межфондовых проектах на сайте Фонда Страница проектов.

ASF также содержит несколько списков рассылки для всего фонда, о которых вы можете узнать на странице Списки рассылки.

В обзоре…

ASF представляет собой один из лучших примеры открытой организации, которая нашла баланс между структурой и гибкость. Мы выросли с 200 коммиттеров до примерно 3000, и это число продолжает расти ежедневно. Мы смогли создать программные продукты, которые являются лидерами на своих рынках. У нас также есть удалось найти баланс между открытостью и экономической целесообразностью. Этот заслужила уважение со стороны отдельных пользователей программного обеспечения Apache и международные корпорации.