2013-03-24 5 views
2

Я защищаю html-файл с htaccess и htpasswd. При попытке доступа к нему, после ввода как имя пользователя и пароль, вместо загрузки «index.html» файл я получаю «500 - Внутренняя ошибка сервера»htaccess дает 500 - Внутренняя ошибка сервера

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

Есть предложения? Может быть, что-то с услугой хостинга?

+0

Предложение: найдите свой файл журнала ошибок и узнайте, как его использовать :) –

+0

Правильно ли ваш AuthUserFile? Я думаю, что это должно быть что-то вроде AuthUserFile home/folder/.htpasswd – blamonet

+0

Спасибо blamonet, но это не помогло. Я смотрю на предложение мистера Милвуда. – no0ne

ответ

5

Прежде всего, обратитесь к журналу ошибок (обычно расположенному в /var/log/apache2/error.log), чтобы узнать точную причину ошибки.

Если у вас нет доступа к ней, проверьте следующее:

  • эта техника поддерживается сервером? (обратитесь к своему провайдеру или администратору)
  • is 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/.

+0

Спасибо kronn, Мой хостинг-провайдер (1 и 1) сказал мне, что нет журнала ошибок, который Мне нужно создать его и загрузить его (где?). Я просто хотел создать веб-сайт, и теперь я в конечном итоге вынужден изучать некоторые проблемы с сервером .. Неудача, если не сказать больше. Есть ли какой-нибудь простой способ узнать (или сделать) это? – no0ne

+0

Звучит ужасно, с вашей точки зрения. Я начну с настройки файла .htaccess. Попробуйте найти самую маленькую версию. например, 'AuthGroupFile' не требуется. Вы также можете попробовать экспериментировать на своем локальном компьютере. Для каждой основной ОС есть простой в использовании установщик для Apache, PHP и т. Д. Одним из примеров может быть [XAMPP] (http://www.apachefriends.org/en/xampp.html), однако я совершенно уверен, что их гораздо больше. Я выкопал немного ответов на часто задаваемые вопросы 1and1.com и могу понять ваше разочарование. Они должны быть в состоянии сообщить вам, где error.log распознается автоматически. HTH – kronn

0

Я знаю, что вопрос немного старый, но для тех, кто изо всех сил, чтобы найти ответ, убедитесь, что путь к AuthUserFile является правильным и доступ к .htpasswd файл установлен в 0655.

Файл будучи прочитанный пользователем, связанным с файлом .htaccess. Если этот пользователь не может выполнить его (то есть, если он установлен на 644 и т. Д.), Сервер не может прочитать файл для его аутентификации, и вы получите ошибку разрешения, то есть ошибку 500.

0

Теперь этот вопрос старшего , но я думал, что тоже буду звонить, потому что я не нашел решение, которое в конечном итоге сработало для меня где угодно. Кроме того, это является еще без ответа.

Я тоже получал ошибку 500 на свой пароль .htaccess, и в соответствии с журналом ошибок это произошло из-за проблемы «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, являющейся комментарием, составляющей пустую строку (ее не видно нигде), но удаление комментария Линия сделала это (если кто знает, почему, я бы хотел это услышать).

+0

Matt, THANKS ... – Sean2015

+0

В этой обширной бездонной бездне Интернета, проведя слишком много времени, чем я думаю, было оправдано (хотя и меньше вас), я нашел исправление для внутренней ошибки 500. Все, что нужно, - это открыть файл htaccess в textwrangler вместо textedit (в котором я его создал) и изменить эти проклятые кавычки. Я имею в виду, кто бы мог подумать ... кудрявые цитаты ???? Слава богу за таких парней, как ты ... Еще раз спасибо. :) – Sean2015

Смежные вопросы