Ich hätte gerne einen Apache-Webserver, den ich zu Hause installiert habe, um Port 80 und Port 8080 abzuhören.
Ich habe Listen 8080
httpd.conf hinzugefügt und die Apache-Dienste neu gestartet, aber der Server scheint 8080 nicht zu überwachen. Das Eingeben von http: // localhost: 8080 ist zeitlich begrenzt und zeigt meine index.html nicht an, aber http: / / localhost zeigt meine index.html an.
Wie lasse ich es 80 und 8080 hören?
apache-2.2
web-server
Owen
quelle
quelle
Antworten:
Eine Standard-Debian-Installation von Apache wird das folgende Konfigurationsfragment haben:
Dies weist Apache an, auf Port 80 zu lauschen und auf Port 443 zu lauschen, wenn mod_ssl konfiguriert ist. In Ihrem Fall möchten Sie:
Sie müssen sicherstellen, dass Sie einen Neustart und keinen Neuladevorgang für Apache ausführen, damit die neuen Listen-Anweisungen beachtet werden. Am sichersten ist es, Apache zu stoppen, sicherzustellen, dass es tot ist, und es erneut zu starten.
Wenn diese Konfiguration nicht funktioniert, überprüfen Sie die Protokolldateien auf Fehlermeldungen. Sie können "netstat -lep --tcp" verwenden, um festzustellen, ob auf Port 8080 etwas zu hören ist. Wenn alles andere nicht funktioniert, versuchen Sie, Apache unter Strace auszuführen, um festzustellen, ob es versucht, sich an diesen Port zu binden, und wenn dies fehlschlägt. aber das Problem nicht protokollieren.
quelle
/etc/apache2/ports.conf
.Diese Antworten sind groß, aber sie lassen die Möglichkeit aus, dass Owen hat dies tatsächlich getan bereits ( „Ich habe hinzugefügt
Listen 8080
“) bedeuten kann , genau das, was es klingt wie (dh was David hat vorgeschlagen).Wenn Sie dies bereits getan haben und immer noch feststellen, dass es nicht funktioniert, stellen Sie sicher, dass Sie Ihre Anweisungen für jede Subdomäne, einschließlich der Standard-Subdomäne, richtig konfiguriert haben (falls sie manuell für das Abhören konfiguriert wurde: 80 direkt nach dem Namen).
Sie haben wahrscheinlich eine Anweisung wie diese:
Sie müssen dies in
<VirtualHost *:8080>
oder ändern<VirtualHost *:*>
.quelle
Schritt 1
httpd (apache) zum Abhören von Port 80 und zum Abhören von Port 443, wenn mod_ssl konfiguriert ist.
Schritt 2
Schritt 3
(Nicht alle Prozesse konnten identifiziert werden. Informationen zu nicht im Besitz befindlichen Prozessen werden nicht angezeigt. Sie müssen root sein, um alles zu sehen.)
quelle
Sie können auch überprüfen, ob SELinux aktiviert ist. In der SELinux-Standardkonfiguration können Sie Apache möglicherweise nicht auf Nicht-Standard-Ports ausführen. Hier ist eine Site, die Ihnen zeigt, ob Sie SELinux ausführen und wie Sie es deaktivieren, wenn Sie seine Funktionen nicht möchten oder verwenden. http://www.crypt.gen.nz/selinux/disable_selinux.html
quelle
Möglicherweise müssen Sie für einen Standort einen Port 8080 konfigurieren, damit dies funktioniert. Lesen Sie die Dokumentation zu Apache Virtual Hosts . Jede 'Site' kann so eingerichtet werden, dass Verbindungen an bestimmten Ports (und IPs usw.) akzeptiert werden. Verfügt Ihre http.conf über einen virtuellen Host, der nur für Port 80 konfiguriert ist?
Sie können auch bestätigen, dass der Server 8080 überwacht
netstat -nlp
und nach einem Eintrag an diesem Port sucht.quelle
Vorausgesetzt, Linux läuft
netstat -lntp
als root, so wie Sie sehen können, ob Apache auf 8080 lauscht oder nicht. Auf diese Weise können Sie feststellen, ob das Problem von Apache nicht abgehört wird oder ob externe Faktoren (z. B. Firewall, Selinux usw.) für Apache eine Verbindungsunterbrechung verursachen.quelle