网站加SSL安全证书是提高访问安全性的必由之路,但是加了SSL之后发现WordPress的CSS无法加载。原因很简单,就是WordPress内调的函数可能使用了http开始的链接,解决办法一招搞定:文章源自菜鸟学院-https://www.cainiaoxueyuan.com/cms/11356.html
首先在后台的“设置”->“常规”处,把网站URL的http换成https(我没有验证这一步是否为必须),然后打开网站根目录下的 wp-config.php 文件,加入以下代码文章源自菜鸟学院-https://www.cainiaoxueyuan.com/cms/11356.html
1 2 3 | $_SERVER[\'HTTPS\'] = \'on\'; define(\'FORCE_SSL_LOGIN\', true); define(\'FORCE_SSL_ADMIN\', true); |
举例:文章源自菜鸟学院-https://www.cainiaoxueyuan.com/cms/11356.html
文章源自菜鸟学院-https://www.cainiaoxueyuan.com/cms/11356.html
我是这样就成功了。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/cms/11356.html
网上还有其他办法,如果上述办法不行可以试试:文章源自菜鸟学院-https://www.cainiaoxueyuan.com/cms/11356.html
其他方法:更换js/css路径为相对路径文章源自菜鸟学院-https://www.cainiaoxueyuan.com/cms/11356.html
找到函数文件 function.php,添加以下内容文章源自菜鸟学院-https://www.cainiaoxueyuan.com/cms/11356.html
1 2 3 4 5 6 7 8 9 | add_filter(\'script_loader_src\', \'agnostic_script_loader_src\', 20,2); function agnostic_script_loader_src($src, $handle) { return preg_replace(\'/^(http|https):/\', \'\', $src); } add_filter(\'style_loader_src\', \'agnostic_style_loader_src\', 20,2); function agnostic_style_loader_src($src, $handle) { return preg_replace(\'/^(http|https):/\', \'\', $src); } |
备注:文章源自菜鸟学院-https://www.cainiaoxueyuan.com/cms/11356.html
强制把http转换为https,可以使用.htaccess文件实现。在该文件中添加以下语句:文章源自菜鸟学院-https://www.cainiaoxueyuan.com/cms/11356.html
1 2 3 | RewriteCond %{HTTP:From-Https} !^on$ [NC] RewriteCond %{HTTP_HOST} ^(www.)?abc.com$ [NC] # abc是你的域名。目的是将abc.com和www.abc.com跳转到https://www.abc.com,防止apache子站继承上级目录.htaccess受影响 RewriteRule ^(.*)$ https://abc.com/$1 [R=301,L] |
注意将abc.com换成自己的域名。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/cms/11356.html