Это, вероятно, дубликат, но я не могу найти то, что ищу. Я хочу перенаправить http и / или non-www на https + www. Это часто цитируется как канонический пример того, когда следует избегать mod_rewrite
.
Моя текущая настройка работает,с использованием только mod_alias
' Redirect
, но для одного случая требуется дополнительный VirtualHost
с идентичной конфигурацией SSL.
Есть ли способ упростить это, используя ] Только перенаправление
? Или для этого потребуется mod_rewrite
? Спасибо!
# Redirect http with or without www
<VirtualHost *:80>
ServerName example.com
ServerAlias www.example.com
Redirect / https://www.example.com/
</VirtualHost>
# Redirect https without www
<VirtualHost *:443>
ServerName example.com
Redirect / https://www.example.com/
SSLCertificateFile /etc/ssl/example/cert.pem
SSLCertificateKeyFile /etc/ssl/example/key.pem
</VirtualHost>
# Final destination
<VirtualHost *:443>
ServerName www.example.com
DocumentRoot /var/www/example
SSLCertificateFile /etc/ssl/example/cert.pem
SSLCertificateKeyFile /etc/ssl/example/key.pem
...
</VirtualHost>