Версия Apache, как узнать Ubuntu

Обновлено: 21.11.2024

В следующем руководстве вы узнаете, как обновить веб-сервер Apache в Ubuntu 20.04.

Если вам нужно с самого начала установить веб-сервер Apache в Ubuntu 20.04, рекомендуем воспользоваться нашим руководством Как установить веб-сервер Apache в Ubuntu 20.04

Оглавление

Предпосылки

Обновление операционной системы

Прежде всего, обновите операционную систему Ubuntu, чтобы убедиться, что все существующие пакеты обновлены:

Корневой доступ или доступ к Sudo

По умолчанию учетная запись, созданная в Ubuntu, имела статус sudo. Тем не менее, предположим, что вам необходимо предоставить дополнительным учетным записям доступ sudo/root. В этом случае у вас должен быть доступ к паролю root, чтобы использовать команду su, или посетите наш учебник «Как добавить пользователя в Sudoers в Ubuntu».

Установите последнюю версию Apache

Прежде чем вы начнете, вы должны установить версию веб-сервера Apache 2, которая у вас работает в данный момент:

Добавление Apache PPA

Первым шагом в обновлении веб-сервера Ubuntu 20.04 Apache до последней версии является добавление PPA от Ондржея Сури. Для тех, кто не знает, Ондржей занимается сопровождением PHP в Debian и поддерживает последнюю версию Apache PPA для Ubuntu, а также Nginx и PHP.

Чтобы добавить PPA, используйте в терминале следующую команду:

Это автоматически добавит PPA и обновит список репозиториев.

Обновите Apache из PPA

Теперь вы можете запустить команду установки диспетчера пакетов apt, которая обновит веб-сервер Apache 2 следующим образом:

Кроме того, вы можете использовать обновление следующим образом:

Если доступно обновление Apache 2, выполните следующее:

Проверить версию и статус Apache

После завершения обновления проверьте используемую версию Apache с помощью следующей команды:

Как видите, версия репозитория Ubuntu по умолчанию изменилась с версии Apache 2, сборка 2.4.41, на последнюю сборку Apache, предоставленную PPA Ondřej Surý, сборка 2.4.51.

Наконец, проверьте статус с помощью следующей команды systemctl:

Поздравляем, вы обновили Apache до последней предлагаемой версии.

Настройка брандмауэра UFW для Apache

После установки веб-сервера Apache 2 вам потребуется изменить правила UFW, если у вас установлен UFW. Чтобы разрешить внешний доступ к веб-портам по умолчанию. К счастью, во время установки Apache регистрируется в UFW, чтобы предоставить несколько профилей, которые можно использовать для включения или отключения доступа, что упрощает и ускоряет настройку.

Если вы хотите установить брандмауэр UFW, выполните следующую команду:

После установки UFW включите UFW, чтобы он запускался и был активен при загрузке системы.

Далее перечислите профили приложений, чтобы просмотреть профили Apache, доступные с помощью следующей команды:

Для руководства, поскольку мы не настроили SSL, мы включим профиль (Apache) с помощью следующей команды:

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

Как обновлять Apache

Чтобы обновить Apache в будущем, все, что вам нужно сделать, это запустить команду apt update, когда новый репозиторий будет добавлен в список источников apt:

Если он доступен, обновите Apache следующим образом:

Или обновите Apache отдельно:

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

Комментарии и заключение

В этом небольшом руководстве вы узнали, как обновить Ubuntu 20.04 до последней версии веб-сервера Apache 2. В целом, использование последних версий в репозитории Ubuntu может принести пользу благодаря последним функциям и исправлениям ошибок. Единственным недостатком всегда является то, что сопровождающий быстро обновляет PPA, если выходит патч безопасности для известного эксплойта. ОДНАКО, PPA от Ondřej поддерживается довольно хорошо и часто обновляется очень быстро, поэтому вы должны быть уверены в этом PPA.

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

