Configure o apache para escutar na porta diferente de 80


102

Eu uso o servidor centOS. Quero configurar o apache para escutar na porta 8079. Eu adicionei a diretiva LISTEN 8079 no httpd.conf.
Abri a porta 8079 no iptables e reiniciei o iptables. Até parei o serviço iptables.

"netstat -nal | grep 8079" shows "tcp  0 0 :::8079 :::* LISTEN"

Se eu tentar acessar http://localhost:8079ou a http://myserver.com:8079partir dessa máquina, posso acessar essa página. MAS de qualquer outra máquina não consigo acessar o site em nenhuma porta diferente da 80. Na porta 80, funciona. Na porta 8079, não.

O que mais eu preciso configurar?

Respostas:


138

Em /etc/apache2/ports.conf, altere a porta como

Listen 8079

Em seguida, vá para /etc/apache2/sites-enabled/000-default.conf

E mude a primeira linha como

<VirtualHost *: 8079>

Agora reinicie

sudo service apache2 restart

O Apache agora ouvirá na porta 8079 e redirecionará para / var / www / html


1
Não, apenas a mensagem irritante "Esta página da web não está disponível". Só para esclarecer, a porta 80 funciona perfeitamente. Alterar o VirtualHost e o Listen não resolve para mim. (AWS Ubuntu). A propósito, o motivo pelo qual preciso ouvir uma porta diferente é porque eu também configurei o nginx para ouvir 80.
Tomer

1
pergunta rápida: você abriu a porta de entrada nos grupos de segurança ao dizer que está no AWS ubuntu?
Shankar ARUL - jupyterdata.com

1
se houver linha NameVirtualHost *:80acima Listen 80, altere isso também ...
Haider Ali

75

Abra o arquivo httpd.conf em seu editor de texto. Encontre esta linha:

Listen 80

e mudar isso

Listen 8079

Após a alteração, salve-o e reinicie o apache.


3
sim, mas mencionei na primeira linha que já tentei esta "Eu adicionei a diretiva LISTEN 8079 em httpd.conf": ((
vivek.m

Oh, sory. Eu não vi isso. Você pode postar o arquivo httpd.conf em qualquer lugar? E você está usando o software de terceiros Wamp, Xampp, Appserv?
ismailperim

você pode obter httpd.conf aqui fileuploading.net/860467 nada como WAMP, Xampp, Appserv. Tudo o que fiz foi compilar o conector apache, tomcat e jk da fonte e tentar o meu melhor para fazê-los funcionar juntos.
vivek.m

não encontrei o problema :( tudo parece normal. Tentei adicionar a linha Listen 8076 no meu servidor local, mas funcionou normalmente. Você pode tentar reconfigurar o apache se for possível?
ismailperim

2
Uma coisa que todos parecem esquecer ao responder a esse tipo de pergunta é mencionar a localização do arquivo. O arquivo está localizado em /etc/apache2/ports.conf
Mateus Viccari 01 de

23

Foi um problema de firewall. Havia um firewall de hardware bloqueando o acesso a quase todas as portas. (Desligar o firewall de software / SELinux bla bla não teve efeito)

Então eu fiz a varredura das portas abertas e usei a porta que estava aberta.

Se você estiver enfrentando o mesmo problema, execute o seguinte comando

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

Ele fará a varredura de todas as portas abertas em seu sistema. Qualquer porta aberta pode ser acessada externamente.

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


netstat -anp | grep apache2 (você pode ver a porta de escuta e o PID deste se estiver em
execução

Meu provedor de serviços em nuvem tinha um firewall no topo que estava bloqueando a porta. Verifique os firewalls colocados fora do servidor de destino.
Yamada

16

Se você precisa de uma porta de escuta do apache diferente de 80, você deve adicionar o próximo arquivo no Ubuntu

"/etc/apache2/ports.conf"

a lista de portas de escuta

Listen 80
Listen 81
Listen 82

Depois você tem que ir em seu arquivo de configuração de hosts virtuais e definir o próximo

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


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


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

7

Isso está funcionando para mim no Centos

Primeiro: no arquivo /etc/httpd/conf/httpd.conf

adicionar

Listen 8079 

depois de

Listen 80

Isso até seu servidor ouvir a porta 8079

Segundo: vá para seu host virtual por ex. /etc/httpd/conf.d/vhost.conf

e adicione este código abaixo

<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>

Isso significa que quando você vai para o seu www.example.com:8079redirecionamento para

/ var / www / html / api_folder

Mas você precisa primeiro reiniciar o serviço

sudo service httpd restart


2

Se você estiver usando o Apache no Windows :

  1. Verifique o nome do serviço Apache com Win+ R+ services.msc+ Enter(se não for ApacheX.Y, deve ter o nome do software que você está usando com apache, por exemplo: "wampapache64");
  2. Inicie um prompt de comando como Administrador (usar Win+ R+ cmd+ Enternão é suficiente);
  3. Mude para o diretório do Apache, por exemplo cd c:\wamp\bin\apache\apache2.4.9\bin:;
  4. Verifique se o arquivo de configuração está OK com: httpd.exe -n "YourServiceName" -t(substitua o nome do serviço por aquele que você encontrou na etapa 1);
  5. Certifique-se de que o serviço seja interrompido: httpd.exe -k stop -n "YourServiceName"
  6. Comece com: httpd.exe -k start -n "YourServiceName"
  7. Se começar bem, o problema não está mais aí, mas se você obtiver:

    AH00072: make_sock: não foi possível ligar ao endereço IP: PORT_NUMBER

    AH00451: sem tomadas de escuta disponíveis, desligando

    Se o número da porta não for o que você deseja usar, abra o arquivo de configuração do Apache (por exemplo, C:\wamp\bin\apache\apache2.4.9\conf\httpd.confabra com um editor de código ou wordpad, mas não o bloco de notas - ele não lê novas linhas corretamente) e substitua o número na linha que começa com Listeno número da porta desejada, salve-o e repita a etapa 6. Se for a que deseja usar, continue:

  8. Verifique o PID do processo que está usando essa porta com Win+ R+ resmon+ Enter, clique na aba Rede e a seguir na sub-aba Portas ;
  9. Mate-o com: taskkill /pid NUMBER /f( /fforça);
  10. Verifique novamente resmonpara confirmar se a porta está livre agora e repita a etapa 6.

Isso garante que o serviço do Apache foi iniciado corretamente, a configuração no arquivo de configuração de hosts virtuais como sarul mencionado (por exemplo :)C:\wamp\bin\apache\apache2.4.9\conf\extra\httpd-vhosts.conf é necessária se você estiver definindo o caminho de seus arquivos lá e alterando a porta também. Se você alterá-lo novamente, lembre-se de reiniciar o serviço: httpd.exe -k restart -n "YourServiceName".


1

Para servidor FC22

cd / etc / httpd / conf edite httpd.conf [enter]

Mudança: Ouça 80 para: Ouça qualquer número

Salve o arquivo

systemctl reinicie httpd.service [enter] se necessário, abra qualquer número no seu roteador / firewall

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.