现在的痛点
目前网站是直接通过一台香港的腾讯云服务器部署的,2核4G 30M ,按理来说配置应该不算低,但是很奇怪,网站生成页面特别慢,每生成一个新网页,需要PHP占用100% 3-5秒,一方面可能是机器人攻击比较多,一方面是wordpress问题,我在这台服务器部署的typecho访问就很快,而且都没有做很多缓存。
想了很多办法,包括清理数据库,设置项,文件夹内容等等,没有起到作用,转念一想,既然是CPU100%,那么干脆配置弄高点好了,毕竟之前用的4核8G就没有问题。
但是云服务器升配置实在太贵了,我现用的是黑群晖,用webstation不稳定,但是打算过一年买白群辉的,可以考虑在白群辉上搭建网站来访问。
前提:群辉稳定,DDNS公网访问
虽然本地的上传带宽不高,但是如果我把网站静态资源都存在对象存储上,本地只提供网页文件,那应该是绰绰有余的,而且CDN还可以进行合并回源,问题不大。
群辉建站
- 安装php74,mysql,apache(不知道为啥,群辉好像不能直接用nginx提供网站服务器服务),webstation
- 把现有的文件和数据库迁移进去,在本地host文件编辑,这一步是保证本地通过这个域名访问会直接访问到nas里,如果要测试外网访问,可以用另一个电脑
10.0.0.10 *.czl.net
- 然后设置一下,保证本地访问没问题
在云服务器安装nginx,建立站点
- 编辑nginx主配置文件
添加一个上游服务器
upstream 自己起个名字{
server demo.czl.net:1000 群辉映射的访问地址; #这里的地址不要带http://
}
- 编辑站点配置文件
把server name改成自己想通过哪种方式访问项目,例如可以写云服务器ip地址,也可以写域名(域名必须备案过)
在location中(绿色箭头处)
插入
proxy_set_header Host $host; #加这个是因为nginx代理会丢掉这个请求头数据,导致后面出现404
proxy_pass http://上游服务器名字; #(前面配置的upstream 后面跟的名字)
然后重启nginx
注意: 配置上游服务器那里,如果服务器对应的是80端口,可能不行,所以内网穿透的时候用的动态端口。参考:https://www.it1352.com/1680719.html 原文章是用花生壳来穿透的,不确定ddns也会碰到这种情况
测试
此时通过云服务ip地址(域名)应该可以成功访问到本地项目如果是分布式项目,映射的是本地网关,还应对网关进行配置-Host 是你想通过什么方式访问,就写什么【域名或云服务器ip地址】
配置全站CDN
- 这里照常配置就可以
- 全站缓存,因为不需要外网登录后台,所以不需要单独设置php和wp-admin文件夹,只需要设置xml不缓存即可,防止搜索引擎抓取站点地图不是新的
按照以上设置,应该是可以正常访问的,因为我这台服务器还有2年多到期,再加上白群辉还没买,所以做了这个设想。
这样网站因为是本地实际CPU生成,速度应该会比云服务器快,而且也一定程度上隔绝攻击,可以尝试。
部分内容参考了:https://blog.csdn.net/weixin_44179010/article/details/121522184
评论区