需为子目录配置独立权限控制:一、子目录绑定创建隔离入口;二、设置专属文件权限与所有者;三、创建独立系统用户并限制SSH/FTP访问;四、启用多用户虚拟主机分配资源配额;五、配置Nginx/Apache子目录独立运行环境。

如果您在宝塔面板中为同一站点配置了多个子目录,并希望各子目录由不同用户独立管理、互不干扰,则需对子目录实施独立权限控制。以下是实现该目标的具体操作路径:
一、通过子目录绑定创建隔离入口
子目录绑定功能可为指定子目录分配独立域名或路径入口,是实现逻辑隔离的第一步。绑定后,该子目录在文件系统层面仍隶属主站,但可通过独立配置实现访问控制起点。
1、登录宝塔面板,点击左侧【网站】进入站点列表。
2、找到目标站点,点击其绑定的域名右侧的【子目录绑定】按钮。
3、在弹出窗口中填写子目录域名(如 sub.example.com)或路径前缀(如 /app),并在【选择子目录】下拉框中指定具体目录(如 /www/wwwroot/example.com/app)。
4、点击【添加】完成绑定。此时该子目录获得独立的伪静态、SSL、反向代理等配置入口。
二、为子目录设置专属文件权限与所有者
权限与所有者分离是实现多用户操作隔离的核心机制。需将子目录及其内容的所有权归属对应用户,并设定严格权限,防止跨目录越权读写。
1、点击左侧【文件】进入文件管理器。
2、导航至主站根目录,定位已绑定的子目录(如 /www/wwwroot/example.com/app)。
3、右键点击该子目录,选择【权限】。
4、在弹出窗口中:勾选【递归设置权限】,输入目录权限755;在【所有者】栏输入对应用户的系统用户名(如 appuser);在【用户组】栏输入该用户所属组(如 appuser)。
5、点击【确定】保存。系统将同步修改该目录下全部子项的所有者与权限。
三、创建独立系统用户并限制SSH/FTP访问范围
仅修改文件所有者不足以阻止用户通过FTP或SSH越界操作,必须配合系统级用户创建与服务限制,确保物理隔离。
1、点击左侧【安全】→【防火墙】→【系统用户】,点击【创建用户】。
2、填写用户名(如 appuser)、密码,并在【主目录】中指定该用户的根路径为子目录绝对路径(如 /www/wwwroot/example.com/app)。
3、勾选【禁止SSH登录】或【仅允许SFTP】,取消勾选【允许FTP登录】(若使用Pure-FTPd则需另行配置虚拟用户映射)。
4、点击【提交】。该用户后续仅能访问指定子目录及其子项,无法向上穿透或横向访问其他子目录。
四、利用多用户虚拟主机面板分配资源配额
当需为多个子目录使用者提供完整控制面板界面时,应启用多用户虚拟主机功能,使各用户拥有独立后台、资源限额与菜单权限边界。
1、在宝塔面板首页点击【多用户】→【开通多用户】,按提示安装插件。
2、进入【多用户】→【用户管理】,点击【创建用户】。
3、填写用户名与密码,在【网站权限】中勾选【仅限指定网站】,并从下拉菜单选择目标站点;在【子目录权限】中手动输入子目录路径(如 /app)。
4、在【资源配额】中设置该用户可用的磁盘空间、数据库数、子域名数等上限值。
5、点击【提交】。新用户登录后仅可见授权子目录相关功能模块,且所有操作被限制在指定路径内。
五、配置Nginx/Apache子目录独立运行环境
避免PHP脚本跨目录执行或共享会话,需为子目录单独配置运行用户、PHP版本及open_basedir限制,切断底层执行链路。
1、返回【网站】列表,点击目标站点域名,进入站点设置。
2、切换到【PHP】选项卡,点击【设置】按钮打开PHP配置页。
3、在【子目录配置】区域点击【添加子目录配置】,填写子目录路径(如 /app)。
4、在新增行中:选择独立PHP版本;在【运行用户】栏输入对应系统用户名(如 appuser);在【open_basedir】栏填入/www/wwwroot/example.com/app:/tmp。
5、点击【保存】。Nginx/Apache将为该子目录启用独立worker进程,且PHP脚本无法跳出指定路径读写文件。










