我在配置文件中有这个:
Require all granted
我在Windows上运行apache 2.
我不想给每个人许可 - 当有人试图访问服务器时,如何调用身份验证表单?
这是一个内部网应用程序,我希望能够访问该计算机的任何人都可以访问该服务器。
类似
Require valid-user
我确实尝试过google但没有运气。
答案 0 :(得分:0)
您要查找的信息位于Apache Authentication and Authorization。
这是我在apache conf上为每个目录提供的内容,我希望用户使用密码。
我必须将我想要访问的每个用户的用户名放在这里,有另一种方法可以管理用户,使用AuthGroupFile
,但是我没有很多,因为我用它来yum存储库的简单文件服务器。
<Directory "your_dir" >
AuthType Basic
AuthName "Restricted Access"
# Optional line:
AuthBasicProvider file
AuthUserFile /usr/local/apache/passwd/passwords
# AuthGroupFile /usr/local/apache/passwd/groups
Require user username1 username2 username3
</Directory>
密码文件的语法类似于:
username1:$apr1$fdafdsafdafdafsafda
username2:$apr1$fdafdsafdafdafsafda
但是不应该手动创建该文件,有一个工具,htpasswd
。
添加新用户时,我的代码中包含此内容:
def add_password(passwords_file,user,password)
if File.exists? passwords_file
unless File.readlines(passwords_file).grep(/#{user}/).size > 0
%x[htpasswd -b #{passwords_file} #{user} #{password}]
end
else
%x[htpasswd -c -b #{passwords_file} #{user} #{password}]
end
end
希望这有帮助!