博客全站强制SSL和Nginx的一个问题

强制SSL

PositiveSSL_tl_trans

昨天半夜,Jimmy Zhou同学上了DO并且随着大流加了SSL。因为我的站早就启用了StartCom的免费SSL证书,所以他就来给我的SSL评了下分。结果——C。

强迫症瞬间就犯了,在Jimmy同学的鼓动下,入了$9一年的COMODO SSL。接下来就是升级网站的SSL配置,具体过程如下:

  • 1、升级Openssl(2015.10更新:改成了LibreSSL),使用更安全,ARM平台表现更好的加密算法: CHACHA20_POLY1305。。
  • 2、重新编译安装Nginx至最新版本,开启SPDY。(顺便吐槽下:lnmp一键安装包的一键升级Nginx脚本存在问题,还是手动配置大法好)
  • 3、禁用SSLv3(这是我搬回国内以后忘记做得事情)。
  • 4、强制http://dickwu.com 和 http://www.dickwu.com 301 至https://dickwu.com。

然后SSL评级就A了。离A+还差一步,至少强迫症解决了。

Update: 配置CHACHA20_Poly1305的详细教程,移步这里

Nginx Rewrite规则加斜杠的问题

新的强迫症出现:

这是老问题了,既然昨天动到了Nginx就想办法解决一遍。具体问题是这样的:

如果我访问https://dickwu.com/class04这个网址,最后没有加斜杠,Nginx会认为站点是在dickwu.com/下,CSS什么的自然是到dickwu.com/css里去找,这就造成了网页里所有css,js,图片挂掉的问题。

网上的办法都是在Nginx的配置文件中加一句server_name_in_redirect off; 但事实上Nginx早就把这个配置作为默认选项了。那问题肯定就出在了Wordpress的Rewrite规则上。

搞了一晚上,没想到办法。最后用了被Jimmy嘲笑的一招:

if (-d $request_filename){

rewrite ^/(.*)([^/])$ /$1$2/ permanent;

}

但是这绝对不是解决的办法。

求大神相救!!!!!!!!!!!!!!!!!

发表评论?

26 条评论。

  1. HTTP1.1/502 测试一下啦

  2. 我是谁啊????HTTP1.1/502 😆 ❓

  3. 很不错的分享,值得好好学习。

  4. 不是交易型的网店,没必要采用SSL吧

  5. 看起来好难弄,还是看看就好……

  6. 以后就是S的天下了。

  7. 话说啥时候写一篇详细点的教程啊

  8. 什么叫”强制 https://dickwu.com 301 至https://dickwu.com”…

发表评论


注意 - 你可以用以下 HTML tags and attributes:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>