由于云服务器 2c2g 性能拉跨,已经难以支撑雷池的运行。
缘由
手里有台云服务器,家里还有一台高性能服务器。
一开始,我认为雷池作为入口保护 80/443 页面服务,便在云服务器中安装了雷池服务,转发服务到高性能服务器。
刚开始 2c2g 的服务器还能抗住雷池的运行,慢慢的日已累计数据日志,造成拖垮服务器的罪魁祸首。
按照日请求量 10.4K 经过长时间的积累,雷池目录已经达到 1GB之多的占用
所以奉劝一句,没有必要的话,1panel 的waf足够使用了。
迁移雷池
原来的结构模式,看似很美好
调整后的结构模式,不错不错
这两者的关系,就像是光猫和路由器的关系。
原来是:光猫(云服务器)既要承担光转电(监听80/443),还好处理拨号上网,路由管理(雷池的保护服务),路由器承担内网设备请求转发(站点服务)。
现在是:光猫只承担光转电(转发80/443),路由器承担拨号上网,路由管理(雷池保护服务,站点服务)
那么,无论雷池多么消耗性能,也无需担心,被迫造成服务器宕机。
遇到的问题
此次迁移,影响最小的就是高性能服务器,由雷池转发的服务,均在 80/443 端口上, 所以将雷池迁移到高性能服务器上,需要改动的仅仅为 雷池的监听服务。
原来的雷池直接监听云服务器的 80/443,由于高性能服务器也使用 80/443 就会造成冲突,。
迁移前,需要将雷池的监听端口全部改为 8080 (只要不与高性能服务器的端口冲突即可)
然后停止雷池服务。
将目录 /data/safeline
目录压缩,下载到高性能服务器中。
将其解压到 /data/safeline
中。与云服务器目录保持一致,在高性能服务器中启动雷池服务就完成了本次迁移。
云服务器的转发
由于云服务器关闭了雷池,那么就需要安装 Nginx 之类的服务转发 80/443 ,为此,之间在云服务器安装1Panel 面板即可,通过 OpenResty 的反向代理,处理所有网站。
证书
原本的雷池,还承担了证书签发的作用,由于修改监听端口为 8080 那么原本的证书也就没有什么用,可忽略不计。
在云服务器的1Panel面板中再次申请一遍证书,证书管理还是交给云服务器管理。
迁移后的问题
- 网站过多
太多的网站部署,迁移后最麻烦的就是这些网站的证书申请与网站配置。
1Panel面板证书申请页面虽然可以从网站中获取
,但是申请成功后,还是需要手动去网站设置中开启HTTPS - 重定向次数过多
这次的迁移是将原来的雷池 >> 1Panel
的模式改为1Panel >> 雷池 >> 1Panel
由 2个nginx 增加到3个 nginx,出现此问题,肯定是在所难免的。
所以需要注意以下问题。
- 云服务器的反向代理 ($host 不能缺少)
- 雷池 (Version 6.7.0)
-
源 IP 获取方式
将不能从网络链接中获取
因为当前雷池不是顶级代理服务 - HTTP 跳转 HTTPS 一定是关闭状态,雷池已经不负责证书的管理
- 代理时修改请求中的 Host 头 此处与 云服务器反向代理保持一致,否则转发后不能正常提供服务。
-
写在最后
配置过程中会遇到很多千奇百怪的事情,那就一件件去解决它!
此教程,仅供参考,交流学习使用。
如果你遇到了修改配置不生效,那一定是反向代理缓存搞的鬼
当你的网站为 http 那么,一定不要使用最新版 Chrome 浏览器,强制跳转https,已经为默认配置。
已知存在的Bug或问题
-
1Panel 站点 默认页面 修改不生效,重启后恢复默认配置。
-
访问 1Panel OpenResty 的 {ip}:443 端口 无法正常使用
- 哪怕配置 默认站点
到了 雷池那一层 也无法正常访问
- 哪怕配置 默认站点
-
如果云服务器1Panle配置了默认站点,并在DNS中解析了新的域名指向您的云服务器,但是没有配置该域名站点
那么你也无法正常访问,虽然你配置的默认站点,但是他们之间的证书与域名不匹配,页面也不会跳转到默认站点。你将会看到
其次时 HSTS 技术,就算你关闭默认站点的 HSTS。
下一关雷池,你依旧无法正常通过,因为雷池没有默认站点的概念。
这里最好哦的办法,还是在云服务器的1Panel中,没有匹配到站点域名时,进行301 302 的跳转,最直接。