phpStudy 如何部署符号象客户关系管理系统(ThinkPHP 8)记录

给一套 ThinkPHP 8 写的 CRM 做 phpStudy 部署,源码地址 https://gitee.com/ymwl2/fhxcrm,直接下的 master.zip。

把过程和踩的坑记一下,后面复装能直接抄。

动手之前,先交代一句这套系统是干嘛的,免得装完发现不是自己要的。符号象 CRM 是面向销售团队的客户关系管理系统,后台 Layui,移动端 uni-app(H5/小程序/App 一套代码)。客户、线索、商机、合同、回款这条销售主链路是通的,外带公海池、跟进记录、审批流程、业绩看板。

它最拿得出手的是两点:

  • 自定义字段:不用改代码,后台配一下就能给客户加行业专属字段,制造、贸易、服务、教育都能往里套,省得每换一个行业单独开发一套。
  • 权限分级:RBAC 权限节点 + 角色组 + 数据范围(我的/下属/全部)三级管控,谁能看什么数据、谁只能看自己的,管得清楚。

另外还支持插件扩展、SMTP 邮件、电话助手这些。拿来给销售团队内部用,或者当二次开发模板练手都行。

介绍完它能干嘛,下面进入正题,从环境开始。

环境要求

项 要求
PHP 8.0 及以上,我用 8.2
MySQL 5.7 / 8.0,要 utf8mb4
扩展 fileinfo、gd、curl、mbstring、pdo_mysql、openssl、zip

三个要点先记下来:

  1. 入口要绑 public 。这套是 ThinkPHP 多应用,admin.php、api.php、install.php 都在 public/ 下面。站点根目录设成源码根目录也能跑,但源码直接暴露在 Web 下,作者文档也让绑 public。
  2. 源码不带 vendor。框架本体靠 Composer 装,压缩包里没有,必须先 composer install,否则进去就报错。
  3. 扩展由安装向导检测,缺一个都走不到下一步。phpStudy 装完 PHP 8.2 不会自动配扩展,得自己建个 php.ini 补上(见下一节)。

装 phpStudy

phpStudy(小皮面板),Apache/Nginx、PHP、MySQL 都打包好了。

  1. 官网下 Windows 安装包,默认装,下载地址https://public.xp.cn/upgrades/phpStudy_64.zip。
  2. 软件管理里装三样:Web 服务器(Apache 或 Nginx 二选一,图省事选 Apache)、PHP 8.2、MySQL 5.7 或 8.0。
  3. 回首页把 Web 服务器和 MySQL 启动起来。

装完 PHP 8.2 有个坑,扩展不会自动配好,得自己建 php.ini。到 PHP 目录(比如 D:\phpstudy_pro\Extensions\php\php8.2.9nts\)新建 php.ini,写:

ini 复制代码
extension_dir="D:\phpstudy_pro\Extensions\php\php8.2.9nts\ext"
extension=curl
extension=fileinfo
extension=mbstring
extension=openssl
extension=pdo_mysql
extension=zip
extension=gd

extension_dir 换成你自己的实际路径。存下来重启 Web 服务,命令行 php -m 能列出这些扩展就对。

root 密码默认是 root,线上使用建议创建独立的数据库账号密码。

解压源码 + 建站

先解压 master.zip 到一个不带中文、不带空格的目录,比如 D:\www\fhxcrm。放桌面或有中文路径,后面会报些莫名其妙的错。

然后 phpStudy 建站:

  1. 「网站」→「创建网站」。
  2. 域名填 127.0.0.1(本机调试);根目录选到 D:\www\fhxcrm\public,注意是 public 不是源码根目录;PHP 版本选 8.2。
  3. 保存,确认站点是启动状态。

根目录选成 public,图片上传和目录安全才正常。绑源码根目录短时间能用,安全性差。

装 Composer

源码没 vendor,得先有 Composer。phpStudy 自带具体进入软件管理切换到composer项,直接选择composer2.5.8版本安装

  1. 在 phpStudy 里选中刚建的那个网站,点「管理」,打开「composer」菜单(这个菜单要站点建好了才有)。

  2. 弹窗里两个版本都要手动选:composer 选 2.5.8,PHP 选 php8.2.9nts。

  3. 确定后弹出一个 cmd 窗口,它默认可能停在 public 目录------先 cd .. 切回项目根目录(能看到 composer.json 的那一层),不然 composer install 找不到 composer.json。

装完先配国内镜像,不然 composer install 慢到爆:

bash 复制代码
composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/

全局配置,配一次就行。

composer install

在项目根目录(D:\www\fhxcrm,能看到 composer.json 的那层)跑:

bash 复制代码
composer install

装完目录里多出 vendor 文件夹就成了。报错查三样:PHP 是不是 8.0+、镜像配没配、是不是 32 位 PHP。

数据库(可以不动,向导会自动建)

账号有建库权限(root 就有),向导会 CREATE DATABASE IF NOT EXISTS 自动建库,不必先手动建。

想手动建就 phpMyAdmin 用 root 登录,新建 fhxcrm,排序规则 utf8mb4_unicode_ci,建个空库就行,表不用建。

