Настройте 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 это не так.

что еще нужно ли настраивать?

7 ответов


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

Listen 8079

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

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

<VirtualHost *: 8079>

теперь перезапустите

sudo service apache2 restart

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


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

Listen 80

и изменить его

Listen 8079

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


Это была проблема брандмауэра. Был аппаратный брандмауэр, который блокировал доступ почти ко всем портам. (Отключение программного брандмауэра / 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


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

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

добавить

Listen 8079 

после

Listen 80

это до вашего сервера, чтобы слушать порт 8079

второй: перейти к виртуальному хосту для ex. / etc/httpd / conf.д/к 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 перенаправить на

/var/www/html / api_folder

но сначала вам нужно перезапустить службу

sudo service httpd restart


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

" /etc/apache2 / ports.conf"

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

Listen 80
Listen 81
Listen 82

после того, как вы перейдете на ваш виртуальный файл hosts conf an define next

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


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


<VirtualHost *:82>
  #...host 3
</VirtualHost>

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

  1. Проверьте имя службы Apache с помощью Win+R+services.msc+ Enter (если это не ApacheX.Y, он должен иметь имя программного обеспечения, которое вы используете с apache, например: "wampapache64");
  2. начать командная строка как администратор (используя Win+R+cmd+ Enter не хватает);
  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+ Enter, нажмите кнопку сеть tab, а затем на порты subtab;
  9. убить его с: taskkill /pid NUMBER /f (/f силы);
  10. Проверьте resmon для того чтобы подтвердить что порт свободен теперь и повторить шаг 6.

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


для сервера FC22

компакт-диск /и т. д./httpd/conf файл редактировать файл httpd.conf [enter]

изменить: Слушать 80 к: Слушайте whatevernumber

сохраните файл

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