---
title: "宝塔面板 Nginx 接管本机已装 Nginx"
description: "通过宝塔面板（BT Panel）Nginx 接管功能，将本机通过其他方式（源码 / yum / apt）安装的 Nginx 服务纳入面板管理，实现配置可视化、站点统一运维与插件免重装。"
---

> Documentation Index
> Fetch the complete documentation index at: https://docs.bt.cn/llms.txt
> Use this file to discover all available pages before exploring further.

# 宝塔面板 Nginx 接管本机已装 Nginx

## Nginx 接管

本文将指导您通过面板的 Nginx 接管功能，轻松接管本机通过其他方式（如源码编译、yum/apt 命令安装、手动解压部署等）搭建的 Nginx 服务，实现面板统一管理，无需重新部署服务、不影响原有业务运行。

## 功能介绍

> 该功能为面板 v11.6 版本新增特性

核心作用：统一管控本机**非面板安装**的 Nginx 服务，无需卸载原有服务、无需修改网站配置，通过自动解析原生配置文件完成接管。

接管后可在面板实现全功能管理：

- Nginx 配置编辑、服务启停/重启
- 实时状态监控、日志在线查看
- 版本平滑升级、扩展模块管理

完美解决多方式部署 Nginx 导致的**管理分散、操作繁琐、配置冲突混乱**等问题，适用于所有已部署 Nginx 且需要统一面板管理的场景。

## 操作步骤

### 环境说明

- 操作系统：Debian 12
- Nginx 安装方式：apt 命令安装
- Nginx 原有版本：v1.22.1

站点访问截图：

![站点访问截图](/img/practical-tutorials/nginx-takeover/image-20260313005949576.png)

### 接管详细步骤

1. 安装面板。

   安装过程中检测到现有 Web 环境时，输入 `yes` 执行强制安装。

   > ⚠️ 重要提醒：强制安装存在一定风险，**接管前务必创建服务器快照**备份！

   ![安装面板时检测到现有 Web 环境](/img/practical-tutorials/nginx-takeover/image-20260313010418309.png)

2. 面板安装完成后，通过服务器外网 IP 访问面板并登录。

3. 登录后忽略【安装 LNMP 环境】提示，点击右上角关闭按钮。

   ![忽略安装 LNMP 环境提示](/img/practical-tutorials/nginx-takeover/image-20260313011111031.png)

4. 点击左侧菜单栏【网站】，选择【接管本地 nginx】。

   ![选择接管本地 nginx](/img/practical-tutorials/nginx-takeover/image-20260313011223130.png)

5. 在列表中选择本地已安装的 Nginx v1.22.1 版本。

   ![选择本地已安装的 Nginx 版本](/img/practical-tutorials/nginx-takeover/image-20260313011405940.png)

6. 点击【安装 nginx】。

   ![点击安装 nginx](/img/practical-tutorials/nginx-takeover/image-20260313011443114.png)

7. 根据需求选择目标版本及安装方式，此处选择 1.28.1 版本进行安装。

   > ✅ 推荐选择**编译模式**，业务运行更稳定。

   ![选择目标版本及安装方式](/img/practical-tutorials/nginx-takeover/image-20260313011647687.png)

8. 等待安装完成，面板会自动解析原有所有站点配置。

   ![面板自动解析站点配置](/img/practical-tutorials/nginx-takeover/image-20260313011843728.png)

9. 选择需要接管的网站，点击【保存选中网站】。

   ![保存选中网站](/img/practical-tutorials/nginx-takeover/image-20260313011959515.png)

10. 配置保存完成后，检查面板 Nginx 状态是否正常。若状态为关闭，需在终端手动停止系统中原有的 Nginx 服务，以避免端口冲突。

    > 也可手动修改端口后再启动。

    ```bash
    # 停止系统安装的 Nginx
    systemctl stop nginx
    # 检查是否还有残留进程
    ps aux | grep nginx
    # 如仍有残留进程，执行以下命令强制终止
    pkill -9 nginx
    ```

11. 返回面板，手动启动 Nginx 服务。

    ![手动启动 Nginx 服务](/img/practical-tutorials/nginx-takeover/image-20260313012609216.png)

12. 启动成功后，在【HTML 项目】中可以看到已接管的网站。

    ![HTML 项目中显示接管的网站](/img/practical-tutorials/nginx-takeover/image-20260313012736249.png)

13. 查看接管日志。

    ![接管日志](/img/practical-tutorials/nginx-takeover/image-20260313014500179.png)

## 常见问题

### 接管失败后，手动执行接管脚本进行接管

除通过面板可视化接管外，也可手动执行接管脚本。脚本为交互式操作，简单易上手。

**接管脚本使用方法：**

```bash
# 脚本执行命令
btpython /www/server/panel/script/nginx_site_helper.py

# 以下为操作示例
root@iZbp1ddiqohvy9r97sspwaZ:~# btpython /www/server/panel/script/nginx_site_helper.py
====================
[1] version: nginx/1.28.1
    nginx-bin: /www/server/nginx/sbin/nginx
    config-file:/www/server/nginx/conf/nginx.conf
    work-path:/www/server/nginx
--------------------
[2] version: nginx/1.22.1
    nginx-bin: /usr/sbin/nginx
    config-file:/etc/nginx/nginx.conf
    work-path:/usr/share/nginx
====================
请选择nginx实例(1-2/quit/q):2
配置/etc/nginx/nginx.conf中，共解析到1个网站
====================
[1] 网站类型：html      网站名称：8.136.211.123
域名：8.136.211.123
网站目录：/home/8.136.211.123
====================
是否保存以上配置(y/n):y
网站:[8.136.211.123]，保存成功
```

**脚本其他使用方法：**

1. 脚本未检测到 Nginx 时，或多版本 Nginx 共存的场景，先获取 Nginx 可执行文件的绝对路径，再指定路径执行接管：

   ```bash
   which nginx
   # 示例输出
   /usr/sbin/nginx

   # 执行脚本，指定路径接管
   btpython /www/server/panel/script/nginx_site_helper.py -b /usr/sbin/nginx
   ```

2. 恢复原生配置（撤销接管）：

   ```bash
   btpython /www/server/panel/script/nginx_site_helper.py recovery
   ```

3. 查看接管脚本帮助：

   ```bash
   btpython /www/server/panel/script/nginx_site_helper.py -h
   ```

Source: https://docs.bt.cn/user-guide/site/nginx-takeover/index.mdx
