.htaccess, защита паролем папки и ошибка 404

.htaccess, error 404 ошибка

Есть web сервер Apache. Вам нужно запаролить доступ к определённой папке. Казалось бы, чего может быть проще:

  • В папке, которую хотите запаролить, открываем файл .htaccess и добавляем в него 4 строчки...
  • Require valid-user — разрешаем доступ только правильно залогиневшемуся пользователю
  • AuthName «Private zone» — придумываем фразу куда мы будем логиниться
  • Authtype Basic — тип авторизации
  • AuthUserFile /home/etc/public_html/file/.htpasswd — Внимание! Полный путь, от корня сервера. Относительный путь, даже с вводом правильного логина и пароля работать не будет, а будет выдавать 404 ошибку! И не забывайте — это путь для примера, пишите свой!

  • Создаём файл .htpasswd
  • Идём сюда:
  • Вводим в первую строку будущий логин, во вторую требуемый для него пароль
  • В итоге получаете строку с логином и зашифрованным паролем
  • Например, для логина user и пароля password — строка будет такая: user:$apr1$t1cZv0bZ$/lQQVIxhMujGGzVgAIdUZ1
  • Пользователей может быть несколько
  • Копируем эту строку в наш файл .htpasswd

В итоге у нас получилось 2 файла: .htaccess и .htpasswd.

.htaccess — Блокнот
# Добавляем парольную защиту на текущую папку и все вложенные
Require valid-user
AuthName «Private zone»
Authtype Basic
AuthUserFile /home/etc/public_html/file/.htpasswd


# Это то, что содержит мой файл .htaccess для того, что бы листинг файлов работал
< Files ~ "^.*\.([Hh][Tt][Aa])" >
order allow,deny
deny from all
< /Files >

# enable file listing
Options +Indexes

# enable comments, icons. Folders — First
IndexOptions SuppressHTMLPreamble Charset=UTF-8 FancyIndexing FoldersFirst SuppressDescription XHTML HTMLtable

# files igrore
IndexIgnore .htaccess .htaccess~ footer.shtml header.shtml

# index order
IndexOrderDefault Ascending Name

# icons
AddIcon /images/listing-files/folder.png ^^DIRECTORY^^
AddIcon /images/listing-files/folder-home.png ..
AddIcon /images/listing-files/exe.png .exe
AddIcon /images/listing-files/rar.png .rar
AddIcon /images/listing-files/zip.png .zip
AddIcon /images/listing-files/install.png .msi
DefaultIcon /images/listing-files/default.png

HeaderName /file/header.shtml
ReadmeName /file/footer.shtml

# CSS
IndexStyleSheet «/wp-content/themes/css/index.css»


.htpasswd — Блокнот
user:$apr1$t1cZv0bZ$/lQQVIxhMujGGzVgAIdUZ1

После того, как в нашей директории мы обновим файл .htaccess и скопируем к нему .htpasswd, любой, кто попытается получить к ней доступ, должен будет ввести имя пользователя — user и пароль — password.

листинг файлов css

Ошибка 404

Столкнулся с проблемой.
Вот есть у меня каталог с листингом файлов. Даю доступ, перехожу по ссылке, всё ОК. Как только настраиваю .htaccess на доступ по паролю, вместо того, что бы запросить у меня логин и пароль — вылазит 404 ошибка.

Короче, понятия не имею почему так — это вопрос к программистам. Но вот решение.
Нужно просто в .htaccess добавить ещё одну строку:

ErrorDocument 401 «Authorisation Required»


Сказать спасибо

Сумма в белорусских рублях
  • Перевод осуществляется, через сервис электронных платежей ЗАО «Альфа-Банк»
  • Сумма в белорусских рублях BYN
  • Если карта в другой валюте — конвертация производится по курсу вашего банка
  • Комиссия 0%


Популярные заметки

Создание символьной ссылки в Windows

mklink - Создание символьной ссылки

Настройка личного кабинета на сайте МНС

Настройка личного кабинета на сайте МНС

Viber vs Telegram

Сравнение Viber и Telegram

 

2 комментария


  1. Ребят, подскажите, пожалуйста, как будет выглядеть файл Htpasswd с несколькими пользователями? Нового пользователя можно вводить в новых строках или между ними что-то прописывать нужно?

 

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *