CDN加速后后台样式消失、获取ip出错等小问题的解决

发布于 / 极客 / 0 条评论

为了网站的访问速度和安全方面的考虑,折腾了好几天CDN加速。用的是又拍云存储,原因嘛,就是有个又拍云联盟,省点钱吧。


目前已知的两种方法:

1.静态存储加速

相当于动态和静态部分分离吧,然后静态的部分存储在CDN存储空间,访问的时候直接调用存储空间里的静态资源,动态不加速。

2.全站加速

其实也需要动静分离,但这个是自己是网站通过CDN加速分发,然后再到用户。所以不用劳心劳力设置很多东西。
我就是选择的第二种方法,想省事点…

然而

结果并不省事!!!
反正是搞了好几天。通过又拍云的CDN分发之后,WordPress后台就进不去了…期间还遇到过后台css没加载、php没加载报错、网页链接“?”后的参数不跟随导致的页面问题…当然这是小问题,在缓存设置里把我需要的禁止缓存就好了,完全是按照网上的教程来的…禁用下面的目录和php缓存,后台大多数问题就解决了,另外还有开启HTTPS,参数跟随选全程跟随之类操作的,具体大家自行百度吧。

<-- 禁用这两个 -->
/*.php
/wp-admin/*

然后今天终于感觉前端后台都可以正常访问了,结果又出现了评论收集的UA信息全是山东的情况…不管谁评论都显示在山东。没错,就是又拍云的节点ip!
使用了CDN加速后,我们的网站获取到的用户IP变成了CDN的IP了,想要获取到用户的真实IP就得利用Nginx和Apache的模式功能。但是我用的是PHP,是Wordpress,所以在 WordPress 根目录的配置文件 wp-config.php 最后加上下面这段代码就可以解决了。

if (isset($_SERVER['HTTP_X_FORWARDED_FOR'])) {
    $list = explode(',', $_SERVER['HTTP_X_FORWARDED_FOR']);
    $_SERVER['REMOTE_ADDR'] = $list[0];
}

目前就是这些,其实是小问题,就是缓存了动态文件或者回源了问题文件,确实挺揪心。而且后台还是有挺多小问题。后台编辑的话可以在 C:\Windows\System32\drivers\etc 下的 hosts 加上

服务器ip 域名
例如:
1.1.1.1 www.xxx.com

绕过CDN直接访问服务器域名,就是正常的了。但自己网站效果速度什么的查看起来就比较麻烦了。

转载原创文章请注明,转载自: 薄荷的猫草 » CDN加速后后台样式消失、获取ip出错等小问题的解决

Not Comment Found