|
|||||||
Как установить веб-сервер Apache на Ubuntu 16.04
Время создания: 28.01.2019 18:14
Автор: alensav
Текстовые метки: apache, servver, phpmyadmin
Раздел: MyTetra - Ubuntu_Command
Запись: alensav/MyTetra2/main/base/1548688499rwkslvab4d/text.html на raw.githubusercontent.com
|
|||||||
|
|||||||
Как установить веб-сервер Apache на Ubuntu 16.04 20.07.2017 10:59 #VDS #Apache #Linux/Ubuntu #Firewall =========================================== **** Если не видит phomyadmin В /etc/apache2/conf-available/phpmyadmin.conf нужно перенести конфиг /etc/phpmyadmin/apache2.conf ================================================ Введение Веб-сервер Apache – один из самых распространенных в мире. Apache имеет широкий функционал, включающий динамически загружаемые модули, активное сообщество пользователей и отличную интеграцию с другим популярным ПО. Из этого руководства вы узнаете о том, как установить Apache на сервер с установленной ОС Ubuntu 16.04. Требования Для того, чтобы выполнить необходимые действия, вам понадобится сервер с установленной ОС Ubuntu 16.04 и пользователем, который может выполнять команды sudo (не суперпользователь). Также вы можете настроить базовый фаервол для блокировки несущественных портов. Если все готово, то авторизуйтесь под нужным пользователем перед выполнением дальнейших шагов.
Шаг 1: установка Apache Apache доступен в стандартных репозиториях Ubuntu, поэтому веб-сервер можно установить, используя обычную утилиту для установки программных пакетов apt-get. Сначала необходимо обновить локальный индекс доступных пакетов для того, чтобы увидеть все последние изменения в репозиториях: $ sudo apt-get update После этого нужно установить пакет apache2: $ sudo apt-get install apache2 После подтверждения утилита apt-get установит Apache и все необходимые зависимости. Шаг 2: настройка фаервола Перед тем, как протестировать Apache, необходимо модифицировать фаервол, а именно разрешить внешний доступ к стандартным веб-портам. Если вы выполнили требования в начале статье, то сейчас фаервол запрещает доступ к вашему серверу. Во время установки Apache тоже регистрируется в UFW и создает несколько профилей. Эти профили могут использоваться для того, чтобы упростить процесс включения или выключения доступа к Apache через фаервол. Для того, чтобы вывести все профили UFW, используйте команду: $ sudo ufw app list Вывод будет примерно таким: Available applications: Apache Apache Full Apache Secure OpenSSH Как вы видите, для Apache доступно три профиля: Apache: этот профиль открывает 80 порт (обычный, незашифрованный веб-трафик) Apache Secure: этот профиль открывает только 443 порт (TLS/SSL зашифрованный трафик) Apache Full: этот профиль открывает оба порта – 80 и 443 В данном случае вам необходимо разрешить входящий трафик профиля Apache Full следующей командой: $ sudo ufw allow 'Apache Full' Проверьте изменение: $ sudo ufw status В выводе вы должны увидеть, что HTTP трафик разрешен: Output Status: active To Action From -- ------ ---- OpenSSH ALLOW Anywhere Apache Full ALLOW Anywhere OpenSSH (v6) ALLOW Anywhere (v6) Apache Full (v6) ALLOW Anywhere (v6) Как вы видите, профиль был активирован, и доступ к веб-серверу разрешен. Шаг 3: проверка веб-сервера В конце процесса установки Ubuntu 16.04 запускает Apache. Веб-сервер уже должен работать. Для того, чтобы убедиться в том, что сервис уже работает, введите следующую команду: $ sudo systemctl status apache2 Вывод будет примерно вот таким: Output ● apache2.service - LSB: Apache2 web server Loaded: loaded (/etc/init.d/apache2; bad; vendor preset: enabled) Drop-In: /lib/systemd/system/apache2.service.d └─apache2-systemd.conf Active: active (running) since Fri 2017-05-27 18:30:10 UTC; 1h 5min ago Docs: man:systemd-sysv-generator(8) Process: 4336 ExecStop=/etc/init.d/apache2 stop (code=exited, status=0/SUCCESS) Process: 4359 ExecStart=/etc/init.d/apache2 start (code=exited, status=0/SUCCESS) Tasks: 55 Memory: 2.3M CPU: 4.094s CGroup: /system.slice/apache2.service ├─4374 /usr/sbin/apache2 -k start ├─4377 /usr/sbin/apache2 -k start └─4378 /usr/sbin/apache2 -k start May 27 18:30:09 ubuntu-512mb-nyc3-01 systemd[1]: Stopped LSB: Apache2 web server. May 27 18:30:09 ubuntu-512mb-nyc3-01 systemd[1]: Starting LSB: Apache2 web server... May 27 18:30:09 ubuntu-512mb-nyc3-01 apache2[4359]: * Starting Apache httpd web server apache2 May 27 18:30:09 ubuntu-512mb-nyc3-01 apache2[4359]: AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1. Set the 'ServerName' directive globally to suppress this message May 27 18:30:10 ubuntu-512mb-nyc3-01 apache2[4359]: * May 27 18:30:10 ubuntu-512mb-nyc3-01 systemd[1]: Started LSB: Apache2 web server. Как вы видите, сервис успешно запущен. Однако лучший способ протестировать – это запросить у Apache страницу. Например, можно получить доступ к стандартной лендинг-странице Apache для того, чтобы убедиться в том, что все работает корректно. Это можно сделать используя доменное имя сервера или IP-адрес. IP-адрес можно использовать в том случае, если вы не хотите задавать какое-либо имя вашему серверу. Если вы не знаете IP-адрес вашего сервера, то получить его можно следующими способами. 1 вариант. Ввести в командной строке сервера: $ hostname –I В ответ вы увидите несколько адресов, разделенных пробелами. Попробуйте ввести каждый из них в адресную строку браузера для того, чтобы проверить их. 2 вариант. Следующие команды также помогут вам получить IP-адрес вашего сервера (как будто вы обращаетесь к нему из другого места сети): $ sudo apt-get install curl $ curl -4 icanhazip.com После того, как вы узнали IP-адрес или домен, введите его в адресную строку браузера. Вам должна высветиться стандартная приветственная страница Apache, которая будет выглядеть вот так: Шаг 4: базовые команды Apache Для работы с веб-сервером Apache вам необходимо знать базовые команды. Команда для остановки веб-сервера: $ sudo systemctl stop apache2 Команда для запуска веб-сервера (после остановки): $ sudo systemctl start apache2 Команда для перезапуска (остановки и запуска): $ sudo systemctl restart apache2 Если вы внесли какие-то изменения в конфигурацию, то вы зачастую можете перезапустить Apache без разрыва соединений. Для этого используйте команду: $ sudo systemctl reload apache2 По умолчанию Apache настроен на автоматический запуск после начала работы сервера. Но эту настройку можно изменить при помощи команды: $ sudo systemctl disable apache2 Если же вы все-таки хотите, чтобы Apache запускался вместе с сервером, введите: $ sudo systemctl enable apache2 Теперь Apache снова будет автоматически запускаться после загрузки сервера. Шаг 5: важные файлы и директории Apache После того, как вы научились работать с сервером, необходимо поговорить о нескольких важных директориях и файлах Apache. Контент /var/www/html: здесь находится тот веб-контент, который изначально стоит только из стандартной приветственной страницы Apache, которую вы видели выше. Конфигурация сервера /etc/apache2: конфигурационная директория Apache. Здесь находятся все конфигурационные файлы. /etc/apache2/apache2.conf: основной конфигурационный файл Apache. Его можно использовать для общих конфигурационных изменений Apache. Этот же файл отвечает за загрузку остальных конфигурационных файлов в этой директории. /etc/apache2/ports.conf: этот файл отвечает за порты, которые используются для подключения к серверу. По умолчанию это порт 80 и иногда 443 порт (если включен модуль для обработки SSL). /etc/apache2/sites-available/: в этой директории для каждого сайта хранятся виртуальные хосты (Virtual Hosts). Apache не будет использовать файлы из этой директории до тех пор, пока они не привязаны к директории sites-enables. То есть sites-available – это все доступные хосты, а sites-enabled – это включаемые сервером. Поэтому для создания нового виртуального хоста вам нужно сначала создать его файл в этой директории, а затем дать ссылку на этот виртуальный хост в директории sites-enabled для того, чтобы включить его. /etc/apache2/sites-enabled/: директория для включения виртуальных хостов, которая была упомянута выше. /etc/apache2/conf-available/, /etc/apache2/conf-enabled/: директории для тех конфигурационных фрагментов, которые не связаны с виртуальными хостами. Связь между этими диреториями схожа со связью между двумя директориями выше. Файлы в conf-available вы можете включать при помощи команды a2enconf и выключать командой a2disconf. /etc/apache2/mods-available/, /etc/apache2/mods-enabled/: эти директории содержат доступные и включенные модули соответственно. Файлы, которые заканчиваются на .load, содержат фрагменты для загрузки определенных модулей, а файлы, заканчивающиеся на .conf , содержат настройки для этих модулей. Для включения модулей используйте команду a2enmod, для выключения – a2dismod. Логи сервера /var/log/apache2/access.log: по умолчанию каждый запрос к вашему серверу записывается в этот лог (до тех пор, пока вы не измените эту настройку). /var/log/apache2/error.log: по умолчанию в этот лог записываются все ошибки. Директива LogLevel определяет, какое количество информации об ошибках будет записываться. Заключение Теперь у вас есть установленный веб-сервер, и у вас есть большой выбор контента, который вы можете размещать, и технологий, которые вы можете использовать. |
|||||||
Так же в этом разделе:
|
|||||||
|
|||||||
|