⚠️ 风险:重新安装会清空原数据。建表 SQL 里每张表都是 DROP TABLE IF EXISTS 先删再建,删了 config/install.lock 重装、或换库重导,之前录的客户、合同、跟进记录全没。重装前先备份数据库。

跑 install.php

浏览器开 http://127.0.0.1/install.php实际就是创建的网站域名,三步:

第一步 环境检测:自动查 PHP 版本、扩展、上传大小、目录权限,全绿走下一步;有红的按前面补开扩展再点「重新检测」。

第二步 填信息:

数据库:

  • 服务器 127.0.0.1
  • 端口 3306
  • 用户名 root
  • 密码:上面设的
  • 库名:fhxcrm(有权限自动建)
  • 表前缀 ymwl_(默认)
  • 编码 utf8mb4

填完账号密码失焦会自动测试连接,连不上立刻能看出来。

管理员:账号默认 admin,密码 6~32 位,邮箱必填。

第三步 完成 :导表、写 config/database.php、生成 config/install.lock,并把密钥 APP_KEY/COOKIE_CRYPT_KEY 写进根目录 .env。

登录和收尾

后台 http://127.0.0.1/admin.php,用刚设的账号登录。

登录后看到上面这个界面就表述安装成功了

装完三件事:

  1. 删 app/install/ 和 install.php(根目录和 public 下都有),防止被重装。
  2. public/admin.php 改名,比如 mycrm2026.php,后台入口别用默认名。
  3. 备份 config/database.php。

改完页面异常就清缓存:后台右上角,或命令行 php think clear。

定时任务(可选)

跟进、回款、合同到期提醒靠定时访问这个地址触发:

复制代码
http://127.0.0.1/index.php/cron/index?token=xxx

token 在 config/app.php 的 cron_token,默认 your_cron_token_here_2026,上线前改掉。别去改 Cron.php,它是读配置的,改了没用。

phpStudy 面板里没有计划任务,Windows 用任务计划程序:

  1. Win+R 输 taskschd.msc 回车;
  2. 创建基本任务,名称随意;
  3. 触发器每天、重复间隔 1 小时;
  4. 操作选启动程序,程序 curl.exe(Win10 1803 之后自带),参数填那串地址。

懒得配本机就交给在线 cron(cron-job.org)。

踩坑记录

  • install.php 第一步有扩展红 / php -m 看不到扩展 :多半是 php.ini 没建对,或 extension_dir 路径写错。按上节把 php.ini 内容补全(重点 fileinfo、gd),存下重启 Web 服务,回检测页「重新检测」。
  • 上传附件失败 / 验证码不显示:fileinfo、gd 没写进 php.ini,同上补上。
  • composer 菜单弹的 cmd 停在 public 目录 :先 cd .. 回项目根目录再 composer install。
  • composer install 卡住或报错:三查------镜像、PHP 版本、路径中文。
  • install.php 提示已安装 :config/install.lock 存在,删了再访问(会清配置,先备份)。
  • 填库提示「配置的数据库存在数据」:库不是空的,换空库或清空(清空会丢数据,先备份)。
  • 后台样式错乱:删 runtime 目录或后台清缓存。

这套流程走下来基本就明白了:gitee 上类似的 PHP 源码项目,部署都是同一个套路------phpstudy 配环境、composer 装依赖、绑 public、跑 install 向导。会了这一套,其他 ThinkPHP 或常规 PHP 项目也能照这个思路装。

相关推荐
保卫大狮兄6 小时前
简道云 CRM 管理系统:如何做老客户分层经营?新客与老客的策略如何区分?
人工智能·crm·销售
vipxieliang10 小时前
ThinkPHP MVC 模式入门:从控制器到视图的完整实践
后端·php·thinkphp
RestCloud7 天前
iPaaS集成平台如何打通ERP、CRM、OA等异构系统
数据治理·crm·erp·ipaas·oa·集成平台
2301_32241428047 天前
基于web的校园失物招领管理系统59695-计算机毕设 原创(免费领源码+部署教程+开发环境)
mysql·nginx·php·apache·thinkphp·phpstudy·wampserver
VX_bysjlw9857 天前
基于PHP的论坛系统设计与实现 35136-计算机毕设原创(免费领源码+带部署教程)
开发语言·php·apache·laravel·thinkphp·phpstudy·wampserver
CENTER SAYS10 天前
企业400电话办理全流程详解与材料准备(实操向)
前端·crm
RuoyiOffice1 个月前
2026最推荐基于SpringBoot+Vue3的项目管理经营一体化:从商机、合同、任务与工时走到回款和利润
spring boot·项目管理·vue3·crm·合同管理·ruoyi office·项目经营
简信CRM1 个月前
国内私有化部署 CRM 系统推荐,制造 / 工程企业选型参考
crm·客户管理系统
RestCloud2 个月前
不同系统集成:CRM系统与ERP、财务系统的数据双向同步
etl·crm·erp·数据集成·etlcloud·数据传输·数据同步