米蛋小院 · 2.7.1 免建库版

从搭建小院,
到每天照顾小客人。

宝塔安装 · 微信发布 · 首页换图 · 寄养、相册与好物商城
给院长的配置与使用手册 · 2026 年 9 月 9 日

① 先看这里:你拿到的是什么?

这是免建库 PHP 后台源码和原生微信小程序源码。解压到宝塔 PHP 网站后,打开 https://你的域名/admin 完成初始化。微信 AppID、AppSecret、支付资料和订阅模板都可以安装后在商家后台填写、修改

上传服务器,只是把后台安装好。客户能在微信里使用,还需要:微信账号与所需资质准备好 → 后台下载自动配置的小程序包 → 微信开发者工具上传 → 微信公众平台审核通过并发布。
你要做的事在哪里做
客户、狗狗、余额、预约、商品、照片、订单你的网站 /admin
换首页大照片、页面内 Logo后台 → 首页图片
填写微信密钥、支付密钥、消息模板后台 → 小院设置
小程序认证、备案、账号头像、服务类目、隐私指引、审核发布微信公众平台的小程序账号
预览真机效果、上传小程序代码电脑上的微信开发者工具

在线网页预览使用演示数据,只用来查看页面和操作效果;不连接你的服务器,不收取款项,也不发送微信提醒。演示数据刷新后会重置,各页面的演示数据独立。

本版已经有 / 仍需你完成

已包含:独立后台、客户 UID 与狗狗 ID、隐私授权流程、寄养预约、入住日历、事件相册、商城入口开关、微信支付 API v3 接口、全额退款、私密交付凭证、订阅提醒、后台导出小程序包。

尚未完成真实微信和服务器联调。此环境没有可用 PHP;随包 PHP 集成测试未执行。没有微信发货信息自动上报、快递实时查询、部分退款、在线寄养套餐充值,也没有 Node 旧库自动迁移。发货信息需另外在微信公众平台维护。

v2.7.1:修复“请在本站安装页面提交”

v2.7.0 安装页使用 no-referrer 策略,浏览器的普通表单 POST 会把 Origin 变成 null,随后被本站来源校验拒绝。截图中的报错发生在安装码验证之前。这是程序配置冲突,不是数据库或目录权限提示。

本版仅在安装页改用 same-origin,并加同样的页面策略;保留安装码、CSRF、Cookie 和严格来源校验。真正的外站来源仍会被拒绝,null 来源会提示重新打开安装页。依据:Fetch 标准的 Origin 生成规则

  1. 已上传 v2.7.0:把“安装提交修复包-v2.7.1.zip”上传到当前网站根目录,解压并覆盖两个同名程序文件。
  2. 关闭之前的安装页面,重新打开 https://pet.qh1001.xin/admin。页面底部应显示“安装页 v2.7.1”;看到这个标记后再填写。
  3. 继续使用上一次的 v2.7 专用安装码,设置管理员账号密码并提交。不需要创建数据库、修改防跨站目录或删除现有数据。

补丁只更新 install/index.phpapp/App.php,不含 storageinstall/package.php。后者保留原有安装码校验资料。如果仍显示旧版本,确认解压路径正确,再刷新;必要时在宝塔重载本站 PHP。

完整包已同步修复,同样沿用原安装码。已经完成安装的站点不应重新初始化;保留完整 storage 即可。

核对了源码冲突和浏览器标准,补充了 HTTP 来源回归用例。当前环境无 PHP,HTTP 安装用例未执行;云端浏览器访问本地复现页返回 ERR_BLOCKED_BY_CLIENT,未完成浏览器实测。此次没有向你的服务器提交安装、设置密码或改动线上数据。

维护人员可运行 MIDAN_PHP_BIN=/path/to/php node tests/http.mjs;用例使用临时站点和测试安装码。单独观察浏览器行为可运行 node tests/installer-policy-server.mjs,在本机浏览器访问 http://127.0.0.1:8767/oldhttp://127.0.0.1:8767/fixed,分别点击“提交测试”。后者是纯来源策略实验,不代替 PHP 安装测试。

② 现在这样安装:上传、填码、进后台

本版不用 MySQL,也不用 SQLite。无需手动建库,无需新建站外目录,无需修改防跨站允许路径。
程序自动在本站创建 storage 文件夹,保存客户、订单、照片和设置。

1. 上传并解压新版 ZIP

