Am un site, www.example.com, pe care nu le pot vizita fără a intra pe www. Folosind o gazdă virtuală Apache, încerc să fac astfel încât, dacă este introdus non-www, acesta să fie redirecționat automat către www.
Dacă încerc să merg http://www.example.com, se redirecționează către https://www.example.com si functioneaza
Dacă încerc să merg https://www.example.com, funcționează și.
Cu toate acestea, problema este:
Daca intru http://example.com, se redirecționează către https://example.com si spune:
Acest site nu poate fi accesat Verificați dacă există o greșeală de scriere în example.com.
Dacă ortografia este corectă, încercați să rulați Windows Network Diagnostics.
DNS_PROBE_FINISHED_NXDOMAIN
Primesc același mesaj dacă încerc să merg https://example.com
Problema este că site-ul meu funcționează doar cu „www”. Pe non-www, cum pot forța www.? Am încercat fără rezultat următoarele:
<VirtualHost *:80>
ServerName example.com
Redirect permanent / https://www.example.com/
</VirtualHost>
<VirtualHost *:443>
ServerName www.example.com
ServerAlias example.com
DocumentRoot /var/www/example.com/public/
# Force non-www to www in HTTPS.
RewriteEngine On
RewriteCond %{HTTP_HOST} !^www\. [NC]
RewriteRule ^(.*)$ https://www.%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
SSLEngine On
SSLCertificateFile /etc/letsencrypt/live/example.com/cert.pem
SSLCertificateKeyFile /etc/letsencrypt/live/example.com/privkey.pem
SSLCertificateChainFile /etc/letsencrypt/live/example.com/chain.pem
ErrorLog /var/log/httpd/example.com.error.log
CustomLog /var/log/httpd/example.com.access.log combined
</VirtualHost>