|
|
|
| В нашей компании есть сайт, в нем - закрытый рахдел дял сотрудников. В этой секции есть возможность читать почту через веб-интерфейс squirrelmail, на хостинге стоит cpanel.
Сотрудники хотят, чтобы после входа в свою панель (в закрытую зону сайта) вход в веб-интерфейс почты происходил автоматически (логин и пароль для каждого почтового ящика известны). используя curl я могу пройти авторизацию и получить доступ к этой странице. Но в браузере проблема - первой идет HTTP-авторизация (при неуспешном логине - редирект на страницу с формой) и я не могу передать данные программно (PHP установлен как модуль апача).
Вариант http://user:passowrd@domain:20953rdparty/squirrelmail/index.php не работает. Вопрос: есть ли в пхп возможность программу установить значение переменных (или послать их через header) $_SERVER['PHP_AUTH_USER'] и $_SERVER['PHP_AUTH_PW'], чтобы пройти автоматически HTTP-авторизацию? | |
|
|
|
|
|
|
|
для: ak574
(11.09.2008 в 14:58)
| | Все-таки непонятно, почему нельзя CURL использовать? | |
|
|
|
|
|
|
|
для: cheops
(11.09.2008 в 15:33)
| | >Все-таки непонятно, почему нельзя CURL использовать?
Условно - curl текстовый браузер, с его помощью я прохожу аутентификацию, могу получить содержимое страницы и т.д., но для для нормального браузера, например Firefox - это не имеет никакого эффекта. Пример - в IE Вы прошли HTTP-аутентификацию, в Firefox - нет, естественно в нем Вы не будете иметь доступа к странице, хотя в IE - все нормально.
Если бы аутентификация была с использованием сессии, curl-ом я бы получил ответ сервера с заголовком, прочитал бы все содержимое куки, передал ее зано серверу и открыл бы первую страницу после аутентификации. Но тут HTTP-аутентификация, как передать апачу значения логин/пасс? или присвоить значения переменным $_SERVER['PHP_AUTH_USER'] и $_SERVER['PHP_AUTH_PW']? | |
|
|
|
|
|
|
|
|
для: BinLaden
(11.09.2008 в 20:31)
| | Да, я могу пройти HTTP-аутентификацию, используя curl или сокет, но аутентификацию проходит только пхп-скрипт, когда я выдаю команду header("Location: http://domain.com:2095/3rdparty/squirrelmail/index.php") я получаю в браузере запрос аутентификации, т.к. браузер пользователя еще не посылал ответ серверу. Я все правильно делаю или все-таки что недопонимаю? | |
|
|
|
|
|
|
|
для: ak574
(11.09.2008 в 14:58)
| | Можно попробовать сделать скрипт-посредник. То есть сделать что-то вроде прокси-сервера. | |
|
|
|