2025-4-29 新的主机

广州二区的主机在8月份就要关停,正好我也想做一次迁移,毕竟3年期的云主机可以省千把块。
其实是纠结用镜像来着。。。

一、安装mongodb

在 OpenCloudOS 上安装 MongoDB 和 Python 3.9 虚拟环境可以按照以下步骤进行:

安装 MongoDB

  1. 添加 MongoDB 的 YUM 源(如果需要)
  2. 启动 MongoDB 并设置开机自启
  3. 检查 MongoDB 状态
  4. 验证 MongoDB 是否安装成功 如果 mongosh 运行成功,说明安装正常。
否则,还得:
sudo yum install -y mongodb-mongosh

数据迁移:
mongodump --host 127.0.0.1 --port 27017 --db civil --out myweb
mongorestore --host 127.0.0.1 --port 27017 myweb


二、安装 Python 3.9 及配置虚拟环境

CentOS 7 默认不带 Python 3.9,需要手动安装。
  1. 安装依赖
  2. 下载 Python 3.9 源码
  3. 解压并编译安装
  4. 检查 Python 版本
  5. 安装 virtualenv
  6. 创建 Python 虚拟环境
  7. 激活虚拟环境 source myenv/bin/activate
  8. 确认虚拟环境 Python 版本
source /usr/src/Python-3.9.18/myenv/bin/activate
看似简单,其实稍不注意就会有坑。


这次终于告别了2017年的python 3.5 + mongoDB 3.x
记录一下过程中遇到的BUG
(一)虚拟环境问题
1.安装Python 3.9.18 之后,要查看openSSL是不是较新的版本,不然还得重建虚拟环境。
2.搞定openSSL之后再新建虚拟环境,虚拟环境在requiresments的基础上,还得安装: pip install pycrypto==2.6.1 requests_toolbelt gunicorn flask_wtf


(二)在线支付问题
由于使用了gevent(或许),导致支付宝在线支付报错:
你可以从这里下载最新的官方证书包:
保存到你的服务器上,比如:
保存到你的服务器上,比如:
bash深色版本 wget https://curl.se/ca/cacert.pem -O /home/www/app/alifacepay/cacert.pem
然后修改init代码:
# coding:utf-8 import ssl import os import gevent.monkey gevent.monkey.patch_all() cacert_path = "/***/www/app/alifacepay/cacert.pem" ssl._create_default_https_context = lambda: ssl.create_default_context(cafile=cacert_path)
(三)重启nginx
sudo nginx -t
sudo systemctl reload nginx
在本次迁移中,还得在nginx中设定static的目录,否则Flask的静态文件无法加载,之前就不存在这个。

(四)caddy配置证书(略)
先用腾讯云免费的,虽然三个月就得配置一次,但也无所谓,权当监控一次服务器的运行状态。

小结,本次迁移落幕,删掉了小破站一些冗余功能,速度上明显快了很多。
3年后,如果这个小破站还在运营,下一次就使用镜像进行了。






评论

此博客中的热门博文

2025-5-29 部署一个跨境站

2025-07-01 视频经验总结

Wan2.2-Animate安装时候遇到的坑