Remover porta 3002 de link de site através do apache

  • Autor Autor Grimmjow
  • Data de início Data de início
Tradução em andamento: em alguns minutos este tópico estará em português. Por enquanto, o conteúdo está no original em espanhol. Ver original
Grimmjow

Grimmjow

1
Sigma
Diseñador
Verificado
Verificación en dos pasos activada
Verificado por Binance
¡Excelente comerciante!
Suscripción a IA
Buen día, una consulta para lo que sepan más de apache. Saben como puedo hacer que toda la interfaz web se muestre sin el puerto en el url?, ya que de momento solo funciona si tiene https://testweb.com:3002/. Pero el fin es que todo se muestre tal cual desde https://testweb.com/ he probado redireccionar, pero no he tenido éxito, pues talvez lo he hecho mal.

Intente que funcionara con el enlace sin el puerto, pero al intentar iniciar sesión este te vuelve a la misma página de inicio y no ingresas.
 
Foi útil? Participe da conversa

Com sua conta grátis você pode responder, mandar mensagem privada ao autor e comprar com Saldo retido: o pagamento é liberado quando você recebe o combinado.

Leva 30 segundos · você volta a este tópico ao terminar
Hola @Grimmjow ¿has consultado con tu hosting? Quizás ellos puedan brindarte una solución sencilla.
 
No soy experto en apache, pero creería que lo que necesitas es un reverse proxy en el virtual host (en caso que lo administres tu mismo)
Me imagino que @Carlos Frias podría darte una idea más clara
 
Hola @Grimmjow ¿has consultado con tu hosting? Quizás ellos puedan brindarte una solución sencilla.
Es un servicio de VPS, y intente hacerlo en apache con:
No me han dado una solucion especifica.
Inserir CODE, HTML ou PHP:
RewriteRule index.html http://localhost:3000/ [P]
RewriteRule (.*) http://localhost:3000/$1 [P]

RewriteEngine On
RewriteCond %{SERVER_PORT} ^3000$
RewriteRule ^(.*)$ http://example.com/$1 [P]

<VirtualHost *:443>
    ServerName example.com
    DocumentRoot /var/www/example.com
    ProxyPass / http://localhost:3000/
    ProxyPassReverse / http://localhost:3000/
</VirtualHost>

<VirtualHost *:443>
    ServerName testweb.com
    SSLEngine on
    SSLCertificateFile /path/to/ssl/certificate
    SSLCertificateKeyFile /path/to/ssl/key

    ProxyPreserveHost On
    ProxyPass / http://localhost:3002/
    ProxyPassReverse / http://localhost:3002/
</VirtualHost>
 
No soy experto en apache, pero creería que lo que necesitas es un reverse proxy en el virtual host (en caso que lo administres tu mismo)
Me imagino que @Carlos Frias podría darte una idea más clara
Lo use, es justamene el ultimo codigo que adjunte arriba ¿verdad? y si espero a ver si puede ayudarme con este tema.
 
No puedes cambiar el puerto de tu aplicativo directo al 80 o 443?

En tu carpeta de sites available de apache modifica el archivo tusutio.com.conf


PHP:
<VirtualHost *:443>

    SSLEngine on
    SSLCertificateFile /etc/letsencrypt/live/tuweb.com/fullchain.pem
    SSLCertificateKeyFile /etc/letsencrypt/live/tuweb.com/privkey.pem
 
    ProxyPreserveHost On

    ServerName tuweb.com
 
    TimeOut 600 
 
    ProxyPass ""  http://localhost:3002
    ProxyPassReverse "" http://localhost:3002

</VirtualHost>

Luego sudo a2ensite tusutio.com.conf

Y luego reinicias apache2
 
El puerto por defecto para que no aparezca es el 80 y el 443 en HTTPS. La pregunta seria porque no podes ponerlos ahi en lugar de en el 3002. A partir de ahi se pueden buscar soluciones, una es poner un nginx haciendo de proxy inverso para que cuando entres por el 80 o 443 redireccione al 3002 pero lo mejor seria que lo pongas escuchando directamente en el 80/443, no se si lo tenes ocupado o porque motivo no podes?
 
Justamente no lo uso porque esta ocupado, en el VPS se tiene alojado a varias subwebs por asi decirlo. Es decir estoy queriendo remover en puerto del enlace :3002 para https://subfile2.testweb.com/
 
Te sale mejor hacer ese movimiento con NGINX como proxy reverso y convertir las reglas de los sitios nativos para que funcionen en NGINX de forma nativa y de esta forma tengas los menores problemas posibles. Como consejo elimina las redirecciones que tienes puestas ya que nodejs traduce perfectamente bien la URL detras de proxy... No son necesarias y de cierto modo no tiene logica ya que no sirven en todo el caso al no ser nodejs quien las interpreta.

Como mucho puedes bloquear el acceso por iptables al 3000, pero empiezas utilizando la URL sin el puerto...
 
Te sale mejor hacer ese movimiento con NGINX como proxy reverso y convertir las reglas de los sitios nativos para que funcionen en NGINX de forma nativa y de esta forma tengas los menores problemas posibles. Como consejo elimina las redirecciones que tienes puestas ya que nodejs traduce perfectamente bien la URL detras de proxy... No son necesarias y de cierto modo no tiene logica ya que no sirven en todo el caso al no ser nodejs quien las interpreta.

Como mucho puedes bloquear el acceso por iptables al 3000, pero empiezas utilizando la URL sin el puerto...
Lo mismo pensé incluso creo que en nginx es más fácil el proxy reverso que en apache2
 
Te sale mejor hacer ese movimiento con NGINX como proxy reverso y convertir las reglas de los sitios nativos para que funcionen en NGINX de forma nativa y de esta forma tengas los menores problemas posibles. Como consejo elimina las redirecciones que tienes puestas ya que nodejs traduce perfectamente bien la URL detras de proxy... No son necesarias y de cierto modo no tiene logica ya que no sirven en todo el caso al no ser nodejs quien las interpreta.

Como mucho puedes bloquear el acceso por iptables al 3000, pero empiezas utilizando la URL sin el puerto...
Gracias estimado, voy a probar usando NGINX. Me han dicho varios que esto solucionaria rapido mi problema, un saludo!
 
Voltar
Topo