你截图中的 PHP 8.2、HTTPS、图片和压缩扩展已经通过检查。备份当前未完成安装的程序,再把新版完整包解压到 /www/wwwroot/pet.qh1001.xin,覆盖同名程序文件。确保这一层直接看到 index.phpadminapiappinstall,不要多套目录。

只覆盖程序;如果站点已产生客户、余额或订单,不适用这次全新安装流程,见第⑥节。解压后把安装 ZIP 移走或删除,只保留解压出的程序。安装码文本保留在自己的电脑,不要上传。

2. 打开 /admin,填随包提供的安装码

  1. 打开 https://pet.qh1001.xin/admin,会自动进入安装页。
  2. 从这次单独提供的“专用安装码.txt”复制整行安装码,粘贴到“首次安装码”。不用去服务器找文件,也不用编辑源码。
  3. 填写本站 HTTPS 域名,不带 /admin/api。设置管理员账号和 12—128 位密码,两次密码一致后点安装。
  4. 安装完成后,使用自己设置的账号密码登录 /admin。本站安装入口自动关闭,安装码以后不用再填。

3. 在后台设置小院和微信资料

“小院设置”里填写店名、电话、地址、每晚预约上限(默认 5 只)、微信 AppID / AppSecret、订阅模板和支付资料。商城默认隐藏,准备好商品和自提 / 配送方式后再打开。主页大图和页面内 Logo 在“首页图片”修改。

环境检查还有红色项时再看这里

③ 微信配置与代码发布

1. 微信公众平台先准备这些

使用小程序账号登录微信公众平台。按该账号当前页面完成主体信息、所需认证/备案、服务类目、隐私保护指引和相关资质。寄养按实际宠物服务选择类目;鲜食、玩具、用品按真实销售内容选择对应经营范围,不能一律当作鲜食类目。

具体可选类目、主体资格和审核材料以该账号当前页面为准,本手册不保证某个类目一定对你的主体开放。本次未能读取微信官方文档页面来逐项核验最新平台要求;文末提供官方入口,发布前请核对。

2. 配置服务器合法域名

微信设置项本例填写说明
request 合法域名https://pet.qh1001.xin客户登录、资料、相册、预约、订单和本版图片二进制上传
uploadFile 合法域名https://pet.qh1001.xin可同时配置同一域名;本版上传通过 wx.request
downloadFile 合法域名https://pet.qh1001.xin图片访问、预览与下载所用域名
socket、UDP、TCP、业务域名本版没有对应功能要求无需为本程序额外填写

域名应满足微信平台当前校验要求、证书完整有效,与后台“HTTPS 域名”一致。不要填写服务器 IP、后台路径或旧站域名。真机验收时开启域名和 HTTPS 校验,不能只依赖开发工具的跳过校验选项。

3. 后台填写微信登录配置

在小程序账号的开发配置中获取实际 AppID 和 AppSecret,填入米蛋后台 → 小院设置 → 微信配置。AppID 是小程序身份;AppSecret 是服务端密钥。后台“已配置 / 就绪”表示配置格式已具备,不代表已通过真实登录或支付测试

密钥留空表示保留已保存的值,不是清空。保存后不回显完整密钥。更换同一账号的密钥、证书、消息模板可在后台进行;已有微信客户时直接换 AppID 会被阻止,避免客户身份变乱。商户号也受旧订单和售后限制。

4. 配置照片、物流和预约订阅提醒

  1. 在微信公众平台为当前类目选用适合的订阅消息模板。
  2. 在后台分别填写预约模板,以及照片、物流两种场景的模板 ID。
  3. 把实际模板中的字段编号对应到页面中的宠物、事件、时间或订单、物流公司、运单号、状态等项目。字段编号及类型必须和平台模板一致,不能照抄别人的 thing1time2
  4. 客户在小程序里主动点击订阅并同意;商家发布日常时勾选提醒主人。后台发送记录会显示已发送、缺少授权、未配置、失败或结果待核实。

不是每次上传都能无条件推送。一次性订阅受用户授权和可用次数约束。一场散步的多张照片属于一个事件,发布时只通知这个狗狗 ID 绑定的主人;后来补图、调整封面或改公开范围不重复推送。未能发送微信提醒时,已经保存的相册和订单仍可以在小程序查看。

5. 开商城前配置微信支付

