可通过宝塔面板的“网站目录密码保护”功能、手动编辑Nginx配置或使用.htaccess文件为Apache站点启用HTTP基本认证,实现对网站或子目录的访问控制。

如果您希望限制对宝塔面板托管网站的未授权访问,可通过配置网站访问密码实现基础身份验证。以下是具体操作步骤:
一、使用宝塔面板内置的“网站目录密码保护”功能
该功能基于 Nginx 或 Apache 的 auth_basic 模块,在 Web 服务器层面对指定目录启用 HTTP 基本认证,无需修改程序代码,适用于保护整个站点或子目录。
1、登录宝塔面板,进入【网站】页面,找到目标站点,点击右侧【设置】按钮。
2、在弹出窗口中切换至【网站目录】选项卡。
3、勾选【密码访问】开关。
4、在【用户名】栏输入允许访问的账号名称,例如 admin。
5、在【密码】栏输入强密码,例如 Xk9#mQ2@vLp,确认后再次输入。
6、点击【保存】,系统将自动重载对应 Web 服务配置。
二、手动编辑 Nginx 配置文件添加 auth_basic 指令
当需要对特定路径(如 /private/)单独设密,或需自定义认证域提示信息时,可直接修改站点的 Nginx 配置,实现更精细的控制。
1、在【网站】页面点击目标站点【设置】,切换至【配置文件】选项卡。
2、在 location / { ... } 块之外,插入新的 location 块,例如:
location ^~ /internal/ { auth_basic "Restricted Area"; auth_basic_user_file /www/wwwroot/example.com/.htpasswd; }
3、使用宝塔终端或 SSH 登录服务器,执行命令生成用户密码文件:
htpasswd -c /www/wwwroot/example.com/.htpasswd user1
4、按提示输入并确认密码,该命令将创建加密后的凭据文件。
5、返回面板点击【重载配置】使 Nginx 加载新规则。
三、通过 .htaccess 文件为 Apache 站点启用密码保护
若站点使用 Apache 作为 Web 服务器,且已开启 AllowOverride 功能,可利用 .htaccess 文件快速部署密码验证,适合无面板权限但有 FTP 访问能力的场景。
1、使用 FTP 工具连接到网站根目录,新建文本文件并命名为 .htaccess。
2、在文件中写入以下内容:
AuthType Basic AuthName "Private Access" AuthUserFile /www/wwwroot/example.com/.htpasswd Require valid-user
3、在同一目录下创建 .htpasswd 文件,内容格式为:
user1:$apr1$ZJ0VzY8A$HfQKqRbGtU7vWnXjY9rLc1(由 htpasswd 命令生成)。
4、确保 Apache 配置中对应站点的 AllowOverride 指令值包含 AuthConfig,否则 .htaccess 中的认证指令将被忽略。










