Wie kann ich „localhost:8080“ einfach auf „localhost“ abbilden?

Wie kann ich „localhost:8080“ einfach auf „localhost“ abbilden?

Mit der Hosts-Datei kann ich so etwas nicht tun:

127.0.0.1:8080 testing

Deshalb werde ich schreiben müssen

127.0.0.1 testing
http://testing:8080 

um dasselbe zu tun.

Das Problem besteht darin, dass ich auf die IP zugreifen können muss, ohne einen Port eingeben zu müssen. Habe ich irgendwelche Möglichkeiten, dies zu tun?

Antwort1

Sie können einen Reverse-Proxy einrichten, der Port 80 bedient und alle Anfragen an 8080 weiterleitet.

Apache ist einer der Webserver, die dies für Sie tun können. Es gibt eine grundlegendeBeispiel für Reverse-Proxyingin der mod_proxy-Dokumentation.

Antwort2

Die Hosts-Datei bindet nur Hostnamen an IP-Adressen.

Standardmäßig läuft HTTP über Port 80. Wenn Sie also einen Hostnamen an 127.0.0.1 binden und dann den Hostnamen in Ihrem Browser aufrufen (über HTTP), implizieren Sie Port 80.

Sie müssten einen Proxyserver einrichten, der Port 80 abhört und die Anfragen an Port 8080 weiterleitet. Ihr Webserver müsste weiterhin auf Port 8080 laufen

Antwort3

Die Hosts-Datei dient dazu, einen Namen einer IP zuzuordnen.
Sie möchten eine Firewall-Aufgabe ausführen.
Oder Sie konfigurieren die Anwendung so, dass sie auf 80 statt auf 8080 läuft.
Mit iptables könnten Sie Folgendes tun:

iptables -t nat -I PREROUTING -p tcp -i eth0 -d 127.0.0.1 --dport 8080 -j DNAT --to-destination 127.0.0.1:80

Antwort4

Zum Abhören von Ports unter 1000 benötigen Sie zusätzliche Berechtigungen. Dies ist wahrscheinlich der Grund, warum Sie auf Port 8080 und nicht auf Port 80 lauschen. Sie können einen Reverse-Proxy mit Apache, Squid, Varnish oder verschiedenen anderen Proxys einrichten.

Oder Sie bringen die Software einfach dazu, auf Port 80 zu lauschen, indem Sie ihr die Rechte hochstufen lassen und die richtigen Parameter übergeben. Was ist das für eine Software? Wir können Ihnen wahrscheinlich dabei helfen, sie dazu zu bringen, auf Port 80 zu lauschen.

verwandte Informationen