htaccess给出500 - 内部服务器错误

时间:2013-03-24 11:52:18

标签: .htaccess internal-server-error .htpasswd

我用htaccess和htpasswd保护html文件。当我尝试访问它时,在放入用户和密码后,而不是加载“index.html”文件,我得到“500 - 内部服务器错误”

AuthName "Restricted Area" 
AuthType Basic 
AuthUserFile home/folder/index.html/.htpasswd 
AuthGroupFile /dev/null 
require valid-user

有什么建议吗? 也许托管服务的东西?

3 个答案:

答案 0 :(得分:5)

首先,请查阅错误日志(通常位于/var/log/apache2/error.log)以查看错误的确切原因。

如果您无权访问它,请检查以下内容:

  • 是服务器支持的这种技术吗? (询问您的提供者或管理员)
  • AuthUserFile是否正确?它似乎缺少一个斜杠,目录很不寻常。我会怀疑AuthUserFile /home/webuser/sitefolder/.htpasswd
  • 之类的东西
  • 将组文件更改为AuthGroupFile None,而不是将apache指向读取/dev/null。将/dev/null视为无底垃圾箱。从那里获取任何东西都不容易,并且可能是服务器尝试失败的原因。
  • 将您的要求更改为Require valid-user。它需要是大都会。

总结一下:

AuthName "Restricted Area" 
AuthType Basic 
AuthUserFile /home/webuser/sitefolder/.htpasswd 
AuthGroupFile None
Require valid-user

有关详细信息,我建议http://httpd.apache.org/docs/

答案 1 :(得分:0)

我知道这个问题有点旧,但对于那些努力寻找答案的人,请确保AuthUserFile的路径正确,并且.htpasswd文件的访问权限设置为0655.

与.htaccess文件关联的用户正在读取该文件。如果该用户无法执行它(即,如果它设置为644等),则服务器无法读取该文件以对其进行身份验证,并且您收到权限错误,即错误500.

答案 2 :(得分:0)

现在这个问题已经老了仍然,但是我想我也会参与其中,因为我找不到最终适合我的解决方案。此外, 仍未得到答复。

我的密码.htaccess也出现了500错误,根据错误日志,这是由于“AuthName需要一个参数”问题。经过太长时间的冲击我的头后,我终于注意到我在AuthName周围有“卷曲”引号,而不是正确的直引号。我取代了这些,相信我已经解决了我的问题。

仍然是,500。差点把我的笔记本电脑扔出窗外。此时我的代码看起来像这样:

# PW PROTECT INT DIRECTORY
AuthType Basic
AuthName "Login"
AuthUserFile /home/mywebsite/mywebsite.com/reports/int/.htpasswd
require valid-user

直到星期天之后的六种方式,作为一个绝望的冰雹玛丽,我删除了我努力包含在文件顶部的评论(必须包括那些评论)。做到了,500解决了。最后。

我无法说出为什么在错误日志中将其解析为AuthName问题,但我认为我的问题都归结为尝试通过不太理想的“纯文本”编辑器复制/粘贴代码(在这种情况下,Apple的TextEdit,也负责那些可爱的卷曲引号,甚至以纯文本模式呈现)。这是一个我不会重复的错误。

我不知道“#”哈希字符在TextEdit中是否有点傻,或者如果第1行是注释的某些问题,相当于一个空行(在任何地方都看不到),但删除了注释行做到了(如果有人知道为什么,我很乐意听到它)。