Для тех, кто также хочет знать, как установить конкретную версию Apache в Ubuntu Linux, приведенные ниже шаги также покажут, как это сделать.Шаги также будут включать в себя параметры, чтобы узнать, какие модули загружаются с Apache в Ubuntu Linux.

Для тех, кто не знает, что такое Apache, вот обзор:

Чтобы узнать, какую версию Apache вы используете, или установить конкретную версию Apache в Ubuntu Linux, перейдите ниже.

Как узнать, какая версия Apache используется в Ubuntu Linux

Установить Apache на Ubuntu Linux очень просто. Просто запустите команду apt-get install apache2, чтобы установить его.

В командной консоли Ubuntu Linux выполните приведенные ниже команды, чтобы проверить версию Apache.

После того как вы запустите приведенную выше команду, она должна вывести строки, подобные приведенным ниже:

Как видите, номер версии 2.4.41 — это последняя версия, доступная в настоящее время в репозитории Ubuntu, однако это не означает, что это последняя версия Apache, доступная для установки.

Вы также можете найти дополнительную информацию, выполнив следующие команды:

Когда вы запускаете приведенные выше команды, он должен отображать строки, подобные приведенным ниже:

Если у вас установлен curl, вы также можете узнать, какая версия Apache работает в Ubuntu Linux, с помощью приведенных ниже команд:

При выполнении приведенных выше команд должно появиться что-то похожее на следующие строки:

Как узнать, какие модули Apache в настоящее время загружены в Ubuntu Linux

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

После того как вы запустите приведенные выше команды, они должны вывести строки, подобные приведенным ниже.

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

Как установить определенную версию Apache в Ubuntu Linux

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

Если вам нужно установить определенную версию, недоступную в Ubuntu Linux, возможно, вам придется добавить в систему сторонний репозиторий.

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

Сначала установите необходимые команды ниже:

Затем выполните приведенные ниже команды, чтобы добавить репозиторий.

После этого вы можете найти и установить определенную версию Apache.

Установите конкретную версию, выполнив команду в следующем формате:

Замените на номер версии, доступный для Ubuntu.

Теперь новая версия должна выглядеть так, как показано ниже:

Это должно сработать!

Вывод:

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

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

Быстрые переходы:

Что такое Apache?

Подробнее о том, что такое веб-сервер Apache?

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

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

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

Последней версией Apache, выпущенной Apache Software Foundation, является версия 2.4.41. Это последний выпуск стабильной ветки 2.4.x, необходимый для работы веб-сервера TLS 1.3 с OpenSSL 1.1.1.

  • Многопроцессорные модули (MPM), которые изменяют способ, которым Apache прослушивает сеть, принимает и обрабатывает запросы для повышения эффективности
  • SNI (индикация имени сервера), который позволяет нескольким веб-сайтам использовать один IP-адрес, чтобы на каждом из них были установлены собственные SSL-сертификаты.
  1. Найдите раздел «Статус сервера» и нажмите «Статус Apache». Вы можете начать вводить «apache» в меню поиска, чтобы быстро сузить свой выбор.
  2. Текущая версия Apache отображается рядом с версией сервера на странице состояния Apache. В данном случае это версия 2.4.41.

Войдите в cPanel и найдите «Информация о сервере» слева в разделе «Общая информация».

Здесь вы можете увидеть, какая версия Apache работает на сервере.

  1. Войдите на свой сервер как пользователь root, используя ssh.
  2. Введите следующую команду, чтобы проверить версию Apache.

Вы получите следующий результат:-

Какая текущая версия Apache?

Текущая версия Apache — v 2.4.46. Хотя это небольшое обновление, несколько обновлений безопасности, связанных с CVE-2020-11984 и CVE-2020-11993. Основной версией сервера Apache была версия 2.4, выпущенная десять лет назад.

Что лучше Apache или nginx?

Как у Apache, так и у Nginx есть свои плюсы и минусы. Вот сравнение между Apache и Nginx, чтобы развеять все ваши сомнения.

На каком языке написан Apache?

