chore: 导航链接的 src 改为读配置,去掉代码里的个人域名

面向公开仓库脱敏:高德 URI API 的 src 原先在服务端与前端各写死一份个人域名。

- src/helpers.php / templates/nodes/form.php:src 统一取 `config.php` 的 `amap.nav_src`。
  前端模板用 json_encode 输出,与后端同源 —— 原先这个值在两处各写一遍,
  注释里也提醒着「改一边就得改另一边」,现在只改配置一处即可。
- config.example.php:新增 `amap.nav_src`,默认占位 `trip.example.com`
  (src 只是高德侧的来源统计标识,填任意英数字串都能正常工作),
  并注明部署时按自己的域名改这一行。
- LICENSE:版权署名由个人昵称改为 The TripLog Authors。

线上配置已同步补上 `nav_src`(保持原有取值),因此**线上行为不变**:
以线上真实代码 + 真实配置跑过 amap_nav_url(),PHP 7.4 与 8.1 产出的 URL 与改动前逐字节一致。

验证:php -l 全过;amap_nav_url 单测 25/25(新增「src 必须来自配置」「源码里不得出现个人域名」
两条守卫,并做了反向验证 —— 把域名写回去时确实会红);渲染检查 386/386;
部署 10 步全绿(双版本 php -l + 静态断言 + 哈希校验 + 数据库迁移 + HTTP 冒烟 + 真实渲染)。
This commit is contained in:
2026-09-28 19:12:59 +08:00
parent 5645a8db5c
commit cd37f89807
4 changed files with 22 additions and 5 deletions
+2 -1
View File
@@ -412,7 +412,8 @@ $tripField = [
// 规则必须与服务端 amap_nav_url() 保持一致(改一边就得改另一边):
// 有经纬度 → navigation;只填了名字 → search。
// ⚠️ navigation 的坐标顺序是「经度,纬度」(lng 在前),写反了会导到地球另一边。
var NAV_SRC = 'trip.yangyq.net';
// src 与服务端同源,取自 config.php 的 amap.nav_src(只用于统计),不要在别处写死。
var NAV_SRC = <?= json_encode((string)(app_config()['amap']['nav_src'] ?? 'trip.example.com')) ?>;
function navUrl(name, address, lng, lat) {
name = String(name || '').trim();