后台字段从哪里获取 / 注意什么
小程序 AppID必须是客户实际使用的小程序,并按微信支付要求绑定商户
商户号你的微信支付商户平台
商户证书序列号与当前商户 API 证书对应的序列号
商户私钥完整 PEM 私钥文本,包含 BEGIN / END;不是文件名或文件路径
微信支付公钥 ID / 平台证书序列号与你填写的平台验签公钥或证书对应,不能和商户证书序列号混填
微信支付公钥 / 平台证书微信支付提供的完整 PEM 公钥或平台证书文本
API v3 密钥商户平台配置的 32 字节密钥;不是 AppSecret
支付回调地址程序根据域名生成:https://pet.qh1001.xin/api/wechat-pay-notify.php

支付成功以服务端验证后的微信交易结果为准;小程序付款弹窗完成不直接把订单改成已付款。出现网络异常时,先在对应订单点击微信对账,避免重复收款或退款。本版是全额原路退款,实际到账以微信结果为准。

微信发货管理需另做:本版填写物流、上传凭证,只更新小院订单和本版订阅提醒,不会调用微信的发货信息自动报送接口。请在微信公众平台查找“支付与交易 / 订单管理 / 发货信息录入”或该账号对应入口,为实物订单按平台要求填写真实发货方式、商品和物流信息。商家本地“完成订单”也不等于微信平台的买家确认收货。

6. 导出、真机检查、上传、审核、发布

  1. 先保存正确的 AppID 和本站 HTTPS 域名。
  2. 后台 → 小院设置 → 下载小程序发布包。下载包会自动带上 AppID 与接口域名,不含 AppSecret、支付私钥、客户数据库或商家备注。
  3. 在电脑解压下载的包。打开微信开发者工具,导入包含 project.config.jsonmidan-miniprogram 目录,不是只选择内层 miniprogram 文件夹。
  4. 使用该小程序的管理员或已授权开发者账号,在开发者工具编译、预览到手机;按第⑦节检查。
  5. 开发者工具点击上传,填写版本号和更新说明。到微信公众平台“版本管理”找到开发版本,提交审核,按平台要求填服务与功能说明。
  6. 审核通过后点击发布,客户才会使用新版。如果被退回,按具体原因修改、重新上传提交。

以后只换首页图片、商品、相册或同一账号的服务端密钥,不需要手改小程序源码。这次从旧版升级至支持公开预约日历的 2.6 界面,仍要重新上传并发布小程序代码。以后变更接口域名或 AppID,也要重新下载对应发布包并发布。

④ 你关心的:如何换首页照片?

  1. 进入 /admin → 首页图片
  2. 在“首页大图”中点“选择新图片”,选一张横版宣传照片,页面立即预览。
  3. 要换页面内图标,在“小院 Logo”里另选一张正方形图片。建议用白色背景,完整展示图案。
  4. 点击保存首页图片 ♡,看到成功提示后,小程序重新进入首页或下拉刷新即可读取新图。
  5. 想用回原来的可爱插画,点对应卡片“恢复默认插画”,再保存。

两张图分别管理,恢复其中一张不会重置另一张。每张支持 JPG、PNG、WebP,最多 5 MB、800 万像素;超出时先缩小尺寸。上传失败会保留已选内容,重试时已成功上传的图不会重复上传;离开页面前没有保存的更换不会生效。

这是向所有访客公开的首页宣传区域,请单独选择适合公开的图片。系统不允许直接挪用客户头像、宠物档案、相册或订单凭证的旧链接。相册管理与首页宣传分开,避免改首页时改变狗狗照片的原可见范围。

“首页图片 → Logo”改变的是小程序页面内和已登录后台显示的图标。微信搜索、分享或账号资料中的“小程序账号头像”,仍在微信公众平台修改。
客户首页与商家首页图片编辑预览
本版浏览器预览:左侧为客户首页,右侧为独立商家后台。手机上可向下滚动继续设置 Logo 和保存。

新功能 · 公开预约日历

首页 → 小窝预约日历。所有人都能打开,不需要先登录;日历按月显示每天已预约的狗狗数量和剩余名额。点某一天,再点“从这天开始预约”,登录后选择狗狗与离店日期。

院长怎样修改上限?

打开 https://你的域名/admin小院设置 → 每晚预约上限(只) → 保存。新安装默认 5 只,可以改成 1–100 的整数,不需要修改源码或重新发布小程序。已有安装保留原容量;升级后如需统一为 5,请在这里手动改成 5。

