Скрыть URL для перенаправления на стороне сервера

Конфигурация: сервер iplanet 6.1, клиентский браузер ie6.

У меня есть адрес: http://example.com/signOnTodef?cmd=login

Этот запрос в основном получен iplanet 6.1. Здесь у меня есть плагин, который выполняет некоторые проверки подлинности файлов cookie и перенаправляет их на другой сервер:

http://example.net?theQueryStringFromBeforeABitModified

Итак, это перенаправление на стороне сервера (302).

Теперь моя проблема в том, что этот URL-адрес http://def.com?theQueryStringFromBeforeABitModified отображается в браузере. Я не хочу, чтобы это произошло. Что я могу сделать, чтобы остановить то же самое?


person user849383    schedule 18.07.2011    source источник
comment
Проверьте, поддерживает ли ваш сервер обратный прокси-сервер — это позволит вам обслуживать контент с другого сервера через ваш сервер без изменения URL-адреса в браузере.   -  person LazyOne    schedule 18.07.2011
comment
нет, у него нет обратного прокси. нет ли другого пути .. есть ли способ со стороны пользователя (я имею в виду сторону браузера)? На самом деле это не просто размещение URL-адреса в адресной строке. Но на исходном веб-сайте будет кнопка, при нажатии которой запрос отправляется на сервер abc.com.   -  person user849383    schedule 18.07.2011


Ответы (2)


HTTP 302 не является перенаправлением «на стороне сервера». Это просто редирект. Вы не можете сделать перенаправление на стороне сервера, потому что это клиент, которому вы хотите видеть страницу, а не ваш сервер.

person Paul    schedule 18.07.2011

Вы можете попробовать сделать что-то вроде этого эквивалента в PHP. Я не знаю, что такое сервер iplanet и установлен ли на нем даже PHP, но:

<?php

    $file = file_get_contents('http://def.com'.$queryString);
    echo str_ireplace('<head>', '<head>'."\n\t".'<base href="http://def.com/" />', $file);

?>

Или что-то подобное может работать в зависимости от файла, который вы пытаетесь отобразить пользователю. Имейте в виду, что здесь не происходит перенаправления. Ваш сервер будет загружать http://def.com для каждого запроса, а затем выводить его пользователю.

person Paul    schedule 18.07.2011