Настройте apache для прослушивания на порту, отличном от 80
Я использую centos-сервер. Я хочу настроить apache для прослушивания на порту 8079.
Я добавил директиву LISTEN 8079 в httpd.conf
.
Я открыл порт 8079 в iptables и перезапустил iptables. Я даже остановил сервис iptables.
"netstat -nal | grep 8079" shows "tcp 0 0 :::8079 :::* LISTEN"
Если я попытаюсь получить доступ к http://localhost:8079
или http://myserver.com:8079
с этой машины, я могу получить доступ к этой странице. НО с любой другой машины я не могу получить доступ к сайту на любом порту, отличном от 80. На порту 80 он работает. На порту 8079 это не так.
Что еще мне нужно настроить?
Ответы
Ответ 1
Это проблема с брандмауэром. Был аппаратный брандмауэр, который блокировал доступ практически ко всем портам. (Отключение программного брандмауэра /SELinux bla bla не повлияло)
Затем я просмотрел открытые порты и использовал открытый порт.
Если вы столкнулись с одной и той же проблемой, выполните следующую команду
sudo nmap -T Aggressive -A -v 127.0.0.1 -p 1-65000
Он будет сканировать все открытые порты в вашей системе. Любой открытый порт может быть доступен извне.
Ссылка: http://www.go2linux.org/which_service_or_program_is_listening_on_port
Ответ 2
В /etc/apache2/ports.conf
измените порт как
Listen 8079
Затем перейдите в /etc/apache 2/sites-enabled/000-default.conf
И измените первую строку как
<VirtualHost *: 8079>
Теперь перезапустите
sudo service apache2 restart
Теперь Apache будет прослушивать порт 8079 и перенаправлять на/var/www/html
Ответ 3
Откройте файл httpd.conf в текстовом редакторе.
Найдите эту строку:
Listen 80
и измените его
Listen 8079
После изменения сохраните его и перезапустите apache.
Ответ 4
Это работает для меня на Centos
Сначала: в файле /etc/httpd/conf/httpd.conf
добавить
Listen 8079
после
Listen 80
Это позволит вашему серверу прослушивать порт 8079
Второй: перейдите на ваш виртуальный хост для ex. /etc/httpd/conf.d/vhost.conf
и добавьте этот код ниже
<VirtualHost *:8079>
DocumentRoot /var/www/html/api_folder
ServerName example.com
ServerAlias www.example.com
ServerAdmin [email protected]
ErrorLog logs/www.example.com-error_log
CustomLog logs/www.example.com-access_log common
</VirtualHost>
Это означает, что при переходе на www.example.com:8079
перенаправление на
/вар/WWW/HTML/api_folder
Но вам нужно сначала перезапустить службу
sudo service httpd restart
Ответ 5
Если вы используете Apache в Windows:
- Проверьте имя службы Apache с помощью Win + R +
services.msc
+ Enter (если это не ApacheX.Y, оно должно иметь имя программного обеспечения, которое вы используете с apache, например: "wampapache64" );
- Запустите командную строку как Администратор (используя Win + R +
cmd
+ Enter недостаточно);
- Перейдите в каталог Apache, например:
cd c:\wamp\bin\apache\apache2.4.9\bin
;
- Убедитесь, что файл конфигурации в порядке:
httpd.exe -n "YourServiceName" -t
(замените имя службы тем, что вы нашли на шаге 1);
- Убедитесь, что служба остановлена:
httpd.exe -k stop -n "YourServiceName"
- Начните с:
httpd.exe -k start -n "YourServiceName"
-
Если все будет хорошо, проблемы больше нет, но если вы получите:
AH00072: make_sock: не удалось привязать адрес IP: PORT_NUMBER
AH00451: нет доступных гнезд для прослушивания, выключение
Если номер порта не тот, который вы хотели использовать, затем откройте файл конфигурации Apache (например, C:\wamp\bin\apache\apache2.4.9\conf\httpd.conf
откройте редактор кода или текстовый блок, но не блокнот), он не читает новые строки правильно) и замените номер в строке, начинающейся с Listen
, с номером нужного порта, сохраните его и повторите шаг 6. Если это тот, который вы хотели использовать, затем продолжайте:
- Проверьте PID процесса, который использует этот порт, с Win + R +
resmon
+ Enter, перейдите на вкладку Сеть, а затем Порты subtab;
- Убейте его:
taskkill /pid NUMBER /f
(/f
заставляет его);
- Подтвердите
resmon
, чтобы подтвердить, что порт свободен и повторите шаг 6.
Это гарантирует, что служба Apache была запущена должным образом, конфигурация в конфигурационном файле виртуальных хостов, как указано sarul (например: C:\wamp\bin\apache\apache2.4.9\conf\extra\httpd-vhosts.conf
), необходима, если вы настраиваете путь к файлам и изменение порта. Если вы измените его снова, не забудьте перезапустить службу: httpd.exe -k restart -n "YourServiceName"
.
Ответ 6
Для сервера FC22
cd/etc/httpd/conf
изменить httpd.conf [enter]
Изменить:
Слушайте 80
чтобы:
Прослушать anynumber
Сохраните файл
systemctl restart httpd.service [enter]
если необходимо, откройте whatnumber в своем маршрутизаторе/брандмауэре