Subdomain-Umleitung (Proxy) funktioniert nicht (versucht mit Apache2 und Nginx)

Subdomain-Umleitung (Proxy) funktioniert nicht (versucht mit Apache2 und Nginx)

Ich verwende einen Raspberry Pi mit Apache2, um meine Websites zu verwalten. Ich habe mehrere Docker-Images, die auf verschiedenen Ports laufen. Ich möchte (ohne URL-Änderungen) scanner.raspberry.localauf umleiten localhost:1234. Dazu bin ich diesen beiden Beiträgen gefolgt:

Am Ende funktioniert nur ein virtueller Host (der erste). Hier ist meine Konfiguration:

# Home page : working properly
<VirtualHost *:80>
        ServerName          raspberry.local

        ProxyPreserveHost   On
        ProxyRequests       Off

        ProxyPass           / http://localhost:8080/
        ProxyPassReverse    / http://localhost:8080/

        ErrorLog ${APACHE_LOG_DIR}/error-homer.log
        CustomLog ${APACHE_LOG_DIR}/access-homer.log combined
</VirtualHost>

# Scanner : not working : "could not resolve host" when I cURL
<VirtualHost *:80>
        ServerName          scan.raspberry.local

        ProxyPreserveHost   On
        ProxyRequests       Off

        ProxyPass           / http://localhost:1234/
        ProxyPassReverse    / http://localhost:1234/

        ErrorLog ${APACHE_LOG_DIR}/error-scan.log
        CustomLog ${APACHE_LOG_DIR}/access-scan.log combined
</VirtualHost>

Ich habe versucht, nginx zu installieren, aber am Ende ist es dasselbe, der erste virtuelle Host funktioniert, aber der zweite (die Subdomain) konnte nicht über cURL aufgelöst werden, nicht einmal direkt auf dem Server. Ich habeDasBeitrag, um mir zu helfen. Ich endete mit Folgendem:

server {
    listen 80;
    server_name raspberry.local;

    location / {
        proxy_pass http://localhost:8080;
    }   
}

server {
    listen 80;
    server_name scan.raspberry.local;

    location / {
        proxy_pass http://localhost:1234;
    }   
}

Ich habe keine Fehler in irgendwelchen Protokolldateien, wenn ich apache2ctl -Ses verwende, findet es meine virtuellen Hosts ohne Probleme, dasselbe gilt, wenn ich es verwende apache2ctl configtest. Ich habe die Module und aktiviert proxy. proxy_httpUnd rewritemeine Konfiguration ist ordnungsgemäß in /etc/apache2/sites-enabled/000-default.conf(Symlink von sites-available) aktiviert.

Mein System:

  • Raspberry Pi 4 8 ​​GB unter Ubuntu 22.04

Außerdem verwende ich ein auf meinem Pi gehostetes VPN und habe meinem /etc/hostund c:\Windows\System32\Drivers\etc\hosts(WSL/Windows) die richtige Konfiguration hinzugefügt.

Ich weiß, dass es jede Menge Beiträge zur Konfiguration von Apache2 gibt. Aber ich kann keinen mit demselben Problem finden.

Antwort1

Scanner: funktioniert nicht: „Host konnte nicht aufgelöst werden“, wenn ich cURL

Dies bedeutet, dass curldie IP-Adresse für den Domänennamen nicht aufgelöst werden kann. Es bedeutet, dass der DNS-Eintrag für die Zieldomäne nicht konfiguriert ist.

Die DNS-Konfiguration hat weder etwas mit der Apache2- noch mit der Nginx-Konfiguration zu tun.

Antwort2

Um dieses Problem zu beheben, installierte ichDNS-MASQ,konfiguriert es, Undden DNS-Server hinzugefügt zu/etc/resolve.conf.

Jetzt kann ich cURL verwenden, x.subdomain.localindem ich auf jedem Rechner meinen DNS-Server hinzufüge.

verwandte Informationen