CDN加速后后台样式消失、获取ip出错等小问题的解决
为了网站的访问速度和安全方面的考虑,折腾了好几天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直接访问服务器域名,就是正常的了。但自己网站效果速度什么的查看起来就比较麻烦了。
空空如也!