可通过反向代理、子目录伪静态+符号链接或专业版子目录绑定三种方式实现子目录独立访问:反向代理适用于独立端口服务;伪静态需配置location并建软链;专业版支持图形化一键绑定。

如果您在宝塔面板中已添加主站点,但希望将同一域名下的某个子目录(如 /blog 或 /shop)独立绑定为可访问的入口路径,并让其指向服务器上另一个物理文件夹,需通过反向代理或子目录伪静态方式实现。以下是具体操作步骤:
一、使用反向代理方式绑定子目录
该方法通过 Nginx 的 proxy_pass 指令,将请求路径如 example.com/blog/ 代理至本地另一端口或目录服务,适用于子目录需运行独立程序(如单独部署的 Typecho、Vue 前端等)的场景。
1、进入宝塔面板,点击左侧【网站】,找到目标站点,点击右侧【设置】。
2、在弹出窗口中切换到【反向代理】选项卡,点击【添加反向代理】。
3、填写代理名称,例如 blog_subdir。
4、目标URL填写为 http://127.0.0.1:8080(若子目录程序运行在本地8080端口);若需代理到本地目录,则改用 http://127.0.0.1:8080/ 并确保后端服务已启用。
5、发送域名处填写 $host,保持默认即可。
6、在【代理目录】中输入 /blog/(注意末尾斜杠必须存在,否则匹配失败)。
7、勾选【启用缓存】(可选),点击【提交】保存配置。
8、返回【网站】列表,点击【重启】对应站点的 Nginx 服务,使配置生效。
二、使用子目录伪静态+符号链接方式
该方法适用于子目录内容位于主站根目录之外的任意路径,通过创建软链接并配合 Nginx location 规则,使访问 example.com/shop/ 实际读取 /www/wwwroot/shop_app/ 下的文件。
1、使用 SSH 登录服务器,执行命令创建软链接:ln -sf /www/wwwroot/shop_app /www/wwwroot/example.com/shop(请将路径替换为实际路径)。
2、进入宝塔面板【网站】→目标站点【设置】→【配置文件】选项卡。
3、在 server { ... } 区块内、location / { ... } 块之后,插入以下配置:
location ^~ /shop/ { alias /www/wwwroot/shop_app/; index index.php index.html; }
4、若子目录含 PHP 文件,需在上述 location 块内追加 PHP 处理规则:
location ~ \.php$ { include fastcgi_params; fastcgi_param SCRIPT_FILENAME $request_filename; fastcgi_pass unix:/tmp/php-cgi-80.sock; }
5、点击【保存】,然后点击【重载配置】按钮使 Nginx 重新加载配置。
三、使用二级目录站点功能(宝塔专业版支持)
宝塔专业版提供原生“子目录绑定”功能,可直接在面板界面完成,无需手动编辑配置文件,适合无技术背景用户快速部署。
1、进入【网站】页面,点击目标主站点右侧【子目录绑定】按钮。
2、点击【添加子目录站点】,输入子目录名称(如 api),系统将自动补全为 /api/。
3、在【根目录】栏点击【选择】,从弹出窗口中定位并选中目标文件夹(如 /www/wwwroot/api_service)。
4、选择对应的 PHP 版本(若子目录含 PHP 脚本),或选择【纯静态】模式。
5、点击【提交】,宝塔将自动生成 location 配置并重启 Nginx。
6、验证访问 example.com/api/ 是否返回目标目录内容。










