解决Typecho跨域导致网站访问异常处理

跨域是如何产生的

由于Typecho的后台只能设置一个域名 在我们绑定多个域名的时候就会导致跨域的问题出现 轻则加载资源异常 重则无法访问 那么这个问题应该如何解决呢?

讲一下原因

出现这种情况是由于用户与浏览器之间是HTTPS交互,但实际上PHP接收到的是来自CDN的 HTTP 交互,所以PHP使用了 HTTP 进行响应,结合Typecho的一些特性形成了这个问题。简单说就是CDN开启了HTTPS,但使用的是HTTP回源,就出现了这种情况。

解决跨域的问题

在你的Typcho的网站根目录中打开'config.inc.php'文件添加以下代码:

// 动态域名跨域
define('__TYPECHO_SECURE__',true); 

套用CDN解决办法

进入你网站所使用的CDN控制后台,把回源协议改为:HTTPS即可(改完记得刷新缓存,部分需要等一会才会生效),这里不做演示。

注意事项

重启PHP以加载该配置 如果没有生效可以尝试清除本地缓存

登陆后台要访问绑定了 回源host 的域名进行登陆,如果不是的话可能会登陆了,还返回没登陆的状态。
原文地址:https://suhao.cc/posts/12292.html

posted @ 2024-12-15 19:06  Suhao314  阅读(74)  评论(0)    收藏  举报