Apache написан на C и XML.

Заключительные слова

Я надеюсь, что это краткое руководство поможет вам найти версию Apache.

Если есть какие-либо вопросы или сомнения, оставьте их в разделе комментариев.

Apache — наиболее часто используемый веб-сервер в системах Linux. Веб-серверы используются для обслуживания веб-страниц, запрашиваемых клиентскими компьютерами. Клиенты обычно запрашивают и просматривают веб-страницы с помощью приложений веб-браузера, таких как Firefox, Opera, Chromium или Internet Explorer.

Пользователи вводят унифицированный указатель ресурса (URL), чтобы указать на веб-сервер с помощью его полного доменного имени (FQDN) и пути к требуемому ресурсу. Например, чтобы просмотреть домашнюю страницу веб-сайта Ubuntu, пользователь введет только полное доменное имя:

Чтобы просмотреть подстраницу сообщества, пользователь должен ввести полное доменное имя, а затем путь:

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

Установка

Веб-сервер Apache2 доступен в Ubuntu Linux. Чтобы установить Apache2:

В терминале введите следующую команду:

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

Apache2 настраивается путем размещения директив в текстовых файлах конфигурации. Эти директивы разделены между следующими файлами и каталогами:

apache2.conf: основной файл конфигурации Apache2. Содержит настройки, которые являются глобальными для Apache2.

conf-available: этот каталог содержит доступные файлы конфигурации. Все файлы, которые ранее находились в /etc/apache2/conf.d, следует переместить в /etc/apache2/conf-available .

conf-enabled: содержит символические ссылки на файлы в /etc/apache2/conf-available . Когда файл конфигурации имеет символическую ссылку, он будет включен при следующем перезапуске apache2.

envvars: файл, в котором устанавливаются переменные среды Apache2.

mods-available: этот каталог содержит файлы конфигурации для загрузки модулей и их настройки. Однако не все модули будут иметь определенные файлы конфигурации.

mods-enabled: содержит символические ссылки на файлы в /etc/apache2/mods-available . Когда файл конфигурации модуля связан символической ссылкой, он будет включен при следующем перезапуске apache2.

ports.conf: содержит директивы, определяющие, какие TCP-порты прослушивает Apache2.

сайты доступны: в этом каталоге находятся файлы конфигурации для виртуальных хостов Apache2. Виртуальные хосты позволяют настроить Apache2 для нескольких сайтов с отдельными конфигурациями.

с поддержкой сайтов: как и с поддержкой модов, сайты с поддержкой содержат символические ссылки на каталог /etc/apache2/sites-enabled. Точно так же, когда файл конфигурации в Sites-Available является символической ссылкой, настроенный им сайт будет активен после перезапуска Apache2.

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

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

Сервер также считывает файл, содержащий типы MIME-документов; имя файла задается директивой TypesConfig, обычно через /etc/apache2/mods-available/mime.conf , которая также может включать дополнения и переопределения, и по умолчанию является /etc/mime.types.

Основные настройки

В этом разделе объясняются основные параметры конфигурации сервера Apache2. Дополнительные сведения см. в документации Apache2.

Apache2 поставляется с конфигурацией по умолчанию, удобной для виртуального хоста. То есть он настроен с одним виртуальным хостом по умолчанию (с помощью директивы VirtualHost), который можно изменить или использовать как есть, если у вас есть один сайт, или использовать в качестве шаблона для дополнительных виртуальных хостов. если у вас несколько сайтов. Если оставить его в покое, виртуальный хост по умолчанию будет служить вашим сайтом по умолчанию, или пользователи сайта увидят, не соответствует ли введенный ими URL-адрес директиве ServerName любого из ваших пользовательских сайтов. Чтобы изменить виртуальный хост по умолчанию, отредактируйте файл /etc/apache2/sites-available/000-default.conf .

Примечание

