Настройте apache для прослушивания порта, отличного от 80 - PullRequest
90 голосов
/ 15 октября 2010

Я использую сервер 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 это не так.

Что еще мне нужно настроить?

Ответы [ 7 ]

122 голосов
/ 26 сентября 2014

В /etc/apache2/ports.conf измените порт на

Listen 8079

Затем перейдите в /etc/apache2/sites-enabled/000-default.conf

И измените первую строку на

<VirtualHost *: 8079>

Теперь перезагрузите

sudo service apache2 restart

Apache теперь будет прослушивать порт 8079 и перенаправлять на / var / www / html

76 голосов
/ 15 октября 2010

Откройте файл httpd.conf в вашем текстовом редакторе.Найдите эту строку:

Listen 80

и измените ее

Listen 8079

После изменения сохраните и перезапустите apache

21 голосов
/ 20 октября 2010

Это была проблема с брандмауэром.Был аппаратный брандмауэр, который блокировал доступ почти ко всем портам.(Отключение программного брандмауэра / SELinux bla bla не имело никакого эффекта)

Затем я сканировал открытые порты и использовал открытый порт.

Если вы столкнулись с той же проблемой, выполните следующую команду

sudo nmap -T Aggressive -A -v 127.0.0.1 -p 1-65000

Она проверит все открытые порты в вашей системе.Доступ к любому открытому порту возможен снаружи.

Ref .: http://www.go2linux.org/which_service_or_program_is_listening_on_port

8 голосов
/ 27 марта 2018

Если вам нужен порт прослушивания apache, отличный от 80, вы должны добавить следующий файл в ubuntu

"/ etc / apache2 / ports.conf"

список портов прослушивания

Listen 80
Listen 81
Listen 82

После того, как вы перейдете в файл конфигурации виртуальных хостов, определите следующее

<VirtualHost *:80>
  #...v host 1
</VirtualHost>


<VirtualHost *:81>
  #...host 2
</VirtualHost>


<VirtualHost *:82>
  #...host 3
</VirtualHost>
7 голосов
/ 30 декабря 2015

Это работает для меня на Centos

Первый: в файле / etc / httpd / conf / httpd.conf

добавить

Listen 8079 

после

Listen 80

Это пока ваш сервер слушает порт 8079

Второе: зайдите на ваш виртуальный хост, например. / и т.д. / HTTPD / conf.d / vhost.conf

и добавьте этот код ниже

<VirtualHost *:8079>
   DocumentRoot /var/www/html/api_folder
   ServerName example.com
   ServerAlias www.example.com
   ServerAdmin root@example.com
   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

2 голосов
/ 04 февраля 2016

Если вы используете Apache в Windows :

  1. Проверьте имя службы Apache с помощью Win + R +services.msc + Введите (если это не ApacheX.Y, оно должно содержать название программного обеспечения, которое вы используете с apache, например: "wampapache64");
  2. Запустить командная строка как Администратор (с использованием Win + R + cmd + Введите недостаточно);
  3. Перейдите в каталог Apache, например: cd c:\wamp\bin\apache\apache2.4.9\bin;
  4. Проверьте, в порядке ли файл конфигурации: httpd.exe -n "YourServiceName" -t (замените имя службы на имя, которое вы нашли на шаге 1);
  5. Убедитесь, что служба остановлена: httpd.exe -k stop -n "YourServiceName"
  6. Запустите ее с: httpd.exe -k start -n "YourServiceName"
  7. Если все начинается нормально, проблемы больше нет, ноесли вы получаете:

    AH00072: make_sock: невозможно привязать к IP-адресу: PORT_NUMBER

    AH00451: нет доступных сокетов прослушивания, отключение

    Еслиномер порта не тот, который вы хотелиЗатем откройте файл конфигурации Apache (например, C:\wamp\bin\apache\apache2.4.9\conf\httpd.conf, откройте с помощью редактора кода или WordPad, но не Блокнот - он не будет правильно читать новые строки) и замените число в строке, начинающейся с Listen с номером нужного порта, сохраните его и повторите шаг 6. Если это тот порт, который вы хотели использовать, продолжите:

  8. Проверьте PID процесса, который использует этотпорт с Win + R + resmon + Введите , нажмите вкладку Сеть и затем Порты subtab;
  9. Убить его с помощью: taskkill /pid NUMBER /f (/f принудительно);
  10. Перепроверьте resmon, чтобы подтвердить, что порт свободен и повторите шаг 6.

Это гарантирует, что служба Apache была запущена правильно, настройка файла конфигурации виртуальных хостов, как упомянул sarul (например: C:\wamp\bin\apache\apache2.4.9\conf\extra\httpd-vhosts.conf), необходима, если вы задаете путь к файлам там и меняетепорт также.Если вы измените его снова, не забудьте перезапустить службу: httpd.exe -k restart -n "YourServiceName".

1 голос
/ 23 августа 2015

Для сервера FC22

cd / etc / httpd / conf редактировать httpd.conf [ввод]

Изменение: Слушай 80 чтобы: Слушай какой номер

Сохранить файл

systemctl перезапустите httpd.service [введите] при необходимости откройте любой номер в вашем роутере / брандмауэре

...