情况名额怎样计算
同一订单带两只狗每一晚占 2 个名额,不是只算一笔订单。
9 月 10 日入住、13 日离店占 10、11、12 日三晚,13 日当晚可给下一位预约。
待确认、已确认、正在入住都占预约名额。待确认只占名额,不预留余额;确认后才预留余额。
取消 / 拒绝待确认可由客户直接取消;已确认的取消申请须商家处理。只有实际取消或拒绝才释放名额。
一晚只剩 1 位,客户带 2 只包含这一晚的整段预约不能提交,即使其他日期空位足够。
多人同时预约服务器在同一个独占文件锁事务中检查名额并写入预约,不能只依赖客户端按钮。并发回归用例已附,需在 PHP 环境执行。
未按时接走在住订单即使已超过计划离店日,也继续占用今天的名额。接走后及时办理离店;不自动推定未来延住天数。
调低上限新值不能低于当前实际在住数和任何未来日期的已占位数(含待确认);冲突会显示具体日期。

公开日历和商家日历有什么不同?

公开日历只显示数量,不返回客户姓名、手机号、客户 UID、预约编号、狗狗档案或习性备注。商家“谁来小住”的正式日历仍只排已确认 / 在住 / 已离店档期,可以点具体狗狗查看私密手帐;待确认预约在预约管理处理,也已占前台名额。

待确认不会自动过期,请及时确认、拒绝或联系客户取消。旧版若已有超容量的待确认预约,升级不会删除它们:日历显示已满,请先在预约管理处理冲突,再确认或调低上限。

刷新与升级

日历支持下拉刷新,每次打开重新读取。数字是查询时的余位,提交时服务器会再次检查;如果别人先订走最后一个名额,会提示重新选日期,不会显示预约成功。网络异常时不把未知余位当作空房,也不会继续开放提交。

从旧版升级,备份后更新服务器源码;在后台重新下载小程序发布包,使用微信开发者工具上传,审核并发布,客户才会看到新日历。之后仅修改上限,无需再审核代码。安装与原数据目录保持不变,不要删除私有数据目录或主密钥。

给维护人员:公开接口

GET /api/index.php?route=%2Fapi%2Fpublic%2Favailability&start=2026-09-10&end=2026-09-13

参数为 YYYY-MM-DD,结束日不含,单次 1–93 天(预约本身最多 90 晚)。返回 start, end, today, capacity, days;每项只含 date, booked, remaining, full。北京时间定义“今天”,无登录要求;响应禁止缓存。实际日期按需替换。

⑤ 院长每天怎么用?

给客户与狗狗建档

后台 → 客户与狗狗 → 给客户开档,填写称呼、联系电话、狗狗名字和初始寄养晚数。把一次性绑定码交给主人;主人在小程序微信登录后绑定,才能看到这个旧档案的余额和狗狗。绑定码重新生成后,旧码失效;不要替同名狗狗随意换主人。

每位客户有只读 UID,每只狗狗有独立 ID。改名字、头像不会改变 ID;绑定已有商家档案后,以绑定后的档案 UID 为准。上传头像、使用照片前按微信隐私状态展示授权;拒绝时不继续读取和上传图片。隐私同意、相册公开同意、订阅提醒是三个不同选择。

寄养余额、预约和日历

本版按狗狗 × 晚数计费,不是按自然日显示天数自动扣款。例如 9 月 1 日入住、9 月 4 日离店,一只狗计 3 晚,两只狗计 6 晚。待确认预约不占用余额;确认后预留晚数,取消时释放,办理离店后才核销一次。充值由商家在线下收款后录入晚数和原因。

  1. 客户提交日期、狗狗和备注,商家在“预约管理”确认或拒绝。
  2. 确认后的档期进入“谁来小住”日历,横条表示入住到离店前一晚。待确认预约不放进正式日历。
  3. 点击具体狗狗的时段,可打开长期保存的习性手帐。商家注意事项、吃饭习惯、性格和作息只给商家看
  4. 实际到店时办理入住,接回时办理离店;可以写完成说明或上传交接凭证。日历展示的是预约档期,迟接或提前接回要由院长核对处理;本版不会按实际小时自动改价。

