所有情况都可以正常工作,除非将https // example.com重定向到https://www.example.com它保持不变https://example.com
我在这个论坛上尝试了大部分解决方案,但没有为我工作 - 我的证书适用于" www.example.com"和example.com域名。 - 我修改了url.php的修复程序
-htaccess :(我确实尝试过不同的解决方案)
RewriteEngine On
RewriteCond %{HTTP_HOST} !^www\. [NC,OR]
RewriteCond %{HTTPS} off
RewriteCond %{HTTP_HOST} ^(?:www\.)?(.+)$ [NC]
RewriteRule ^ https://www.%1%{REQUEST_URI} [R=302,L,NE]
管理员/ config.php中
// HTTP
define('HTTP_SERVER', 'https://www.example.com/admin/');
define('HTTP_CATALOG', 'https://www.example.com/');
// HTTPS
define('HTTPS_SERVER', 'https://www.example.com/admin/');
define('HTTPS_CATALOG', 'https://www.example.com/');
的config.php
// HTTP
define('HTTP_SERVER', 'https://www.example.com/');
// HTTPS
define('HTTPS_SERVER', 'https://www.example.com/');
000-default.conf
<VirtualHost *:80>
ServerAdmin admin@example.com
ServerName www.example.com
ServerAlias example.com
DocumentRoot /var/www/html
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
<Directory /var/www/html>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all
</Directory>
</VirtualHost>
感谢您的帮助。
答案 0 :(得分:0)
以下代码会将yourdomain.com的所有请求重定向到www.yourdomain.com。这可以通过在public_html文件夹中的.htaccess文件的开头添加以下行来完成:
RewriteEngine On
RewriteCond %{HTTP_HOST} ^yourdomain.com [NC]
RewriteRule ^(.*)$ https://www.yourdomain.com/$1 [L,R=301]
或
RewriteEngine On
RewriteCond %{HTTP_HOST} ^yourdomain.com [NC]
RewriteRule ^(.*)$ http://www.yourdomain.com/$1 [L,R=301]
请检查 - reference
希望这会对你有所帮助。