如何用宝塔在同一个域名下创建多个站点?

在宝塔面板中,一个域名只能绑定到一个网站。但如果你想在一个域名下创建多个站点(比如通过不同的子路径访问不同项目),可以通过以下几种方式实现:


✅ 方法一:使用「反向」或「伪静态规则」配置多项目访问(推荐)

场景:

你有一个域名 example.com,希望实现:

  • example.com/site1 → 站点 A
  • example.com/site2 → 站点 B

实现方法:

步骤 1:创建主站点

  1. 在宝塔面板中添加一个网站,绑定你的域名 example.com
  2. 设置好网站的根目录(例如 /www/wwwroot/example_com)。

步骤 2:部署多个子项目

  1. 把不同的项目放在主站点目录下的不同子目录中:
    • /www/wwwroot/example_com/site1
    • /www/wwwroot/example_com/site2

步骤 3:配置伪静态规则(Apache 或 Nginx)

如果是 Nginx:

编辑该网站的配置文件,在「伪静态」选项卡中添加如下规则:

location /site1/ {
    alias /www/wwwroot/example_com/site1/;
    index index.php index.html;
    if (!-e $request_filename) {
        rewrite ^/site1/(.*)$ /site1/index.php?s=/$1 last;
    }
}

location /site2/ {
    alias /www/wwwroot/example_com/site2/;
    index index.php index.html;
    if (!-e $request_filename) {
        rewrite ^/site2/(.*)$ /site2/index.php?s=/$1 last;
    }
}

注意:根据你的实际路径修改上面的路径。

如果是 Apache:

.htaccess 中添加类似如下重写规则:

RewriteEngine on
RewriteCond %{REQUEST_URI} ^/site1/
RewriteRule ^site1/(.*)$ /site1/index.php?s=/$1 [L]

RewriteCond %{REQUEST_URI} ^/site2/
RewriteRule ^site2/(.*)$ /site2/index.php?s=/$1 [L]

✅ 方法二:使用「子目录绑定」功能(适用于 WordPress、HTML 等静态项目)

说明:

宝塔支持将某个子目录作为网站点运行,适合 HTML 静态页面、纯 PHP 页面等,但不完全兼容所有框架(如 ThinkPHP、Laravel)。

操作步骤:

  1. 进入宝塔面板 → 网站 → 添加站点。
  2. 域名填写 example.com
  3. 根目录选择主站点目录下的子目录(例如 /www/wwwroot/example_com/site1)。
  4. 勾选【子目录绑定】并填写对应的访问路径(如 /site1)。
  5. 提交后即可通过 http://example.com/site1 访问该子站点。

⚠️ 注意事项:

  • 子目录绑定需要确保每个子站点可以独立运行。
  • 如果子站点有自己的入口文件(如 index.php),请确保伪静态规则正确。
  • 不建议用于复杂的框架项目,可能会出现路径问题。

✅ 方法三:使用「二级子域名」

如果你允许使用不同的二级域名,这是最简单的方式:

  • site1.example.com → 站点 A
  • site2.example.com → 站点 B

操作步骤:

  1. 解析 DNS,添加两个子域名记录:
    • A 记录 site1 → 服务器 IP
    • A 记录 site2 → 服务器 IP
  2. 在宝塔中分别添加两个站点:
    • 域名分别为 site1.example.comsite2.example.com
    • 各自设置不同的网站目录

总结对比:

方法 是否支持动态项目 是否需配置伪静态 是否需备案 适用场景
反向 + 伪静态 ✅ 支持 ✅ 是 ⚠️ 若上线公网需备案 多个动态项目共用一个域名
子目录绑定 ❌ 部分支持 ✅ 是 ⚠️ 若上线公网需备案 简单静态页、HTML、PHP
二级子域名 ✅ 完全支持 ❌ 否 ⚠️ 若上线公网需备案 最通用、灵活

如果你告诉我你想部署的是哪种类型的项目(如 Laravel、Vue、WordPress、HTML 等),我可以提供更具体的配置建议!

是否需要我帮你写一份完整的伪静态规则?

未经允许不得转载:云计算HECS » 如何用宝塔在同一个域名下创建多个站点?