发布一件日常,而不是逐张照片

  1. 寄养相册 → 记一件小日常,先选已有档案里的狗狗,确认自动显示的主人与 ID。
  2. 选遛弯、吃饭、玩耍、休息、护理等类型,填写日期、时间段、标题和说明。
  3. 一次选多张或分批加图,一件事共 1 至 30 张。拖动,或点击前移 / 后移排序;第一张就是封面
  4. 选择“仅给主人”或“公开展示”。公开展示要求对应主人已同意公开;可保存为仅给主人,等取得同意后再改公开。
  5. 发布后可回到原事件修改文字、补图、排序或切换范围。既有“内部”记录保留历史范围,需要院长主动改为新范围,不会自动公开。
内容谁能看
公开事件相册所有访客;提醒只针对该狗狗绑定主人
仅给主人相册对应主人与商家
狗狗习性与商家注意事项只给商家
发货、自提、完成凭证本单客户与商家
首页宣传大图和 Logo所有访客

公开相册不能放商家的私密备注或客户地址;“相册说明”公开后同样人人可见。主人撤回公开授权后,公开接口不再展示其相册;已被别人看过或保存过的照片无法远程收回。

好物上架、订单与交付

在“好物货架”添加商品图片、名称、价格、库存和说明;玩具、用品不必填食品专用的保存与保质期字段。商城开关在小院设置,隐藏后客户不能新下单,但已有订单不会消失。

商家“订单管理”和客户“我的订单”都分寄养与商品。商品已付款后再发货或确认自提;配送需填真实物流单号,可加照片或说明作为凭证。已保存的凭证可在相应订单补改,不会进入宣传相册,也不重复核销寄养晚数。

物流记录为商家手动填写,客户能查看历史更新;不是快递公司实时接口。需要退款时先处理实际退货交接,再在后台确认全额退款。网络不确定时先对账,不用另建退款单重复操作。

⑥ 备份、迁移和维护

你截图里的安装还没完成

这次 v2.7 是免建库的全新安装版,针对你当前还没完成初始化的站点。旧版要求的站外文件夹不再使用;不用为了新版去创建它,也不用手动导入数据。

已有正式客户或订单的旧版,不能直接按全新安装覆盖

v2.0—2.6 使用 SQLite,本版改为数据文件,没有自动迁移旧 SQLite / Node 数据。已有真实资料时,应保留完整原程序、站外数据目录和原配置,迁移后再切换。不要删除旧库来绕过提示,也不要创建同名客户代替旧 UID。

v2.7 安装后:备份整个网站目录即可

  1. 备份时暂停小程序业务写入与计划任务,避免照片和订单跨时点不一致。
  2. 在宝塔备份整个网站目录,确认包含自动生成的 storage。里面的 state.php 是客户 / 订单等记录,config.php 含加密主密钥,uploads 保存照片;必须一起保留。
  3. 备份包下载到自己电脑或受控备份位置,不要放在可直接下载的网站目录。
  4. 恢复时还原整站与完整 storage,并恢复本站 PHP 用户的文件访问权限。不要重新初始化。更换服务域名后,在后台更新域名并重新生成、上传小程序发布包。

客户数据仍然需要长期保存;“免建库”指不需要数据库服务或数据库设置,不表示数据可以删除。数据文件损坏或安装后缺失时,程序会报错,不会自动创建空白记录覆盖。

计划任务与忘记密码

宝塔计划任务每 5 分钟执行一次下面命令,处理超时订单、对账、待发送提醒和过期会话。将版本和网站路径换成实际值;运行用户须能写入本站 storage。

/www/server/php/82/bin/php /www/wwwroot/pet.qh1001.xin/tools/cron.php

忘记商家密码时在宝塔终端运行下面命令,按提示输入两次新密码。成功后旧商家登录失效。

/www/server/php/82/bin/php /www/wwwroot/pet.qh1001.xin/tools/reset-password.php --username=admin

⑦ 上线前验收与常见问题

这次实际验证了什么?

v2.7.0 的 110 项前端回归检查通过;本次安装修复没有重新执行这组业务前端测试,覆盖隐私授权逻辑、相册排序、订单入口、账号切换、首页换图和预约日历。这些使用本地 JavaScript 与明确的模拟微信响应。

本环境没有 PHP,新增文件存储和真实 HTTP 安装测试未执行,也没有微信真机联调。新增 tests/store.php 的 10 个用例,覆盖事务回滚、唯一订单、会话、文件保护、损坏拒绝及 4 进程并发;既有业务和 HTTP 安装用例已改为文件版。安装页会在你的服务器上实际检测文件读写和替换,但不能代替业务与支付验收。

