全部
常见问题
产品动态
精选推荐
功能建议

分析中 已回复 待规划 {{opt.name}}
分析中 已回复 待规划
CRMEB【精确匹配】Nginx 反代配置

管理 管理 编辑 删除
  • 有的接口能通
  • 有的 404
  • 有的登录成功但状态丢
  • 有的文件上传失败

下面是 「CRMEB(PHP 版)+ 宝塔 + Nginx 反代」的标准做法

一、先明确:CRMEB 的真实接口路由长什么样?

以 CRMEB 标准目录为例(99% 用户一致)
/www/wwwroot/crmeb/
├── public/
│   └── index.php        👈 所有接口入口
├── app/
│   ├── adminapi/        👈 平台后台接口
│   ├── merchantapi/     👈 供应商接口
│   ├── agentapi/        👈 代理接口
│   ├── api/             👈 H5 / 小程序

实际接口 URL 是:

系统原始接口
平台后台/adminapi/login
代理后台/agentapi/login
供应商后台/merchantapi/login

最终全部都会进 public/index.php

二、我们要实现的目标(非常关键)

浏览器只看到:

https://md.crmeb.com/api/agentapi/login
https://gys.crmeb.com/api/merchantapi/login
https://www.crmeb.com/api/adminapi/login

Nginx 内部转发成:

/www/wwwroot/crmeb/public/index.php


三、CRMEB【精确匹配】Nginx 反代配置(🔥重点)

这是我给 CRMEB 专门裁剪过的版本

标准推荐版(FastCGI,最稳)

location ^~ /api/ {

    # ===== PHP-FPM =====
    include fastcgi_params;
    fastcgi_pass unix:/tmp/php-cgi-80.sock;

    # ===== CRMEB 统一入口 =====
    fastcgi_param SCRIPT_FILENAME /www/wwwroot/crmeb/public/index.php;
    fastcgi_param SCRIPT_NAME     /index.php;

    # ===== 关键:把 /api 去掉 =====
    fastcgi_param PATH_INFO $uri;
    fastcgi_param REQUEST_URI $request_uri;

    # ===== 让 CRMEB 正确识别 HTTPS =====
    fastcgi_param HTTPS on;
    fastcgi_param HTTP_HOST $host;

    # ===== 超时 =====
    fastcgi_read_timeout 120s;
}

这一段是 CRMEB 能 100% 正常跑的关键

这一段在做什么(你要知道)

假设前端请求:

/api/adminapi/login

Nginx 实际给 PHP 的是:

/adminapi/login

CRMEB 路由正常识别
不用改一行后端代码
不用写 CORS


四、三个后台分别如何“命中自己的接口”

平台后台(www)

axios.post('/api/adminapi/login', data)

代理后台(md)

axios.post('/api/agentapi/login', data)

供应商后台(gys)

axios.post('/api/merchantapi/login', data)

🔥 这是 CRMEB 官方推荐的路由分法


五、文件上传 / 导出接口(很多人会翻车)

CRMEB 上传接口一般是:

/adminapi/upload/image

前端写成:

uploadUrl: '/api/adminapi/upload/image'

⚠️ Nginx 不要单独写 upload location
否则会绕过 PHP 路由


六、最容易踩的 5 个坑(对照自查)

现象原因
/api/adminapi/login 404SCRIPT_FILENAME 没指到 public/index.php
登录成功但没状态Cookie Domain 不是 .crmeb.com
md 能登,gys 不行前端接口写错 agentapi / merchantapi
上传失败Nginx 单独拦截了 upload
接口 301location 没用 ^~ /api/


七、我给你的【最终推荐结构】

前端域名
│
├── www.crmeb.com  → /api/adminapi/*
├── md.crmeb.com   → /api/agentapi/*
├── gys.crmeb.com  → /api/merchantapi/*
│
└── 统一进入
    /www/wwwroot/crmeb/public/index.php


{{voteData.voteSum}} 人已参与
支持
反对
请登录后查看

CB开发者 最后编辑于2025-12-16 09:18:32

快捷回复
回复
回复
回复({{post_count}}) {{!is_user ? '我的回复' :'全部回复'}}
排序 默认正序 回复倒序 点赞倒序

{{item.user_info.nickname ? item.user_info.nickname : item.user_name}} LV.{{ item.user_info.bbs_level || item.bbs_level }}

作者 管理员 企业

{{item.floor}}# 同步到gitee 已同步到gitee {{item.is_suggest == 1? '取消推荐': '推荐'}}
{{item.is_suggest == 1? '取消推荐': '推荐'}} 【已收集】
{{item.floor}}# 沙发 板凳 地板 {{item.floor}}# 【已收集】
{{item.user_info.title || '暂无简介'}}
附件

{{itemf.name}}

{{item.created_at}}  {{item.ip_address}}
打赏
已打赏¥{{item.reward_price}}
{{item.like_count}}
分享
{{item.showReply ? '取消回复' : '回复'}}
删除
回复
回复

{{itemc.user_info.nickname}}

{{itemc.user_name}}

回复 {{itemc.comment_user_info.nickname}}

附件

{{itemf.name}}

{{itemc.created_at}}
打赏
已打赏¥{{itemc.reward_price}}
{{itemc.like_count}}
{{itemc.showReply ? '取消回复' : '回复'}}
删除
回复
回复
收起 展开更多
查看更多
打赏
已打赏¥{{reward_price}}
30
{{like_count}}
{{collect_count}}
添加回复 ({{post_count}})

相关推荐

快速安全登录

使用微信扫码登录
回复
回复
问题:
问题自动获取的帖子内容,不准确时需要手动修改. [获取答案]
答案:
提交
bug 需求 取 消 确 定
打赏金额
当前余额:¥{{rewardUserInfo.reward_price}}
{{item.price}}元
请输入 0.1-{{reward_max_price}} 范围内的数值
打赏成功
¥{{price}}
完成 确认打赏

微信登录/注册

切换手机号登录

{{ bind_phone ? '绑定手机' : '手机登录'}}

{{codeText}}
切换微信登录/注册
暂不绑定
CRMEB客服

CRMEB咨询热线 咨询热线

400-8888-794

微信扫码咨询

CRMEB开源商城下载 源码下载 CRMEB帮助文档 帮助文档
返回顶部 返回顶部
CRMEB客服