Hallo zusammen,
vor einigen Wochen habe ich meinen ersten Ubuntu Linux Server installiert. Ich habe früher aktiv Webseiten mit PHP entwickelt und muss nun einige der alten Seiten anpassen. Deswegen wollte ich auf dem Server sowohl meine alte Umgebung (Apache 1.4 mit PHP 4) neben der standardmässig vorhandenen Umgebung mit Apache 2.x und PHP 5 laufen haben. Das hat soweit alles funktioniert, beide Apachen laufen mit Ihrer jeweiligen PHP-Version friedlich neben ein ander.
Mein Problem nun: Der eine Apache lauscht auf Port 80 (Apache 2.x), der andere (Apache 1.3) auf 8080 - gleiches Thema bei SSL verschlüsselten Sites (443 und 1443). Da ich einige Virtual Hosts einsetze, ist auch BIND installiert, allerdings kann ich ja hier keine Port Angaben hinterlegen. Um also alle VHosts, egal ob auf Apache 2.x oder Apache 1.3 mit Ihrem Namen zu erreichen und nicht durch Eingabe der IP-Adress inkl. Portangabe habe ich auf dem Apache 2.x noch die Proxy-Module eingebunden. Nun kann ich den Namen eines Servers in BIND mit einer IP unter Apache 2.x ver- knüpfen, der auf Port 80 lauscht und dann an den eigentlichen VHost auf Apache 1.3 unter Port 8080 weiterleitet. Dies funktioniert auch einwandfrei, allerdings nur für normales HTTP.
Nun möchte ich auch einen VHost mit SSL-Verschlüsselung auf dem Apache 1.3 erreichen und habe dazu das Spielchen mit der Weiterleitung von einem VHost mit SSL auf Apache 2.x auf den VHost auf Apache 1.3 versucht und hier beginnt mein Problem: Ich bekomme immer einen "502 Proxy Error - Reason: Error reading from remote server". Gebe ich die IP des VHost vom Apache 1.3 mit 192.168.0.100:1443 ein, funktioniert der Zugriff, über den Proxy jedoch gar nicht.
Anbei die Konfigurationen der VHosts und das Debuglog des Proxy VHost auf Apache 2.x:
Apache 2.x
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 | <IfModule mod_ssl.c> <VirtualHost 192.168.0.60:443> ServerAdmin root@localhost ServerName inetserver13 DocumentRoot /var/www <Directory /> Options FollowSymLinks AllowOverride None </Directory> <Directory /var/www/> Options Indexes FollowSymLinks MultiViews AllowOverride None Order allow,deny allow from all </Directory> ErrorLog /var/log/apache13/ssl_error2_log # Possible values include: debug, info, notice, warn, error, crit, # alert, emerg. LogLevel debug CustomLog /var/log/apache13/ssl_access2_log common # SSL Engine Switch: # Enable/Disable SSL for this virtual host. SSLEngine on SSLProxyEngine on # A self-signed (snakeoil) certificate can be created by installing # the ssl-cert package. See # /usr/share/doc/apache2.2-common/README.Debian.gz for more info. # If both key and certificate are stored in the same file, only the # SSLCertificateFile directive is needed. SSLCertificateFile /etc/ssl/certs/ssl-cert-snakeoil.pem SSLCertificateKeyFile /etc/ssl/private/ssl-cert-snakeoil.key # directives are used in per-directory context. # SSLOptions +FakeBasicAuth +ExportCertData +StrictRequire <FilesMatch "\.(cgi|shtml|phtml|php)$"> SSLOptions +StdEnvVars </FilesMatch> <Directory /usr/lib/cgi-bin> SSLOptions +StdEnvVars </Directory> BrowserMatch ".*MSIE.*" \ nokeepalive ssl-unclean-shutdown \ downgrade-1.0 force-response-1.0 ProxyRequests Off ProxyPreserveHost Off ProxyPass / https://192.168.0.100:1443/ ProxyPassReverse / https://192.168.0.100:1443/ </VirtualHost> </IfModule> |
Apache 1.3
1 2 3 4 5 6 7 8 9 10 11 12 13 | <VirtualHost 192.168.0.100:1443> SSLEnable ServerAdmin root@localhost DocumentRoot /var/www/htdocs/htdocs ServerName inetserver13 SSLCertificateFile /usr/local/apache13/conf/inetserver.cert.cert SSLCertificateKeyFile /usr/local/apache13/conf/inetserver.cert.key SSLVerifyClient 0 ErrorLog /var/log/apache13/ssl_error_log CustomLog /var/log/apache13/ssl_access_log common </VirtualHost> |
Und angehängt noch das Logfile.
Ich bin für jeden Hinweis dankbar, woran der Fehler liegen könnte. Danke vorab und Grüße
Dirk Kuhn