Authentication AuthUserFile不工作,可能是什么问题?

Authentication AuthUserFile不工作,可能是什么问题?,authentication,centos,httpd.conf,.htpasswd,Authentication,Centos,Httpd.conf,.htpasswd,我用的是CentOS 昨晚我换了服务器。 我的AuthUserFile文件有问题 我总是被堵住。 我确保: 路径是真实路径: AuthUserFile /home/rootvideo/.htpasswd /home/rootvideo/.htpasswd和.htaccess文件具有0644权限 httpd.conf在所有文件夹中设置为AllowOverride All 所有的mod_auth都已加载 LoadModule authn_file_module modules/mod_authn

我用的是CentOS 昨晚我换了服务器。 我的
AuthUserFile
文件有问题

我总是被堵住。 我确保:

  • 路径是真实路径:

    AuthUserFile /home/rootvideo/.htpasswd
    
  • /home/rootvideo/.htpasswd
    .htaccess
    文件具有
    0644
    权限

  • httpd.conf
    在所有文件夹中设置为
    AllowOverride All

  • 所有的
    mod_auth
    都已加载

    LoadModule authn_file_module modules/mod_authn_file.so
    LoadModule authn_alias_module modules/mod_authn_alias.so
    LoadModule authn_anon_module modules/mod_authn_anon.so
    LoadModule authn_dbm_module modules/mod_authn_dbm.so
    LoadModule authn_default_module modules/mod_authn_default.so
    LoadModule authnz_ldap_module modules/mod_authnz_ldap.so
    

  • 有什么想法吗?

    我刚刚遇到了同样的问题。在我的例子中,我在配置中输入了一个打字错误并编写了AuthType而不是AuthName。因此,AuthType被无效值覆盖。对于遇到此问题的其他人,值得仔细检查您的conf文件中是否有任何不正确的AuthType指令。

    只需在这里添加我对此问题的经验。在我的例子中,我使用的是最近启用了SELinux的Centos服务器。我在.htpasswd文件上遇到权限被拒绝错误,即使所有权限都设置为应该设置的权限


    我最后只是禁用了SELinux,因为它只是一个内部服务器,但最好的解决方案当然是更改SELinux设置,以允许apache Web用户读取此文件。

    供将来参考:

    Chmodd将文件设置为0660,将父目录设置为0755,文件的所有者应为apache用户。对于debian变体(ubuntu),这是www数据。对于CentOS来说,它是apache

    chmod 0660 /mylocation/.htpasswd
    chmod 0775 /mylocation
    # centOS
    chown apache:apache /mylocation/.htpasswd
    # ubuntu
    chown www-data:www-data /mylocation/.htpasswd
    
    查找您需要的用户:

    grep -e '^User' /etc/apache2/apache2.conf
    grep -e '^User' /etc/httpd/conf/httpd.conf
    

    我也有同样的问题,我的问题来自一个“看不见的角色”


    我已经删除了AuthUserFile的整行内容,并再次写入(这次不是复制粘贴),它已经修复

    对于我的用户,问题是我在导致目录未使用任何密码保护的部分中获得了
    Require allowed

    删除它后,密码身份验证工作


    注意:我在ubuntu上的apache2 2.4.7上使用WebDAV和密码验证

    你在服务器的
    错误中得到了什么消息。log
    access.log
    ?从访问日志中我得到了:193.106.55.249---[25/Oct/2011:08:22:23+0200]“get/HTTP/1.1”401478“-”Mozilla/5.0(Windows NT 6.1)Applewit/535.1(KHTML,像Gecko)Chrome/14.0.835.202 Safari/535.1“来自错误日志[Tue Oct 25 08:24:49 2011][error][client 193.106.55.249](13)权限被拒绝:无法打开密码文件:/home/rootvideo/.htpasswd[Tue Oct 25 08:24:49 2011][error][client 193 106.55.249]访问/index.php失败,原因:未配置用户id“user”的验证尝试了chmod 777/home/rootvideo/.htpasswd,但仍然得到了相同的消息解决!!!!问题是父目录需要将premissions设置为chmod 755!这解决了问题,谢谢大家!我也遇到了同样的问题,但我已经查看了我的错误或_日志文件,我看到(13)权限被拒绝:无法打开密码文件,但我有CHMOD 0644 passwd文件和CHMOD 0755父目录,以及CHOWN-R apache:apache parent/dir,我没有其他弹药了!我想这不是要求apache用户是目录和文件的所有者。在我的工作设置中,所有这些东西都属于执行命令的用户部署。Apache应该在目录上有
    rx
    ,在文件上有
    r
    ,这就足够了。