产品官网 源码介绍与部署说明

一、源码简介

这是一套轻量的 PHP 产品官网,配套一个可视化内容后台。前台是 苹果风味流体设计风格的产品落地页,后台依据字段配置自动生成表单,可以编辑官网上的全部信息:品牌名称与标语、导航菜单、首屏主视觉、核心亮点、图文特性、参数规格、图集、价格与购买、常见问题、页脚、主题配色,以及管理员密码。

零依赖。纯 PHP 加原生 HTML、CSS、JS,不用框架、不用 Composer、不用数据库、不需要编译构建,把文件上传到服务器就能运行。

内置七套行业模板,每套都有独立的页面骨架、区块顺序、排版方式和整套行业示例内容,切换时不是只换一层颜色:

极客数码(tech),适合科技、数码、3C:深色网格底纹、霓虹描边卡片、双列参数。
新潮茶饮(beverage),适合餐饮、茶饮、新消费:左文右图圆形首屏、风味卡片、瀑布图集。
轻奢美妆(beauty),适合美妆、时尚、护肤:衬线杂志封面、编号竖排、细金线分隔。
先锋座驾(auto),适合汽车、出行、新能源:电影级全屏首屏、大数字指标、横向参数条。
智学教育(education),适合学校、培训、知识付费:徽章首屏、课程卡片、垂直时间线。
守护医疗(medical),适合医院、诊所、健康与医美:认证标签、二乘二服务网格、勾选清单。
臻境地产(realestate),适合楼盘、家居、空间设计:暗金全屏、竖线叙事、户型表、不对称图集。
其他特点:后台「预览」只渲染未保存的效果,点「保存全部」才发布到官网;首页带禁止缓存的响应头,避免保存后刷新仍是旧页面。图片留空或失效时会自动生成渐变首字占位图,不会出现裂图,随时可在后台上传真实图片替换。视觉上有玻璃拟态导航、弹簧缓动、滚动揭示、磁吸按钮、光标辉光,移动端自适应,并支持系统「减少动态效果」的无障碍设置。

安全方面:站点内容和账号以「返回数组的 PHP 文件」形式存储在 data 目录,浏览器直接访问只会得到 403 或空响应,不依赖 .htaccess,宝塔的 Nginx 环境同样安全;另有登录会话、CSRF 校验、bcrypt 密码哈希、模板白名单防路径穿越、颜色与链接协议白名单防注入、上传类型与图片真实性校验,以及数据目录的 403 守卫。

二、目录结构

根目录的 index.php 是前台入口,按当前模板载入对应页面,并对 HTML 设置禁止缓存。

inc 目录下:functions.php 是核心引擎,负责数据读写、鉴权、转义、占位图和页面头尾渲染;schema.php 定义后台可编辑字段,想扩展编辑项只改这一个文件即可;default_site.json 是全新安装的默认示例内容。

admin 目录下:index.php 是后台编辑器,依据 schema 自动生成表单;login.php 是登录页,logout.php 用于退出;save.php 保存内容与修改密码;preview.php 渲染不改线上的预览;upload.php 处理图片上传;assets 子目录放后台样式与交互脚本。

assets 目录下:fluid.css 与 fluid.js 是共用设计系统,img 子目录提供内置 SVG 示意图。

templates 目录下按模板 ID 分了七个子目录,每套包含 index.php(页面布局)、meta.json(模板名称、行业、推荐配色)、preset.json(该行业完整示例内容)。

data 目录下:site.php 存站点内容,users.php 存管理员账号,两者都是返回数组的 PHP 文件。uploads 目录存放后台上传的图片。

新增一套模板只需在 templates 下建目录并放入上述三个文件,模板白名单由目录扫描自动产生,无需改其他代码。

三、运行环境

PHP 版本:7.2 及以上,推荐 8.0 至 8.3,已在 PHP 8.2 做过完整回归验证。
PHP 能力:需要 session、json、password_hash(bcrypt)、random_bytes、getimagesize、file_put_contents,这些都属于 PHP 核心能力,不需要 mbstring、GD 或其他额外扩展。
Web 服务器:Nginx(宝塔默认)或 Apache 均可,无需伪静态 rewrite,把 index.php 设为默认首页即可。
目录权限:data 与 uploads 两个目录需要对 PHP 运行用户可写,宝塔环境下运行用户是 www,建议设为 755,其余文件只读即可。
数据库:完全不需要,内容存放在 data 目录下的 PHP 文件中。
浏览器:推荐 Chrome 或 Edge 111 以上、Safari 16.4 以上、Firefox 113 以上,因为用到了 backdrop-filter、color-mix、IntersectionObserver;旧版浏览器会自动降级,内容和功能不受影响。
客户端与网络:无需 Node、npm 或编译;整站只有一个字体域名的预连接提示,不加载外部字体,断网也能完整运行。
四、部署步骤(宝塔面板)

上传源码:把全部源码文件和目录传到站点根目录,例如 /www/wwwroot/你的域名/,要确保 index.php 就在根目录这一层。不要上传历史 zip 包和 .workbuddy 目录。

配置站点:在宝塔绑定域名,站点设置里选择 PHP 版本(7.4、8.0、8.1、8.2 都可以),默认文档加入 index.php,伪静态保持默认不用改。

访问验证:打开 点击下载 查看官网;进入 点击下载 登录,默认账号 admin,默认密码 Admin@123,登录后请立即到「账号」页修改密码。

切换行业模板:在后台顶栏选择模板,勾选「切换时载入行业示例」会把该行业整套文案与推荐配色自动填入编辑区;点「预览」确认效果,点「保存全部」发布,刷新官网即可看到全新版式与内容。取消勾选则只换版式和配色,保留你自己的文案。

可选的 Nginx 双保险:在站点「设置、配置文件」的 server 段内加入以下三行规则,保存后重载配置。第一行是 location ^~ /data/ { deny all; return 403; };第二行是 location ^~ /uploads/ { autoindex off; location ~* .(php|phtml|php\d|phar|cgi|pl|py|jsp)$ { deny all; } };第三行是 location ~ /(.workbuddy|.git|.env)/ { deny all; }。即使不加这三条,数据文件本身也已安全。

五、常见问题

保存时提示「data 目录没有写权限」,回到第 3 步设置权限即可,这是最常见的部署问题。

提示「登录已过期,请刷新页面重新登录」,是会话超时,刷新后台重新登录即可。

切换模板后前台没变化,多半是只改了选择却没点「保存全部」;如果站点开了 CDN 或页面缓存,再清一次缓存(首页本身已禁止缓存)。

从老版本升级时,服务器上的 data/site.json 和 data/users.json 会在首次访问时自动迁移为 .php 文件并删除旧文件,原有内容与密码不丢失,不需要手动处理。

图片上传支持 png、jpg、jpeg、gif、webp、avif,单张不超过 5MB。

如果是 Apache 加 PHP-FPM 环境,且 uploads 目录下的 .htaccess 导致 500 错误,删掉其中的 php_flag engine off 一行即可;Nginx 下该文件被忽略,没有影响。

六源码下载:
点击下载
密码:5ubn

点赞、关注不迷路!

【开源分享】开源产品官网带管理后台支持多行业切换v1.0 第5张插图
【开源分享】开源产品官网带管理后台支持多行业切换v1.0 第6张插图
【开源分享】开源产品官网带管理后台支持多行业切换v1.0 第7张插图
【开源分享】开源产品官网带管理后台支持多行业切换v1.0 第8张插图
【开源分享】开源产品官网带管理后台支持多行业切换v1.0 第9张插图