Смени порт Apache за 5 минут: полный гайд для Ubuntu и CentOS
Порт 80 занят или вам нужна дополнительная служба? Не останавливая весь сервер, вы можете легко переназначить, на каком порту будет работать ваш Apache. Это ключ к решению конфликтов, запуску тестовых сред и усилению безопасности.
Забудьте о сложных перекомпиляциях! Мы покажем, как гибкость Apache позволяет менять конфигурации на лету. Всё, что вам нужно — это доступ к консоли и наш понятный гид.
Вы узнаете точные пути к конфигурационным файлам для двух самых популярных семейств ОС: Ubuntu/Debian и CentOS/RHEL. Мы не оставим вас в догадках.
Мы шаг за шагом разберем, как добавить новый порт, например, 8081, в нужный конфиг. Куда именно вписать директиву `Listen` — смотрите в материале.
Но это только половина дела! После изменения порта необходимо обновить настройки виртуальных хостов. Мы подскажем, какой файл редактировать, чтобы ваш сайт начал отвечать на новом порту.
Простое редактирование — и сервер нужно перезапустить. Мы дадим команды для безопасного рестарта службы в обеих системах.
Как проверить, что всё получилось? Узнайте, какие утилиты (`netstat` или `ss`) покажут, что Apache действительно слушает новый порт.
А что если страница всё равно не открывается? Частая причина — фаервол или SELinux. Мы затронем и этот момент, чтобы вы могли уверенно добавить исключения.
Готовы взять под полный контроль конфигурацию вашего веб-сервера? Переходите к статье и осваивайте настройку портов Apache like a pro!
HTTP сервер Apache – один из наиболее часто используемых веб-серверов в интернете на сегодняшний день. По своим характеристикам и многофункциональности он превосходит своих конкурентов (таких, как Nginx).
Одной из наиболее значимых функций Apache является возможность загружать и запускать различные типы модулей и конфигураций, не останавливая работу веб-сервера. Кроме того, не нужно каждый раз перекомпилировать сервер, добавляя в него новые модули. Важную роль играют .htaccess файлы, которые могут изменять конфигурации веб-сервера в определенных каталогах. В этой статье мы рассмотрим как изменить порт apache в Ubuntu и CentOS.
Как изменить порт Apache
Сервер Apache по умолчанию настроен на ожидание входящих соединений через порт 80. Если настроить протокол TLS, сервер будет слушать соединения через порт 443. Для использования других портов, необходимо подправить конфигурационный файл Apache.
В системе Debian/Ubuntu, требуется изменить файл конфигурации /etc/apache2/ports.conf, а в дистрибутивах на основе RHEL/CentOS - /etc/httpd/conf/httpd.conf. В зависимости от дистрибутива системы, откройте нужный файл с помощью текстового редактора и добавьте новый порт следующим образом:
sudo nano /etc/apache2/ports.conf
sudo nano /etc/httpd/conf/httpd.conf
В этом примере мы настроим HTTP сервер Apache для ожидания подключений на порту 8081. Убедитесь, что после директивы Listen 80, дающей указание серверу прослушивать порт 80, была добавлена следующая строка:
Listen 8081
После того, как вы добавили приведенную выше строку, вам нужно создать или изменить виртуальные хосты Apache, чтобы привязать хост к нужному порту. В приведенном ниже примере мы изменим порт Apache для стандартного виртуального хоста веб-сервера с 80 на 8081.
Нужно открыть и отредактировать файл /etc/apache2/sites-enabled/000-default.conf, указав порт 8081, как показано на картинке ниже.
sudo nano /etc/apache2/sites-enabled/000-default.conf
Чтобы применить изменения и новые порты Apache стали доступны, перезапустите сервис. После перезапуска порт 8081 должен отображаться в выводе утилиты ss или netstat. Команды для Ubuntu:
sudo systemctl restart apache2
sudo netstat -tlpn | grep apache
sudo ss -tlpn | grep apache
Для CentOS:
sudo systemctl restart httpd
sudo netstat -tlpn | grep httpd
sudo ss -tlpn | grep httpd
Настройка портов apache завершена. Теперь вы можете открыть браузер и зайти на веб-сервер, введя доменное имя или IP-адрес и порт 8081. Страница Apache должна отобразиться в браузере. Однако, если вы не можете просмотреть веб-страницу, вернитесь на консоль сервера и убедитесь, что правила брандмауэра установлены верно для разрешения сетевого трафика по данному порту:
http://server_ip:8081
Если у вас включен SELinux в CentOS или RHEL установите пакет policycoreutils, чтобы добавить необходимые правила. А потом перезапустите Apache для применения изменений.
sudo yum install policycoreutils
Чтобы открыть порт Apache 8081 добавьте правила SELinux.
sudo semanage port -a -t http_port_t -p tcp 8081
sudo semanage port -m -t http_port_t -p tcp 8081
sudo systemctl restart httpd
Откройте браузер и попытайтесь перейти на ваш сервер по IP-адресу или доменному имени через порт 8081. Убедитесь в работоспособности порта. В браузере должна отобразиться страница Apache.
http://server_ip:8081
Если вы вcё ещё не можете получить доступ к данному адресу убедитесь, что этот порт разрешен в брандмауэре вашего сервера.