wordpress全站改https后文章页面无法访问的解决方法

http页面经常被各种运营商智能路由器篡改劫持,轻则植入广告,重则被盗取cookie等重要信息,一怒之下全站改为https,还有一些引入的api、图片内容还在改,这途中出现了特别头疼的问题,那就是http访问一切正常的文章和单页,通过https却无法访问,全部404错误。
从头缕缕发现,使用伪静态的情况下会导致https不正常的情况,于是发现问题就应该出在伪静态上,最终找到80和443两个VirtualHost中设置的区别在AllowOverride这里,80是All,而443是None,原来问题出在wordpress伪静态实现原理上,把/etc/apache2/sites-eanbled/default-ssl中以下代码改一下就可以了:


Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all


至此问题解决!
以上是Debian+apache2.2下的解决方案,而Debian+apache2.4默认不开启rewrite,需要使用命令”a2enmod rewrite”首先开启rewrite模块,然后在/etc/apache2/apache2.conf修改如下内容:


Options Indexes FollowSymLinks
AllowOverride All
Require all granted