如何轻松地密码保护 Apache/Windows 中的站点?

Dan*_*ola 4 windows password apache-2.2

我有一个网站托管在 Apache(在 Windows 上),我想保护它,以便任何人进入都需要输入密码。这并不意味着要成为安全堡垒,我知道这很糟糕,但总比没有好,而且我不想通过任何可以使其更安全的替代方案(它们确实不值得为了这)。

我想要的是弹出典型的 HTTP 身份验证对话框,要求访问者输入密码。每个人都将拥有相同的密码。事实上,如果我可以将用户名设为空白,那就太理想了。否则,每个人都将拥有相同的用户名。

你能告诉我我该怎么做吗?我发现的所有教程都是针对更高级的用例,其中使用了机器的实际用户/密码。
是否可以将其设置为文件中的硬编码密码?还是我需要创建一个 Windows 用户?

JDS*_*JDS 8

谷歌:

Apache htpasswd 基本身份验证


脚步:

  1. 创建 htpasswd 文件。这个文件可以被称为任何东西,并且应该在你的 DocumentRoot 之外。为此使用htpasswd实用程序

    touch /etc/http.passwd
    htpasswd /etc/http.passwd jsilverman
    New password: 
    Re-type new password: 
    Adding password for user jsilverman
    
    Run Code Online (Sandbox Code Playgroud)
  2. 将以下内容添加到您的 Apache 配置中,在 (a) 主 apache2.conf(更集中,可以说更易于管理)或 (b) 受保护目录中的 .htaccess 文件(更简单、更直接,无需重启 apache)

    AuthType Basic
    AuthName "Password Protected Area"
    AuthUserFile /etc/http.passwd
    Require user jsilverman
    
    Run Code Online (Sandbox Code Playgroud)
  3. 如果你做了 (a),请重新加载 Apache,否则你就完成了。


如果发生这种情况:htpasswd: command not found

您可能需要安装 apache2-utils 或类似的软件包。


但是,我真的不认为你搜索得很努力。可追溯到 90 年代中期,WWW 上有成千上万个此过程的示例。但我觉得很健谈,所以你得到了一个真正的答案,而不是一个聪明的 RTFM。但实际上,RTFM —— Apache Web 服务器是开源软件中记录最好的部分之一。

更新:哇,你真的没有很好地搜索。我刚刚做了一个“我觉得很幸运”的谷歌搜索“密码保护网站”,基本上得到了这个答案。

  • 由于他在_Windows_平台上寻求帮助,您的回答似乎错过了那部分。对于任何为 Windows 搜索 **htpasswd** 版本的人;您不妨为此使用 [在线工具](http://www.htaccesstools.com/htpasswd-generator-windows/)。 (2认同)