Remover puerto 3002 de enlace de sitio web mediante apache

  • Autor Autor Grimmjow
  • Fecha de inicio Fecha de inicio
Grimmjow

Grimmjow

1
Sigma
Diseñador
Verificado
Verificación en dos pasos activada
Verificado por Whatsapp
¡Ha verificado su Paypal!
Verificado por Binance
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.
 
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.
Insertar CODE, HTML o 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!
 
Atrás
Arriba