Wenn ich jetzt http://example1.com besuche, öffne ich tatsächlich http://example2.com .
Dies liegt (teilweise) daran, dass Port 80 und Port 443 nicht automatisch austauschbar sind. Es gibt (im Allgemeinen) keine Mechanismen zum automatischen Umleiten von Anforderungen von einem Port zu einem anderen, es sei denn, Sie geben dieses Verhalten auf dem Server selbst an (beachten Sie, dass einige Browser-Plugins oder Funktionen, die HTTPS-Verbindungen erzwingen, ausgeschlossen sind).
Ich vermute, dass http://example1.com nicht erreichbar ist.
Das ist richtig. Wenn Sie nicht einen virtuellen HTTP-Host auf Port 80 mit dieser Domäne definieren, ist er nicht vorhanden und daher kann nicht darauf zugegriffen werden ("Standardhosts" werden vergessen). Ich gehe davon aus, dass Sie example1.com auch in Ihrer "hosts" -Datei oder im DNS definiert haben .
Ich habe versucht, einen virtuellen Standardhost [...] hinzuzufügen, aber das hat nicht geholfen.
Es könnten andere Probleme mit Ihrer Konfiguration auftreten. Was Sie jedoch am ehesten benötigen (zumindest um zu beginnen), ist ein tatsächlicher Eintrag für einen virtuellen Host, der http://example1.com entspricht :
Listen 80 Listen 443 # Virtual Hosts For Basic HTTP Services <VirtualHost *:80> ServerName example1.com # We can use * to catch all sub-domains other than e.g. www # ServerAlias www.example1.com *.example1.com ServerAlias www.example1.com # DocumentRoot "/var/www/example1.com" # DocumentRoot "/var/www/default" # If we get any requests on port 80 for example1.com # redirect them to e.g. http://www.example1.com:443/ Redirect permanent / http://www.example1.com:443/ </VirtualHost> # This is not an SSL (HTTPS) virtual host <VirtualHost *:443> ServerName example1.com DocumentRoot "/var/www/example1.com" </VirtualHost> # Our other domain <VirtualHost *:80> ServerName example2.com DocumentRoot "/var/www/example2.com" </VirtualHost>