Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Помогите! (php + htaccess)

22K
16 марта 2007 года
stoutenko
17 / / 16.03.2007
Народ помогите разобраться, а то я в php еще чайник.
Нужно сделать авторизацию для доступа в каталог через web интерфейс.
(диалог логина для входа в защищенную директорию (htaccess), вместо обычного всплывающего окошка htaccess. Но без использования базы данных.)

Допустим в эту папку - _www.mysite/papka/ (подчеркивание впереди, чтоб ссылки здесь не было)

В поиске нашел скрипт phplogin... думаю... о! как раз то что мне нужно. Делаю простую форму (отдельным файлом), заливаю php-шник и форму на сервер, запускаю, ввожу логин и пароль и вместо того чтобы попасть в нужную папку (_www.mysite.ru/papka) у меня появляется стандартное всплывающее окно аутентификации. Если вводишь правильный пароль (допустим пароль-admin, а логин-123), после авторизации пишет в строке адреса такую батву: _http://admin:123@www.mysite.ru/papka (что впринципе следует из скрипта) и говорит что невозможно найти... Если в htaccess убираю все кроме order deny,allow и deny from all - тупое окошко авторизации не всплывает, но говорит тоже что не может найти стр....
-------------------------------------------------
Вот какие файлы лежат в папке:
_www.mysite.ru/papka/index.html - файл, который должен открываться после успешной авторизации.
_www.mysite.ru/papka/.htaccess - ну это понятно.
_www.mysite.ru/papka/401,403,404 - ну это тоже понятно.

_www.mysite.ru/login.html - это форма авторизации.
_www.mysite.ru/phplogin.php - соответственно скрипт к которому происходит action из формы.

Вот содержание файла htaccess:

AuthType Basic
AuthName "Введите логин и пароль!"
AuthUserFile /путь/к/файлу/.htpasswd
require valid-user
order deny,allow

Вот форма:

<form action="http://www.mysite.ru/phplogin.php" method="post">
Login: <input type="text" name="username" id="username"><br />
Passw: <input type="password" name="password" id="password"><br />
<input type="submit" value="Submit">
</form>

А вот сам скрипт:

<?php
$server = "www.mysite.ru/papka/";

if(isset($HTTP_POST_VARS['username']))
{ $username = $HTTP_POST_VARS['username']; }

if(isset($HTTP_POST_VARS['password']))
{ $password = $HTTP_POST_VARS['password']; }
?>
<script>
function redirect()
{
window.location.replace("http://<?=$username?>:<?=$password?>@<?=$server?>");
}
setTimeout("redirect();", 1000);
</script>

-----------------------------------------------------------
Пересмотрел десятки разных скриптов......короче запутался ребята...HELP!
92
17 марта 2007 года
Тень Пса
2.2K / / 19.10.2006
ну да.... собссна, ты ж .htaccess так и не изменил.. чего тут путаться..

комментируешь всё в .htaccess (самый простой способ) и все.

но тогда и напрямую юзверь сможет попасть в papka/

PS: а чем тебя http-авторизация не устраивает?
22K
19 марта 2007 года
stoutenko
17 / / 16.03.2007
Вообще идеей этого всего было сделать web авторизацию под мой дизайн, а не это выскакивающее окошко, без использования баз mySQL
92
20 марта 2007 года
Тень Пса
2.2K / / 19.10.2006
это и есть http авторизация. а никак больше не сделаешь, нууу... если только не положишь рядом конфиг и скрипт, который будет кушать из конфига юзер/пассворд.... но тогда тебе во всех скриптах надо будет писать какое-то условие, при невыполнении которого (юзер не авторизовался) будет тупо скидываться всё на login.php (для примера)
22K
21 марта 2007 года
stoutenko
17 / / 16.03.2007
Я понял тебя, спасибо.
Да блин, придется возиться с php+mysql... а хотелось попроще.
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог