Как избавиться от WWW из домена и сделать его всегда перенаправленным на https://example.com или https://foo.example.com
Я использую Apache2, и я все еще довольно новичок в этом.
У меня проблема с моим сайтом, вызывающим бесконечные циклы, и я также хочу избавиться от части WWW из моих доменов и поддоменов.
Это мой файл конфигурации для порта 80:
<VirtualHost *:80>
ServerName foo.example.com
ServerAlias www.foo.example.com
ServerAdmin webmaster@localhost
DocumentRoot /var/www/html/foo/public
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
RewriteEngine on
RewriteCond %{SERVER_NAME} =foo.example.ga
RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI}
</VirtualHost>
Это мой файл конфигурации для порта 443:
<IfModule mod_ssl.c>
<VirtualHost *:443>
ServerAdmin webmaster@localhost
DocumentRoot /var/www/html/foo/public
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
ServerName foo.example.com
ServerAlias www.foo.example.com
Include /etc/letsencrypt/options-ssl-apache.conf
SSLCertificateFile /etc/letsencrypt/live/foo.example.com/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/foo.example.com/privkey.pem
RewriteEngine on
RewriteCond %{SERVER_NAME} =www.foo.example.com
RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,NE,R=permanent]
</VirtualHost>
</IfModule>
Now I know that it isn't coded properly, but if someone could point me towards the right direction, that'd be wonderful. Спасибо!
1 ответ
К моей ошибке новичка я не проверял.htaccess, который был в указанном каталоге. Я удалил контент (мне нравится иметь веб-информацию в одном месте) и поместил правила перезаписи в мой файл конфигурации.