部署上线教程

📄 约 1,300 字 · ⏱ 大约 4 分钟

部署上线教程

从零到能访问,一共就三步。

第一步:上传文件

方法一:面板文件管理(最省事)

  1. 登录主机面板 → 文件管理
  2. 进入网站根目录 wwwroot
  3. 上传站点压缩包(如 jhp-studio-upload.zip)
  4. 右键 zip → 解压
  5. 删掉 zip

解压后 wwwroot 里应该是:

index.php   doc.php   search.php   config.php
lib/        assets/   admin/      docs/
play/       tools/

注意:不要多套一层文件夹。 如果解压后变成 wwwroot/jhp-studio/index.php,就把里面的文件全部上移一层。

方法二:FTP 工具(FileZilla)

主机信息(以你的实际面板为准):

项目 值
FTP 地址 面板「主机信息」里给的地址
端口 21
账号 面板给的 FTP 账号
根目录 /wwwroot

坑点:FTP 密码常常和面板登录密码不是同一个,要去面板「基础设置」里单独设置或开启 FTP 功能。

方法三:自动脚本(可选)

项目里带了 deploy/deploy.py,填好 deploy/deploy-config.json 后执行即可自动上传,支持 FTP 和 SFTP 自动识别。

第二步:改管理密码(必须做)

默认密码是 jhp2026,任何人都能进你的后台。

在本机有 PHP 的情况下执行:

php -r "echo password_hash('你的新密码', PASSWORD_DEFAULT);"

会输出一串类似这样的东西:

$2y$10$6CmzU0yYv1ch0T45Wyn7yOs86LRVzLmSD6WrChHH40Qvov3CcrQ0S

把它整串复制,替换 config.php 里的:

$admin_password_hash = '粘贴到这里';

保存后重新上传 config.php。

本机没装 PHP?可以用在线的 bcrypt 生成工具,搜「bcrypt hash 在线生成」。

第三步:域名解析

在买域名的那家后台添加 DNS 记录。

主机面板会给你一个「解析地址」(形如 xxx.starzv.com),那就用 CNAME:

类型 主机记录 记录值
CNAME jhpx(或 @) 面板给的解析地址

如果给的是 IP,就用 A 记录:

类型 主机记录 记录值
A @ 主机 IP
A www 主机 IP

同时别忘了在主机面板的「域名管理」里绑定这个域名,两头都要配。

生效时间:5~30 分钟。

怎么确认解析生效了

命令行执行:

nslookup 你的域名

能返回一个 IP 就成了。

上线后检查清单

  • [ ] 打开域名,能看到渐变首页
  • [ ] 左侧目录能展开,点文档能打开
  • [ ] 每篇顶部显示「约 X 字 · 大约 X 分钟」
  • [ ] 右侧「此页内容」目录随滚动高亮
  • [ ] Ctrl + K 搜索能用
  • [ ] /admin/index.php 能用新密码登录(后台样式正常 = 说明 base_url() 生效了)
  • [ ] 后台保存一篇文档,前台能看到
  • [ ] 顶部「玩法」能进 /play/,八张卡片都在
  • [ ] /play/piano/ 能打开钢琴并出声
  • [ ] 顶部「工具」能进 /tools/,四个卡片都在
  • [ ] /tools/qr-code/ 打开就能看到二维码(用的是本地库,不联网)
  • [ ] 默认密码已经改掉

以后更新网站怎么办(重要)

你的文章全部放在服务器的 docs/ 目录里,后台发的文章也写在那里。 本地压缩包是打包时那个时间点的照片——它不认识你之后在服务器上新发的文章。

换文件分两种情况:

换法 服务器上的新文章 服务器上改过的旧文章
直接解压覆盖(不清空目录) ✅ 还在 ⚠️ 如果本地包里也有同一篇,会被本地旧版覆盖
先清空 wwwroot 再解压 ❌ 全丢 ❌ 全丢

正确做法(换文件前先备份文章):

  1. 主机面板 → 文件管理 → 进入 wwwroot/docs
  2. 把这个目录打包下载到本机(或用 FTP 整个拖下来)
  3. 用下载的 docs/ 覆盖本机项目里的 docs/
  4. 重新打包、上传、解压

这样本地永远有服务器上的最新文章,换文件既不丢、也不会被旧版覆盖。

懒人办法:解压时选「覆盖」,千万别先清空目录;换完后去后台扫一眼文章列表,发现哪篇变旧了,就从下载的备份里恢复那一个文件。

出问题怎么办

现象 原因 解决
白屏 PHP 版本不对 面板里切换 PHP 版本(7.4 / 8.x)
500 错误 文件权限问题 目录改 755,PHP 文件改 644
中文乱码 文件编码不对 确认是 UTF-8 无 BOM
404 根目录放错位置 确认文件在 wwwroot 下而不是子目录
样式全丢 CSS 没传上去 检查 assets/style.css 是否在
后台保存失败 docs/ 不可写 权限改成 755 或 777
玩法/工具页面样式全丢 根 assets/app.css 没传(所有静态页统一引用根目录这份样式) 确认根目录 assets/app.css 在
二维码页空白 库文件没传 检查 tools/qr-code/assets/qrcode.js 是否在
玩法页面点了没声音 浏览器的自动播放限制 先点一下页面任意位置再玩(浏览器规定)

📰 每日速递 更多 →