未新增浏览器视觉实测。手册内图片和 320 / 390 宽度记录来自 v2.5;v2.6 的网页装载与模拟容量检查是历史记录。本版没有更改小程序布局,不能据此承诺所有手机无重叠。

在你的测试站和手机上依次确认

  1. 从干净目录完成安装,能登录 /admin;刷新后设置仍在,退出后未登录不能操作后台。
  2. 更换首页大图与 Logo,确认小程序刷新能看到;分别恢复默认;上传过大或不支持的文件应提示失败。
  3. 使用两个不同微信账号建两个家庭,即使狗狗同名,也只能各看各的余额、私有相册、订单与凭证;公开相册人人可看,私密习性始终不出现在客户页面。
  4. 首次上传头像 / 狗狗照片,分别检查同意、拒绝、重新同意;昵称与头像修改后 UID 不变。
  5. 提交预约、确认、入住、离店,核对预留与核销;重复点击、余额不足、容量满和档期重叠都要检查。另用两个不同账号同时抢最后一个名额,确认只能有一个成功;检查跨月、多狗、取消释放和调低容量拒绝。
  6. 一件日常上传多图、排序、改封面;公开 → 仅给主人 → 再公开均可保存,授权不足时不能公开。
  7. 给你自己的测试订单做一笔小额真实付款、对账、发货、自提和全额退款;核对商户平台金额与状态,处理微信发货信息。
  8. 主人主动订阅,分别测试预约、相册、物流提醒与拒绝订阅;没有授权时不应显示“微信已发送”。
  9. iPhone 与安卓真机检查长狗名、长商品名、系统大字体、软键盘展开、返回切页和网络中断,确认没有遮挡。

遇到问题,先看这张表

现象先处理
打开网站还是默认欢迎页检查根目录、默认文档 index.php、旧 index.html 和本站旧反向代理。
/admin 打不开或显示 PHP 源码网站须启用 PHP 8.2+ 并正确解析 PHP,不能当静态站托管;先修 PHP 配置。
仍提示站外私有目录这是旧版页面,确认 v2.7 覆盖到了当前站点。新版不再需要站外目录,也不需要改 open_basedir。
上传出现 413 / 图片太大压缩到单图 ≤5 MB、≤800 万像素;检查 Nginx 请求体限制和 PHP 配置,建议 client_max_body_size 与 post_max_size 至少 8m。
换图保存成功但首页没变确认小程序已升级本版、连接同一域名,再重新进入首页或下拉刷新。网页演示与正式服务的数据不相通。
过一会儿图片打不开受控上传图片链接有效期约 5 分钟,刷新页面获取新链接;检查 HTTPS、系统时间与域名设置。后台持久保存的是图片编号,不是临时链接。
仅给主人切不回公开编辑原事件;检查该狗狗对应客户是否已经同意公开。缺少同意时不是按钮故障。
开发工具能用,手机不行检查实际 AppID、发布包接口域名、合法域名、证书链、账号权限和隐私声明;不要靠跳过校验来验收。
付款后仍显示待支付先检查回调可达和签名配置,再点击订单微信对账,不要重新创建或手动标已付款。
上传成功却没微信提醒查看发送记录:模板、字段类型、AppID、主人授权和剩余次数;保存照片不等于微信发送成功。
重装后旧客户找不到停止继续写入,恢复完整网站和 storage;旧 SQLite 版恢复其原始配置和数据目录,不要新建同名账户代替旧档案。
给维护人员:可复现的本地检查命令

生产运行不需要 Node。以下 Node 命令仅用于测试。PHP 测试使用临时数据文件与明确的微信模拟适配器,不访问真实支付账号。

node tests/privacy-public.mjs
node tests/native-events.mjs
node tests/event-ui.mjs
node tests/calendar.mjs
node tests/ui.mjs
node tests/home-session.mjs
node tests/appearance-ui.mjs
node tests/availability.mjs
php tests/store.php
php tests/wechat.php
php tests/integration.php
php tests/event-notifications.php
php tests/logistics-events.php
php tests/appearance.php
MIDAN_PHP_BIN=/www/server/php/82/bin/php node tests/http.mjs

PHP 命令须使用装好必要扩展的 PHP 8.2+;如命令行 PHP 不同,请用完整可执行文件路径。先在测试环境运行并保留结果,再做真实微信联调。

官方核对入口

以下为官方文档入口,便于你在发布时按账号当前要求核对;本次无法完整读取这些页面,不将其列为已完成的最新规则核验。