Директивы, установленные для виртуального хоста, применяются только к этому конкретному виртуальному хосту. Если директива установлена ​​для всего сервера и не определена в настройках виртуального хоста, используется настройка по умолчанию. Например, вы можете определить адрес электронной почты веб-мастера, а не отдельные адреса электронной почты для каждого виртуального хоста.

Если вы хотите настроить новый виртуальный хост или сайт, скопируйте этот файл в тот же каталог с выбранным вами именем. Например:

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

Директива ServerAdmin указывает адрес электронной почты, который будет рекламироваться для администратора сервера. Значение по умолчанию — webmaster@localhost. Это должно быть изменено на адрес электронной почты, который доставлен вам (если вы являетесь администратором сервера). Если на вашем веб-сайте возникла проблема, Apache2 отобразит сообщение об ошибке, содержащее этот адрес электронной почты, на который следует сообщить о проблеме. Найдите эту директиву в файле конфигурации вашего сайта в /etc/apache2/sites-available.

Директива Listen указывает порт и, возможно, IP-адрес, который Apache2 должен прослушивать. Если IP-адрес не указан, Apache2 будет прослушивать все IP-адреса, назначенные машине, на которой он работает. Значение по умолчанию для директивы Listen — 80. Измените это значение на 127.0.0.1:80, чтобы заставить Apache2 прослушивать только ваш петлевой интерфейс, чтобы он не был доступен в Интернете, на (например) 81, чтобы изменить порт, который он слушает или оставьте все как есть для нормальной работы. Эту директиву можно найти и изменить в отдельном файле /etc/apache2/ports.conf

Директива DocumentRoot указывает, где Apache2 должен искать файлы, составляющие сайт. Значение по умолчанию — /var/www/html, как указано в /etc/apache2/sites-available/000-default.conf. При желании измените это значение в файле виртуального хоста вашего сайта и не забудьте создать этот каталог, если это необходимо!

Включите новый VirtualHost с помощью утилиты a2ensite и перезапустите Apache2:

Примечание

Обязательно замените mynewsite на более описательное имя виртуального хоста. Один из способов — назвать файл после директивы ServerName VirtualHost.

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

Настройки по умолчанию

В этом разделе объясняется настройка параметров сервера Apache2 по умолчанию. Например, если вы добавите виртуальный хост, параметры, настроенные для виртуального хоста, будут иметь приоритет для этого виртуального хоста. Для директивы, не определенной в настройках виртуального хоста, используется значение по умолчанию.

DirectoryIndex – это страница по умолчанию, которую сервер обслуживает, когда пользователь запрашивает индекс каталога, указав косую черту (/) в конце имени каталога.

По умолчанию сервер записывает журнал передачи в файл /var/log/apache2/access.log . Вы можете изменить это для каждого сайта в файлах конфигурации вашего виртуального хоста с помощью директивы CustomLog или опустить его, чтобы принять значение по умолчанию, указанное в /etc/apache2/conf-available/other-vhosts. -access-log.conf . Вы также можете указать файл, в который заносятся ошибки, с помощью директивы ErrorLog, значение по умолчанию которой — /var/log/apache2/error.log . Они хранятся отдельно от журналов передачи, чтобы помочь в устранении неполадок с вашим сервером Apache2. Вы также можете указать LogLevel (значение по умолчанию — «warn») и LogFormat (значение по умолчанию см. в /etc/apache2/apache2.conf).

Некоторые параметры задаются для каждого каталога, а не для каждого сервера. Параметры — одна из этих директив. Раздел каталога заключен в XML-подобные теги, например:

Директива Options в разделе Directory принимает одно или несколько следующих значений (среди прочих), разделенных пробелами:

ExecCGI — разрешить выполнение сценариев CGI. Сценарии CGI не выполняются, если этот параметр не выбран.

Внимание!

Большинство файлов не должны выполняться как сценарии CGI.Это было бы очень опасно. CGI-скрипты должны храниться в каталоге, отдельном от вашего DocumentRoot и за его пределами, и только этот каталог должен иметь установленную опцию ExecCGI. Это значение по умолчанию, а расположение CGI-скриптов по умолчанию — /usr/lib/cgi-bin .

