密码保护会在您的整个网站或特定路径前方加上浏览器登录提示,这是保护预上线网站、暂存副本或管理区域隐私的最简单方式。本指南将介绍如何设置密码保护、管理用户、验证其是否生效以及如何将其移除。
密码保护功能在 KPanel 中的位置
- 登录 KPanel。
- 点击左侧边栏中的网站,然后点击相应网站。
- 在该网站的左侧菜单中,打开设置,再打开密码保护。
直接访问地址为 /websites/<site-id>/password-protect。

工作原理
密码保护由网络服务器通过 HTTP Basic Auth 方式应用,在您的应用程序运行之前生效。访问受保护 URL 的访客将看到浏览器自带的登录对话框,在完成身份验证之前,无法看到任何内容,也无法访问任何应用程序代码。
由于密码保护位于所有内容之前,它同样会保护同一路径下的资源文件、上传内容和 API 端点,而不仅仅是渲染后的页面。它还会完全阻挡搜索引擎抓取工具,这正是预上线网站所需要的效果。
选择要保护的内容
点击添加保护后,第一个问题是保护范围,这里有两种选择。
保护整个网站。 访问该域名的任何人,包括根目录、管理区域等所有内容,都会看到登录提示。对于尚未上线的网站、暂存副本,或任何完全不应公开可读的内容,这是正确的选择。
保护特定路径。 锁定某个子路径,网站的其余部分保持公开。该路径下的所有内容都会被包含在内,因此保护 /admin 也会涵盖 /admin/users。
您可以在同一个网站上创建多个保护规则,每个规则覆盖不同的路径,并设置不同的用户。
设置步骤
- 点击添加保护。
- 选择保护整个网站或保护特定路径。如果是路径,请以斜杠开头输入,例如
/admin。 - 设置提示标签。这是浏览器登录对话框中显示的文字,最多 64 个字符,默认值为受限区域。使用诸如网站名称之类容易辨识的内容,有助于访客确认该提示是真实的,而非钓鱼攻击。
- 至少添加一个用户,包含用户名和至少 8 个字符的密码。
- 对每个需要访问权限的额外人员,点击添加用户。
- 点击应用保护。
该规则会先被应用,随后直接针对您的网站进行检查,因此之后显示的状态反映的是真实行为。
每次请求都会发送 Basic Auth 凭据。在 HTTPS 下,这些凭据在传输过程中是加密的,足以用于限制暂存网站或内部区域的访问。但这并非身份识别系统:没有按用户划分的审计记录,没有会话机制,没有密码重置流程,也没有失败尝试后的锁定机制。请勿用它来保护任何真正敏感的内容,也切勿重复使用您的团队在其他地方使用的密码。
管理用户
点击某个现有保护规则的编辑按钮,即可更改用户列表。
- 添加用户: 点击添加用户,然后输入用户名和密码。
- 更改密码: 在该用户的密码字段中输入新密码。
- 保留密码: 将字段留空。现有用户会显示一个占位提示,表明密码未发生变化。
- 移除用户: 点击该行的移除按钮。
密码永远不会重新显示给您查看。如果有人忘记了密码,请为其设置新密码并告知对方。
现有保护规则的保护范围无法更改。若要将保护规则从一个路径移动到另一个路径,请先移除该规则,再新建一个。
验证是否生效
每个保护规则都会显示一个状态徽章:
| 徽章 | 含义 |
|---|---|
| 尚未验证 | 检查尚未运行,请稍等片刻后刷新 |
| 保护已验证生效 (401) | 我们从外部请求了该 URL,并收到了真实的登录质询 |
| 已应用但未发出质询,并附带状态码 | 规则已写入,但网站返回了其他内容 |
中间这个徽章才是您想要看到的结果。它表示一次外部请求确实收到了质询,而不仅仅是配置文件已被写入。
每一行还有一个测试按钮,点击后会在新标签页中打开受保护的 URL,让您亲自查看提示内容。请在隐私浏览窗口中进行测试:一旦您登录过,浏览器会持续发送凭据,网站在您看来会显得是开放的。
如果保存后看到警告,提示服务器上的另一个配置也声明了相同的域名,则在该冲突解决之前,保护规则不会生效。该消息会指出另一个配置的名称。如不确定,请联系支持团队。
移除保护
点击某个保护规则的移除按钮并确认。确认提示会明确说明后果:登录提示将被移除,该路径或整个网站将对任何人开放。
移除后,面板会重新检查网站。如果尚无法确认网站已经开放,它会提示您等待约 30 秒后刷新,而不会在尚未观察到结果的情况下声称操作已成功。
移除整站保护会立即将网站发布到整个互联网上,包括被搜索引擎收录。在上线当天执行此操作之前,请确保内容确实已经准备就绪:正确的页面已发布、测试内容已移除、任何占位定价信息已更正。
常见用途
预上线阶段。 在构建网站期间保护整个网站,上线时再移除保护。这比"即将上线"插件更可靠,因为它还能隐藏您的管理区域、上传内容和暂存数据。
暂存环境。 一个可公开读取的暂存副本会带来重复内容问题和数据泄露风险。请对其加以保护,并保持该保护状态。请参阅暂存环境。
非 WordPress 网站的管理区域。 对于带有 /admin 路径的静态网站或自定义应用程序,这相当于在应用程序已有的机制之前再加上一道锁。
客户审阅网站。 为客户提供一个用户名和密码,提示标签会告知他们正在登录的是什么内容。
疑难排解
我看到了登录提示,但密码被拒绝。 请确认用户名前后没有多余空格,并通过编辑对话框重新设置密码。密码必须至少为 8 个字符。
在我看来网站是开放的,但对其他人来说是受保护的。 您的浏览器已缓存了凭据,请在隐私浏览窗口中进行测试。
正常运行时间监控现在报告网站处于离线状态。 在整站保护开启时属于预期现象:检测程序收到的是 401 状态。请参阅网站正常运行时间监控,其中的事件原因会显示 401 状态码。
我的页面被搜索引擎移除了。 在保护开启期间同样属于预期现象。移除保护、网站恢复可抓取状态后,页面会重新出现。
徽章显示已应用但未发出质询。 说明在规则生效之前,已有其他内容做出了响应。请记下显示的状态码,检查该路径上是否有重定向先一步捕获了请求,并参阅网站重定向。
我无法移除保护。 移除操作需要网站写入权限。使用只读角色时,相关按钮会处于禁用状态。
相关页面
- 网站安全:了解证书、恶意软件扫描、IP 封锁和登录强化等内容。
- 网站的国家/地区封锁:改为按访客所在国家/地区限制访问。
- 自定义错误页面:为访客看到的 401 页面添加品牌样式。