455ac815c75f18e50958a147fe943e1f5f5105ae
深圳市云创芯电子有限公司 · Laravel 12 + Vue3(CDN) 官网
一套零构建、零 Node的轻量全栈站点,专为宝塔面板(Nginx + PHP 8.3 + MySQL 5.7)设计,强调安全、稳定、易移植。
功能模块
| 模块 | 前台 | 后台管理 |
|---|---|---|
| 产品中心 | 列表 + 搜索 + 分类筛选 + 详情页 | CRUD + 分类 + 草稿/发布 |
| 技术文章 | 列表 + 搜索 + 分类筛选 + 详情页 | CRUD + 分类 + 作者 + 发布时间 |
| 术语库 | 列表 + 搜索 + 详情页 | CRUD + 别名 + 分类 |
| 技术论坛 | 版块 + 帖子 + 回复 + 发帖/回复 | 版块管理 + 帖子删除 + 锁帖 |
| 联系我们 | Vue 异步表单 + CSRF + 限流 | 留言列表 + 详情 + 删除 |
| 用户系统 | 注册 + 登录 + 退出 + 个人设置 | 用户列表 + 管理员提权/降权 + 删除 |
| 用户等级 | 积分驱动 L1–L5 徽章 + 进度条 | 用户列表可见积分 |
| 账号安全 | /settings 自助修改密码(需验证当前密码) |
- |
| 站点设置 | 站名 / Logo / Favicon / ICP 全站生效 | /admin/settings 统一维护 |
| SEO | 每页独立 title + description,缺省回落全局 | 文章/产品表单内逐条填写 |
| 文章版式 | 三种阅读版式(标准 / 宽栏 / 文档) | 发布时下拉选择 |
| 仪表盘 | - | 统计概览 + 最新留言/帖子 |
技术选型
| 项 | 方案 |
|---|---|
| 后端 | Laravel 12(PHP 8.3) |
| 前端交互 | Vue 3.5.13 全局构建,本地自托管(无 CDN 依赖) |
| 样式 | 纯 CSS + 设计令牌(:root 变量),全站只用 var() |
| 视图 | Blade 服务端渲染(SEO 友好,首屏快) |
| 图标 | 内联 SVG 组件(统一描边,16/20/24 三档尺寸) |
| 前端构建 | 无构建(无 npm / Vite / Tailwind) |
| 数据库 | MySQL 5.7(utf8mb4_unicode_ci) |
| RBAC | is_admin 布尔标志位 + Admin 中间件 + /admin 路由组 |
目录结构
app/
Http/Controllers/
HomeController.php 首页(产品+文章)
ProductController.php 产品列表/详情
ArticleController.php 文章列表/详情
GlossaryController.php 术语列表/详情
ForumController.php 论坛版块/帖子/回复
ContactController.php 联系表单(Vue 异步 + 限流)
HealthController.php /api/health 健康检查
Auth/LoginController.php 登录 / 退出
Auth/RegisterController.php 注册
Auth/SettingsController.php 个人设置(修改密码)
Admin/ 后台管理(10 个控制器,含站点设置)
Http/Middleware/Admin.php 管理员中间件
Models/ 10 个模型(含关系和 scope)
database/
migrations/ 16 个迁移
seeders/ 7 个 seeder(全部幂等,可重复执行)
public/
css/app.css 设计令牌 + 完整组件样式
js/app.js Vue 挂载(联系表单)
js/vendor/vue.global.prod.js 自托管 Vue 3.5.13
resources/views/
layouts/app.blade.php 前台布局
components/icon.blade.php 内联 SVG 图标组件
home.blade.php 首页
products/ articles/ glossary/ 前台展示页
forum/ 论坛页面
auth/ 登录/注册/个人设置
admin/ 后台管理页面(layout + 16 个子页面)
routes/web.php 前台 + /admin 路由组
安全要点
- 全站 CSRF(
@csrf+ 前端X-CSRF-TOKEN) - 表单服务端校验(
validate),Vue 仅做体验增强 - 联系表单频率限制:同一 IP 60 秒内最多 5 次
- 密码
bcrypt(hashedcast),会话 cookiesecure+http_only+encrypt - Blade
{{ }}自动转义,防 XSS - Eloquent 参数化查询,防 SQL 注入
- Admin 中间件保护所有后台路由
宝塔部署(3 步)
第 1 步:建站点 + 数据库
宝塔 → 网站 → 添加站点:
- 根目录指向
public/ - PHP 版本:8.3
- 同时建好 MySQL 数据库(排序规则
utf8mb4_unicode_ci)
第 2 步:传代码 + 安装
cd /www/wwwroot/cloud-chip.cn
# 配置 Composer 镜像(国内服务器)
composer config -g repos.packagist.org composer https://mirrors.aliyun.com/composer/
# 安装依赖(必须先于 artisan 命令)
composer install --no-dev --optimize-autoloader --no-interaction
# 配置环境
cp .env.example .env
# 编辑 .env,填写:
# DB_DATABASE=你的数据库名
# DB_USERNAME=你的数据库用户
# DB_PASSWORD=你的数据库密码
# APP_URL=https://cloud-chip.cn
# 生成密钥 + 迁移 + 种子数据
php artisan key:generate
php artisan migrate --force
php artisan db:seed --force
# 权限
chmod -R 755 storage bootstrap/cache
php artisan storage:link
或直接运行 ./install.sh(自动完成上述全部步骤)。
第 3 步:配置伪静态
宝塔 → 站点设置 → 伪静态 → 选择 Laravel 模板。
注意事项
- 宝塔禁用函数:PHP-8.3 设置 → 禁用函数,删除
putenv, proc_open, proc_get_status, proc_close, popen并重启 PHP-FPM - 运行时目录:确保
storage/和bootstrap/cache/对 www 用户可写(755)
默认管理员账号
Seeder 会自动创建管理员账号:
- 邮箱:
admin@cloud-chip.cn - 密码:
cloudchip2026
请在首次登录后立即修改密码:登录后访问 /settings → 修改密码(需输入当前密码校验)。
数据库表
| 表名 | 说明 |
|---|---|
| users | 用户(is_admin 布尔 + points 积分) |
| settings | 站点级 key-value 配置(ICP / Logo / SEO 等) |
| password_reset_tokens | 密码重置令牌 |
| failed_jobs | 失败任务队列 |
| contact_messages | 联系表单留言 |
| categories | 分类(type: product/article) |
| products | 产品(软删) |
| articles | 文章(软删 + 发布时间) |
| glossary_terms | 术语 |
| forum_boards | 论坛版块 |
| forum_threads | 论坛帖子(软删 + 置顶 + 锁定) |
| forum_replies | 论坛回复(软删) |
Languages
PHP
64.2%
Blade
28.7%
CSS
5.1%
Shell
1.5%
JavaScript
0.5%