静态文件、前端路由、HTTPS 与长连接
Docker、Nginx 与 Python 项目部署#Python全栈#第十九阶段#Docker、Nginx 与 Python 项目部署#静态文件、前端路由、HTTPS 与长连接约 993 字 · 3 分钟阅读
追问显示点击任意追问卡片可收起 / 展开
Nginx 的 root 与 alias 怎样把请求路径映射到文件?
追问 访问 /static/app.js 时,实际磁盘路径怎样推导?尾部斜杠、location 范围和文件权限如何验证,避免靠不断试路径解决 404?
Django 的静态源文件、collectstatic 与线上静态服务怎样配合?
追问 STATIC_URL、STATIC_ROOT 和应用内静态文件各表达什么?关闭 Debug 后管理页样式消失时,应检查收集产物、挂载与代理路径的哪些环节?
前端带内容哈希的静态文件与 HTML 入口应怎样设置缓存?
追问 为什么入口页面和版本化资源不能简单使用相同的长期缓存?新版本发布、旧标签页与文件清理怎样避免出现缺失资源?
SPA 刷新子路径出现 404,怎样设计页面回退?
追问 try_files 怎样把页面路径交给入口文件?为什么不存在的 API 或 JavaScript 文件不应被误回退为返回 200 的 HTML?
前端构建时变量与容器运行时变量有什么区别?
追问 Vite 等工具生成的 API 地址何时进入产物?只修改 Nginx 容器环境变量为何可能无效,运行时配置方案又怎样实现且避免泄漏秘密?
静态资源与用户上传的媒体文件应怎样区分?
追问 哪些文件可以直接公开,哪些需要应用授权后访问?私有报告怎样使用受控内部转发或签名访问,不能直接把整个媒体目录开放的原因是什么?
HTTPS 部署需要怎样检查域名、证书、私钥与证书链?
追问 多域名与 SNI 怎样影响证书选择?更新文件后怎样加载并确认外部实际证书,过期与链不完整分别怎样定位?
WebSocket 经过 Nginx 后,需要怎样处理握手与连接超时?
追问 HTTP/1.1 经典升级流程中的 Upgrade 与 Connection 头怎样传递?wss、后端协议、心跳与空闲读取超时怎样配合?
SSE 或流式响应为什么直连正常,经过代理却延迟成批输出?
追问 应用刷新、代理响应缓冲、压缩与客户端读取怎样分层检查?怎样只对需要的路径调整,并验证断开与超时行为?
大文件上传、下载或报告生成是否适合全部放在同步请求里完成?
追问 大小上限、磁盘临时文件、应用耗时和代理期限怎样协调?异步生成与状态查询、流式下载各适合什么场景?
文件与连接核对资料: Django:Deploy static files、Vite:Env Variables and Modes、Nginx:HTTPS servers、WebSocket proxying。