Tunnelanforderungen vom Webserver an meinen lokalen Computer für bestimmte virtuelle Hosts

0

Ich möchte, dass alle http / https-Anforderungen, die an einen Server für einen bestimmten virtuellen Host gesendet werden, auf meinen lokalen Computer getunnelt werden.

Angenommen, mein Apache-Server hat einen virtuellen Host dev.nands.com. Ich möchte, dass alle http / https-Anforderungen, die an diesen virtuellen Host gesendet werden, auf meinen lokalen Computer getunnelt werden. Andere virtuelle Hosts auf dem Server sollten nicht getunnelt werden.

Wie kann ich das machen ?

Nands
quelle
Aus den Tags geht hervor, dass Sie einen SSH-Tunnel verwenden möchten - ist dies erforderlich oder reicht es aus, die Anforderungen an Ihr Gerät zu übermitteln?
Shane Madden
Brauche SSH Tunnel. Es sollten jedoch nicht alle Anforderungen an den Server getunnelt werden, sondern nur für bestimmte virtuelle Hosts. Möglicherweise sind auch einige Apache-Einstellungen erforderlich. Danke
Nands

Antworten:

1

Richten Sie Ihren SSH-Tunnel so ein, dass ein lokaler Port auf dem Webserver an den Webservice Ihres Systems weitergeleitet wird (wählen Sie einen nicht verwendeten Port aus, an dem ich 8080 verwendet habe):

ssh [email protected] -R 8080:127.0.0.1:80

Richten Sie dann einen vhost ein, der Anforderungen an den neuen lokalen Port auf dem Webserver sendet.

<VirtualHost *:80>
    ServerName dev.nands.com
    ... (logging config, access controls, etc)
    ProxyPass / http://127.0.0.1:8080/
    ProxyPassReverse / http://127.0.0.1:8080/
</VirtualHost>
Shane Madden
quelle