Konfigurieren von www.domain.com und domain.com mit Zonefile oder Letsencrypt, um immer an domain.com weiterzuleiten

Konfigurieren von www.domain.com und domain.com mit Zonefile oder Letsencrypt, um immer an domain.com weiterzuleiten

Ich habe ein Beispiel, das immer dazu führen sollte,https://example.com, auch wenn der Benutzerwww.beispiel.com, https oder nicht. Idealerweise sollte die automatisierte letsencrypt config https-Konfigurationsdatei funktionieren.

  • Ich habe versucht, den A-Eintrag für www zu entfernen und stattdessen einen CNAME zu verwenden, der auf example.com oder @ verweist. Dies scheint keine Wirkung zu haben und die Benutzer landen trotzdem auf www. Ich habe keine Ahnung, warum.

Dies ist meine aktuelle Konfiguration:

<VirtualHost [IPV6]:80 IPV4:80>
    ServerAdmin [email protected]
    DocumentRoot /home/example/public_html
    ServerName example.com
    ServerAlias www.example.com
    ErrorLog logs/example.error.log
    CustomLog logs/example.acccess.log common
    <Directory /home/example/public_html>
        Options FollowSymLinks
        AllowOverride All
    </Directory>
    RewriteEngine on 
    RewriteCond %{SERVER_NAME} =example.com [OR] 
    RewriteCond %{SERVER_NAME} =www.example.com 
    RewriteRule ^ https://example.com%{REQUEST_URI} [END,NE,R=permanent] 
</VirtualHost>

<VirtualHost [IPV6]:443 IPV4:443>
    ServerAdmin [email protected]
    DocumentRoot /home/example/public_html
    ServerName example.com
    ServerAlias www.example.com
    ErrorLog logs/example.error.log
    CustomLog logs/example.acccess.log common
    <Directory /home/example/public_html>
        Options FollowSymLinks
        AllowOverride All
    </Directory>
Include /etc/letsencrypt/options-ssl-apache.conf
SSLCertificateFile /etc/letsencrypt/live/example.com/cert.pem
SSLCertificateKeyFile /etc/letsencrypt/live/example.com/privkey.pem
SSLCertificateChainFile /etc/letsencrypt/live/example.com/chain.pem
</VirtualHost>

Dann jedoch,https://www.example.comgibt ein ungültiges Zertifikat aus, selbst wenn ich dies zur :443-Konfiguration hinzufüge:

    RewriteCond %{SERVER_NAME} =www.example.com 
    RewriteRule ^ https://example.com%{REQUEST_URI} [END,NE,R=permanent] 

Wie kann ich http- und https-Anfragen umleiten anwww.beispiel.comZuhttps://example.com?

Antwort1

Kunden kommen zuhttps://www.example.comauch wenn Sie eine Weiterleitung zuhttps://example.comdu brauchstzwei SSL-Zertifikate(eine für example.com und die andere fürwww.beispiel.com) oderein einziges SSL-Zertifikat, das für beide Domänen gültig ist.

Wenn SieZertifikatbotUm Let’s Encrypt-Zertifikate auszustellen, können Sie mehrere -dParameter verwenden, um mehrere Domänen anzugeben, also zum Beispiel:

certbot certonly --webroot -w /var/www/example -d www.example.com -d example.com

verwandte Informationen