2026/4/15 5:19:22
网站建设
项目流程
网站上传到虚拟空间,网站制作公司网站建设,校园网页设计模板简单,凡科的网站怎么做百度推广大家好#xff01;我是CSDN的Python新手博主#xff5e; 上一篇我们给办公看板加了多角色权限控制#xff0c;解决了局域网共享的安全问题#xff0c;但很多小伙伴反馈“异地办公时#xff08;比如居家、出差#xff09;#xff0c;没法访问公司局域网的看板#xff0c…大家好我是CSDN的Python新手博主 上一篇我们给办公看板加了多角色权限控制解决了局域网共享的安全问题但很多小伙伴反馈“异地办公时比如居家、出差没法访问公司局域网的看板数据查看很不方便”。今天就带来超落地的新手实战项目——把带权限的办公数据看板部署到云服务器本次以阿里云ECS服务器新手友好、性价比高为例从“服务器购买→环境配置→代码部署→外网访问”全程手把手教学还会解决新手最头疼的“端口开放、防火墙配置、后台稳定运行”问题。部署完成后无论你在何地只要有网络就能通过浏览器访问办公看板领导出差也能随时查看数据分公司同事也能协同使用。全程基于之前的带权限看板代码仅需少量修改新手跟着步骤复制操作就能成功轻松实现办公工具的“云端升级”一、本次学习目标了解云服务器的基础概念学会购买适合新手的阿里云/腾讯云服务器掌握Linux服务器的基础操作连接服务器、安装软件、文件上传学会在服务器上配置Python环境安装Flask相关依赖库掌握Flask项目的服务器部署方法GunicornNginx稳定运行解决“端口开放、防火墙配置、后台运行”等部署核心问题实现外网稳定访问。二、前期准备购买云服务器新手首选阿里云ECS打开阿里云官网https://www.aliyun.com/注册并实名认证搜索“ECS云服务器”选择“新手入门”套餐1核2G内存、40G云盘CentOS 7系统1年费用约200元新手足够用配置服务器操作系统选择「CentOS 7.9 64位」Linux系统稳定且适合部署Python项目设置登录密码记好后续连接服务器要用完成购买后进入阿里云控制台找到“我的ECS”记录服务器的「公网IP地址」比如47.108.xxx.xxx后续访问和连接都要用。替代方案如果想先测试可使用腾讯云轻量应用服务器配置类似操作更简单核心步骤和阿里云一致。本地工具准备连接服务器、上传文件Xshell用于连接Linux服务器执行命令下载地址https://www.xshell.com/zh/xshell-download/选免费版FileZilla用于把本地的看板代码、报表文件上传到服务器下载地址https://filezilla-project.org/选免费版。本地代码准备修改适配服务器路径修改把本地Windows路径比如C:\Users\张三…改为Linux服务器路径比如/home/office_dashboard/…静态文件路径确保Flask能正确识别static文件夹图表存放路径注释掉debug模式服务器部署时不能用debug模式避免安全隐患。三、实战云服务器部署办公看板第一步连接云服务器Xshell使用打开Xshell点击“新建”配置连接信息名称随便填比如“我的办公看板服务器”主机填写之前记录的服务器公网IP比如47.108.xxx.xxx端口默认22不用改。点击“连接”输入用户名Linux默认用户名是root再输入购买服务器时设置的密码输入时密码不显示直接输完回车即可如果出现“是否保存密码”选择“是”后续连接更方便连接成功后会显示类似“[rootxxx ~]#”的命令行说明已经成功控制服务器。第二步配置服务器环境安装Python、依赖库1更新服务器软件包更新软件包列表确保安装的软件是最新的yum update -y2安装Python3和pip3安装Python3和pip3yum install -y python3 python3-pip验证安装是否成功显示版本号即成功python3 --versionpip3 --version3安装项目依赖库升级pip3避免安装依赖时出错pip3 install --upgrade pip -i https://pypi.tuna.tsinghua.edu.cn/simple安装项目所需依赖库复制这一行回车执行pip3 install flask flask-login gunicorn openpyxl matplotlib -i https://pypi.tuna.tsinghua.edu.cn/simple如果安装过程中提示“权限不足”在命令末尾加–user比如pip3 install flask --user。4安装Nginx反向代理提升访问稳定性安装Nginxyum install -y nginx启动Nginx并设置开机自启确保服务器重启后Nginx自动运行systemctl start nginxsystemctl enable nginx验证Nginx是否启动成功浏览器访问服务器公网IP能看到Nginx默认页面即成功比如在浏览器输入http://47.108.xxx.xxx第三步上传本地代码到服务器FileZilla使用打开FileZilla点击“文件→站点管理器”新建站点配置站点信息协议选择“SFTP - SSH文件传输协议”主机服务器公网IP47.108.xxx.xxx端口22登录类型正常用户root密码服务器登录密码。点击“连接”连接成功后左侧是本地文件右侧是服务器文件在服务器上创建项目文件夹右侧进入“/home”目录右键新建“office_dashboard”文件夹用于存放看板代码上传本地文件把本地的“app.py、templates文件夹、static文件夹、每日销售报表文件夹”全部拖拽到服务器的“/home/office_dashboard”目录下。第四步修改代码适配服务器关键进入项目文件夹cd /home/office_dashboard用vim编辑器修改app.py新手不用怕按步骤操作vim app.py原本地路径WindowsEXCEL_REPORT_FOLDER rC:\Users\张三\Desktop\办公数据看板\每日销售报表CHART_FOLDER rC:\Users\张三\Desktop\办公数据看板\static\charts修改为服务器路径LinuxEXCEL_REPORT_FOLDER “/home/office_dashboard/每日销售报表”CHART_FOLDER “/home/office_dashboard/static/charts”注释掉debug模式服务器部署必须关闭原程序入口ifname “main”:app.run(host“0.0.0.0”, port5000, debugTrue)新增服务器部署时无需这部分后续用Gunicorn启动第五步部署项目GunicornNginx稳定运行1用Gunicorn启动Flask项目进入项目文件夹cd /home/office_dashboard用Gunicorn启动项目后台运行端口5000命令说明-w 44个工作进程-b 0.0.0.0:5000绑定端口5000app:appapp.py中的app对象nohup gunicorn -w 4 -b 0.0.0.0:5000 app:app 验证是否启动成功查看进程ps aux | grep gunicornnohup和的作用让项目在后台运行即使关闭Xshell连接项目也不会停止。2配置Nginx反向代理编辑Nginx配置文件vim /etc/nginx/conf.d/default.confserver {listen 80; # 监听80端口默认HTTP端口server_name 47.108.xxx.xxx; # 你的服务器公网IP# 转发动态请求到Gunicorn的5000端口 location / { proxy_pass http://127.0.0.1:5000; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; } # 直接处理静态文件图表、CSS提升访问速度 location /static { alias /home/office_dashboard/static; # 静态文件的服务器路径 }}3重启Nginx使配置生效检查Nginx配置是否正确nginx -t重启Nginx配置生效systemctl restart nginx第六步开放服务器端口关键否则外网无法访问进入阿里云ECS控制台找到你的服务器点击「更多→网络和安全组→配置安全组」点击「配置规则→入方向→添加规则」添加2条规则规则1端口范围80/80授权对象0.0.0.0/0允许所有外网IP访问80端口规则2端口范围5000/5000授权对象0.0.0.0/0允许访问Gunicorn端口。保存规则后再配置服务器本身的防火墙开放80和5000端口开放80端口firewall-cmd --permanent --add-port80/tcp开放5000端口firewall-cmd --permanent --add-port5000/tcp重启防火墙使配置生效firewall-cmd --reload验证端口是否开放成功firewall-cmd --list-ports执行后如果显示“80/tcp 5000/tcp”说明端口开放成功。四、测试外网访问与功能验证外网访问看板功能验证确保所有功能正常登录/注销功能能正常登录退出后跳转登录页权限控制不同角色只能查看对应范围的数据领导全量、部门员工本部门、普通员工个人数据展示当日数据、历史数据查询、图表展示正常文件下载能正常下载对应日期的Excel报表后台稳定关闭浏览器、断开网络后再次访问仍能正常使用后台进程在运行。五、新手避坑小贴士外网无法访问优先检查3点——① 服务器公网IP是否正确② 安全组是否开放80/5000端口③ 服务器防火墙是否开放端口连接服务器失败检查服务器密码是否正确、公网IP是否变更新手购买后IP固定除非手动修改、本地网络是否正常依赖库安装失败用清华源-i https://pypi.tuna.tsinghua.edu.cn/simple如果仍失败加–user参数权限问题项目停止运行用“ps aux | grep gunicorn”查看进程如果没有重新执行“nohup gunicorn -w 4 -b 0.0.0.0:5000 app:app ”启动静态文件无法加载检查Nginx配置中“/static”的alias路径是否正确必须是服务器上static文件夹的绝对路径中文乱码确保服务器上的Python代码和HTML文件编码都是UTF-8matplotlib已配置中文字体。六、进阶扩展新手可选绑定域名更易记购买一个域名比如xxx-office.com解析到服务器公网IP之后就能用域名访问看板不用记复杂的IP配置HTTPS更安全申请免费的SSL证书阿里云有免费证书配置到Nginx实现“https://xxx-office.com”访问数据传输更安全自动备份数据在服务器上写定时脚本每天自动备份Excel报表文件到阿里云OSS防止数据丢失监控服务器状态安装宝塔面板新手友好的服务器管理工具可视化监控服务器CPU、内存、项目运行状态多项目部署在同一服务器上部署多个办公工具比如之前的Excel批量处理工具通过不同端口或域名区分访问。七、总结与系列终极闭环AI数据智能分析结合ChatGPT API自动分析看板数据生成周报总结、异常数据提醒移动端适配优化让看板网页适配手机屏幕实现手机端随时随地查看数据多系统集成把办公看板和企业微信/钉钉集成数据异常时自动推送消息提醒。如果这篇文章对你有帮助欢迎点赞收藏关注如果在服务器购买、环境配置、部署过程中遇到问题随时在评论区留言我会逐一解答 新手不用怕云服务器跟着步骤一步步操作就能轻松实现办公工具的“云端升级”让你的自动化工具真正发挥团队协作价值