小赖子的英国生活和资讯

全站启用 SSL 遇到的问题

阅读 桌面完整版

昨天刚升级完主机 变成两个IP地址. 不用白不用,就可以给本博客 上HTTPS (一个IP一般来说只能上一个)

登陆VPS的确发现有两个IP地址 然后其实不需要做过多的设置, 只需要第一步先到 DNS设置(CLOUDFLARE)里把域名对应IP地址 (空和 www) 改成新的IP地址.

然后 买 SSL 证书(三年15镑左右) 然后

1:生成 CSR

生成 私有 钥匙
# openssl genrsa -out ~/justyy.com.ssl/justyy.com.key 2048

生成 CSR
# openssl req -new -key ~/justyy.com.ssl/domain.com.key -out ~/justyy.com.ssl/justyy.com.csr

2:发送CSR
把上面生成的CSR文件发送给 QUICKHOSTUK (主机提供商)过一会就能收到 CRT 等文件

3:配置 APACHE2服务器 这里就不多说了.详细见:https://helloacm.com/how-to-enable-ssl-connections-on-ubuntu-server/

SSLCertificateFile ssl.crt
SSLCertificateKeyFile private.key
SSLCertificateChainFile ssl.ca

4:重启:/etc/init.d/apache2 restart 或者 sudo service apache2 restart

5: 博客设置里 改成HTTPS 并且用SQL语句把 博客中的文章等改成HTTPS

UPDATE wp_posts SET post_content = REPLACE (post_content, ‘http://justyy.com’, ‘https://justyy.com’);
UPDATE wp_posts SET guid = REPLACE (guid, ‘http://justyy.com’, ‘https://justyy.com’);
UPDATE wp_options SET option_value = replace(option_value, ‘http://justyy.com’, ‘https://justyy.com’) WHERE option_name = ‘home’ OR option_name = ‘siteurl’;

6:设置301转向:(.htaccess 文件)

RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_HOST} !^justyy.com$ [NC]
RewriteRule ^(.*)$ https://justyy.com/$1 [L,R=301]

RewriteEngine On
RewriteCond %{SERVER_PORT} 80
RewriteRule ^(.*)$ https://justyy.com/$1 [R=301,L]

但是很奇怪 刚开始 justyy.com 访问SSL是没问题的 但是 www.justyy.com 却不行,在CHROME下出现

This server could not prove that it is www.justyy.com; its security certificate is from helloacm.com. This may be caused by a misconfiguration or an attacker intercepting your connection.

也就是证书不知道怎么搞的就变成 同台VPS上的另一个 SSL网站了, 所以当然不行.

经过不断尝试最终发现原来是需要在 站点的配置conf文件里

ServerName justyy.com:443 后面加入
ServerAlias www.justyy.com # 并不能加入 :443

另:可以通过 whynopadlock.com 查看为什么没有显示正确的SSL锁.

还有就是 因为上了SSL 所以就没有继续用 cloudflare.com 提供的免费的 CDN 当然还继续用他们家做 DNS 解析 不知道国内访问速度会不会因此变慢..

英文: https://helloacm.com/how-to-setup-multiple-ssl-https-on-one-server-vps-or-dedicate-server/

强烈推荐

微信公众号: 小赖子的英国生活和资讯 JustYYUK

阅读 桌面完整版
Exit mobile version