Включает — разрешить включение на стороне сервера. Включение на стороне сервера позволяет HTML-файлу включать другие файлы. Дополнительную информацию см. в документации по Apache SSI (сообщество Ubuntu).

Индексы — отображение отформатированного списка содержимого каталога, если в запрашиваемом каталоге нет DirectoryIndex (например, index.html).

Внимание!

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

Мультипросмотр — поддержка мультипросмотра с согласованием содержания; эта опция отключена по умолчанию из соображений безопасности. См. документацию Apache2 по этому параметру.

SymLinksIfOwnerMatch – переходите по символическим ссылкам только в том случае, если у целевого файла или каталога тот же владелец, что и у ссылки.

Настройки apache2

В этом разделе объясняются некоторые основные настройки конфигурации демона apache2.

LockFile. Директива LockFile задает путь к файлу блокировки, используемому при компиляции сервера с использованием либо USE_FCNTL_SERIALIZED_ACCEPT, либо USE_FLOCK_SERIALIZED_ACCEPT. Он должен храниться на локальном диске. Следует оставить значение по умолчанию, если только каталог журналов не находится в общем ресурсе NFS. В этом случае значение по умолчанию следует изменить на расположение на локальном диске и на каталог, доступный для чтения только пользователю root.

PidFile — директива PidFile задает файл, в котором сервер записывает свой идентификатор процесса (pid). Этот файл должен быть доступен для чтения только пользователю root. В большинстве случаев следует оставить значение по умолчанию.

Пользователь. Директива User устанавливает идентификатор пользователя, используемый сервером для ответа на запросы. Этот параметр определяет доступ к серверу. Любые файлы, недоступные для этого пользователя, также будут недоступны для посетителей вашего сайта. Значением по умолчанию для пользователя является «www-data».

Предупреждение

Если вы точно не знаете, что делаете, не устанавливайте для директивы User значение root. Использование root в качестве пользователя создаст большие дыры в безопасности вашего веб-сервера.

Группа. Директива Group аналогична директиве User. Группа задает группу, под которой сервер будет отвечать на запросы. Группа по умолчанию также «www-data».

Модули Apache2

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

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

Вы можете установить дополнительные модули Apache2 и использовать их на своем веб-сервере. Например, выполните следующую команду в терминале, чтобы установить модуль Python 3 WSGI:

Установка активирует модуль автоматически, но мы можем отключить его с помощью a2dismod :

А затем используйте утилиту a2enmod, чтобы снова включить его:

Дополнительные модули, уже доступные в вашей системе, см. в каталоге /etc/apache2/mods-available.

Модуль mod_ssl доступен в пакете apache2-common. Выполните следующую команду в терминале, чтобы включить модуль mod_ssl:

Примечание

Каталоги /etc/ssl/certs и /etc/ssl/private являются местоположениями по умолчанию. Если вы устанавливаете сертификат и ключ в другом каталоге, не забудьте соответствующим образом изменить SSLCertificateFile и SSLCertificateKeyFile.

Примечание

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

Общий доступ к записи

Чтобы несколько пользователей могли писать в один и тот же каталог, необходимо предоставить разрешение на запись группе, к которой они принадлежат. В следующем примере группе «веб-мастера» предоставляется совместное разрешение на запись в /var/www/html.

Эти команды рекурсивно устанавливают групповое разрешение для всех файлов и каталогов в /var/www/html, чтобы разрешить чтение, запись и поиск в каталогах. Многие администраторы находят это полезным, позволяя нескольким пользователям редактировать файлы в дереве каталогов.

Предупреждение

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

Ссылки

Документация Apache2 содержит подробную информацию о директивах конфигурации Apache2. Кроме того, официальную документацию по Apache2 см. в пакете apache2-doc.

Поваренная книга O’Reilly по Apache — хороший ресурс для выполнения определенных конфигураций Apache2.

Читайте также: