单台服务器绑定二级域名部署多个Hyperf项目

浅明大大_9803

浅明大大_9803

2026-08-15

513人浏览

原创

单台服务器用二级域名部署多个hyperf项目,核心是nginx反向代理按host头将请求分发至不同端口的hyperf实例(如admin→9502、api→9503),各项目独立监听端口并无需框架层域名路由。

单台服务器绑定二级域名部署多个hyperf项目

单台服务器用二级域名部署多个 Hyperf 项目,核心是“隔离 + 路由 + 反向代理”。Hyperf 本身不直接处理二级域名分发,它只负责监听某个端口提供 HTTP 服务;真正的域名识别和请求分发,得靠 Nginx(或类似反向代理)完成。整个流程不依赖 Hyperf 框架内部路由做子域名判断,而是由 Web 服务器把不同子域名的请求,精准转发到对应 Hyperf 实例的监听端口。

确保每个 Hyperf 项目独立监听不同端口

Hyperf 默认启动在 9501 端口,多个项目必须错开端口,避免冲突。这是隔离的第一步:

  • 修改各项目的 config/autoload/server.php 中 servers 的 port 值,例如:
    — admin.example.com → port => 9502
    — api.example.com → port => 9503
    — pay.example.com → port => 9504
  • 每个项目启动后,应能通过 curl http://127.0.0.1:9502 正常访问,说明服务已就绪
  • 建议配合 systemd 或 supervisor 守护进程,防止意外退出

Nginx 配置子域名反向代理

Nginx 是关键枢纽。它根据请求头中的 Host 字段,把流量分发到对应端口的 Hyperf 进程:

Hyperframes Creative
Hyperframes Creative

HyperFrames视频非动画创意指导,包括设计规范(frame.md/design.md)处理、配色、字体设计、旁白及节奏规划等。

下载
  • 为每个子域名单独写一个 server 块,例如:

/etc/nginx/conf.d/admin.example.com.conf

server {
    listen 80;
    server_name admin.example.com;
    location / {
        proxy_pass http://127.0.0.1:9502;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
    }
}
  • 同理配置 api.example.com 指向 9503,pay.example.com 指向 9504
  • 务必检查 server_name 是否与你实际申请的二级域名完全一致(区分大小写、无空格)
  • 测试配置:运行 sudo nginx -t,确认无误后再 sudo systemctl reload nginx

域名解析与 HTTPS(可选但推荐)

用户能访问的前提是 DNS 正确指向你的服务器 IP:

  • 在域名服务商后台(如阿里云、Cloudflare),为每个二级域名添加 A 记录:
    — admin → 指向服务器公网 IP
    — api → 同一 IP
    — pay → 同一 IP
  • 若需 HTTPS,可用 Certbot 自动申请泛域名证书(*.example.com)或为每个子域名单独申请;Nginx 配置中启用 listen 443 ssl 并加载证书即可
  • 注意:泛域名证书不覆盖根域(example.com)和 www,如有需要需额外包含

补充:Hyperf 项目本身无需特殊路由配置

不同于 ThinkPHP 那类框架需要 Route::domain() 显式绑定,Hyperf 在这种部署模式下保持“无感”:

  • 它只管处理自己端口上的所有请求,不关心 Host 是什么
  • 业务逻辑、中间件、CORS 设置等,按单体应用方式开发即可
  • 如果某项目需识别当前子域名(比如动态切换数据库或日志前缀),可通过 $request->header('host') 获取原始 Host 值

相关文章

PHP速学视频免费教程(入门到精通)
PHP速学视频免费教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载

相关标签:

hyperf

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关专题

更多
开发工具有哪些
开发工具有哪些

开发工具有:1、集成开发环境IDE;2、版本控制系统VCS;3、自动化构建工具;4、测试工具;5、代码分析工具。本专题为大家提供开发工具有哪些的相关的文章、下载、课程内容,供大家免费下载体验。

2023.08.02

2446

5

服务器是什么
服务器是什么

服务器是一种计算机硬件设备或软件程序,它具有强大的计算和存储能力,用请求、存储数据和提供服务。它在互联网中着关重要的作用,为用户提供各种服务和资源。本专题为大家提供服务器相关的文章、下载、课程内容,供大家免费下载体验。

2023.08.15

437

5

连接apple id服务器时出错
连接apple id服务器时出错

连接apple id服务器时出错的原因包括网络连接问题、服务器问题、Apple ID账户问题、设备问题、防火墙或安全软件问题、时间和日期设置问题、Apple服务器维护等。本专题为大家提供apple id相关的文章、下载、课程内容,供大家免费下载体验。

2023.09.08

900

5

搭建互联网服务器
搭建互联网服务器

搭建互联网服务器需要:1、选择合适的硬件和操作系统,第一步是选择合适的硬件和操作系统;2、安装和配置操作系统,是搭建互联网服务器的关键步骤;3、安装和配置服务器软件,是搭建互联网服务器的下一步,常见的服务器软件包括Apache、Nginx、Tomcat等;4、配置防火墙和安全性,是搭建互联网服务器的重要步骤;5、域名解析和配置,是搭建互联网服务器的最后一步。

2023.09.19

2772

5

如何查看服务器状态
如何查看服务器状态

查看服务器状态的方法有使用命令行工具、图形界面工具、监控工具、日志文件和远程管理工具等。本专题为大家提供服务器状态相关的文章、下载、课程内容,供大家免费下载体验。

2023.10.09

936

5

服务器域名转接慢怎么解决
服务器域名转接慢怎么解决

服务器域名转接慢的解决办法有DNS优化、服务器优化、CDN加速、前端优化和网络优化等。本专题为大家提供服务器相关的文章、下载、课程内容,供大家免费下载体验。

2023.10.17

829

5

服务器评测软件
服务器评测软件

服务器评测软件有PassMark Software、CPU-Z、GPU-Z、CrystalDiskMark、IOmeter、JMeter、LoadRunner、Apache Bench等等。详细介绍:1、PassMark Software是一款综合性的服务器性能测试软件,可以评估服务器在各种负载条件下的性能;2、CPU-Z是一款可以提供服务器CPU详细信息的软件等等。

2023.10.17

434

3

如何开启TFTP服务器
如何开启TFTP服务器

开启TFTP服务器的步骤包括选择TFTP服务器软件、下载和安装软件、配置TFTP服务器以及启动和测试服务器等。本专题为大家提供服务器相关的文章、下载、课程内容,供大家免费下载体验。

2023.10.18

2516

4

服务器负载不兼容怎么解决
服务器负载不兼容怎么解决

解决方法:1、增加服务器资源;2、负载均衡;3、优化应用程序;4、增加缓存机制;5、分布式架构;6、限流和熔断;7、自动化扩容。想知道更详细服务器负载不兼容的解决方法,可以访问本专题下面的文章。

2023.10.20

4652

4

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
Hyperf官方中文手册(3.1)
Hyperf官方中文手册(3.1)

共0课时 | 0人学习

Swoole系列-从0到1-新手进阶
Swoole系列-从0到1-新手进阶

共29课时 | 2.3万人学习