Автор Тема: Как обработать \'мою\' форму на \'чужом\' сервере ?  (Прочитано 10829 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Maxim.

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 13
  • +0/-0
  • 0
    • Просмотр профиля
Имеем: С чужого сервера загружается HTML страница с формой. После заполнения полей формы она передается на обработку программе на том-же сервере (расширение: asp). Требуется перенести страницу с формой на другой (мой) сервер, а программа обработки формы остается на прежнем (чужом) сервере. При попытке отправить форму (загруженную с моего сервера) на обработку на чужой сервер - выдается сообщение, что так нельзя. В чем может быть причина и как ее обойти ??
С уважением.
С уважением.

Оффлайн AliMamed

  • \\o/ ali akbar \\o/
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 2409
  • +2/-0
  • 2
    • Просмотр профиля
    • http://alimamed.pp.ru
Как обработать \'мою\' форму на \'чужом\' сервере ?
« Ответ #1 : 05 Сентября 2001, 19:30:58 »
в чем проблема:
проверяется рефферер.
как обойти:
вставить в хттп запрос нужный рефферер
ну, будем исповедоваться?

Оффлайн Maxim.

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 13
  • +0/-0
  • 0
    • Просмотр профиля
Как обработать \'мою\' форму на \'чужом\' сервере ?
« Ответ #2 : 06 Сентября 2001, 10:00:30 »
Насколько я понял ответ AliMamed - под \\"реферер\\" Вы наверное имеете в виду некое
значение (value) для невидимого (hidden) поля
формы. Действительно такое поле есть и в нем
я получаю (а затем и передаю на обработку)  при запросе формы с \\\'чужого\\\' сервера мой IP адрес. Это все я воспроизвел и для случая запроса формы с моего сервера. Однако этого
не достаточно. Как то \\"чужой\\" сервер распознает - что форма получена с другого сервера. Куки я на браузере заблокировал.
С уважением.
С уважением.

Оффлайн Chs

  • Perl программер
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 1108
  • +0/-0
  • 2
    • Просмотр профиля
    • http://chs.now.at/
Как обработать \'мою\' форму на \'чужом\' сервере ?
« Ответ #3 : 06 Сентября 2001, 10:24:36 »
Цитировать
Насколько я понял ответ AliMamed - под \\"реферер\\" Вы наверное имеете в виду некое
значение (value) для невидимого (hidden) поля
формы.

Вы поняли неправильно.
rfc2616
2B OR NOT 2B = FF

Оффлайн Maxim.

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 13
  • +0/-0
  • 0
    • Просмотр профиля
Как обработать \'мою\' форму на \'чужом\' сервере ?
« Ответ #4 : 06 Сентября 2001, 11:16:53 »
Теперь понял - Вы имеете ввиду одну из переменных среды: HTTP_REFERER. Насколько я понял, этот параметр браузер фиксирует автоматически после загрузки HTML страницы с
сервера (в моем случае страницы с формой), а
затем передает среди переменных среды на следующий сервер, куда он отправляет форму на обработку. Так каким образом я могу на стороне клиента динамически подменить адрес моего сервера на адрес \\"чужого\\" ? С помощью
JavaScript ?
С уважением.
С уважением.

Оффлайн Chs

  • Perl программер
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 1108
  • +0/-0
  • 2
    • Просмотр профиля
    • http://chs.now.at/
Как обработать \'мою\' форму на \'чужом\' сервере ?
« Ответ #5 : 06 Сентября 2001, 13:11:20 »
Цитировать
Теперь понял - Вы имеете ввиду одну из переменных среды: HTTP_REFERER. Насколько я понял, этот параметр браузер фиксирует автоматически после загрузки HTML страницы с
сервера (в моем случае страницы с формой), а
затем передает среди переменных среды на следующий сервер, куда он отправляет форму на обработку. Так каким образом я могу на стороне клиента динамически подменить адрес моего сервера на адрес \\"чужого\\" ? С помощью
JavaScript ?
С уважением.

На стороне клиента - не получиться, а сделать свой обработчик формы с последующей отправкой ее данных на другой сервер с подменой referer - реально.
perldoc LWP::UserAgent
perldoc lwpcook
2B OR NOT 2B = FF

Оффлайн Maxim.

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 13
  • +0/-0
  • 0
    • Просмотр профиля
Как обработать \'мою\' форму на \'чужом\' сервере ?
« Ответ #6 : 06 Сентября 2001, 17:15:38 »
Спасибо за совет. Может быть подскажете ресурс в сети, близкий к предлагаемому решению ?
С уважением.
С уважением.

Оффлайн Maxim.

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 13
  • +0/-0
  • 0
    • Просмотр профиля
Как обработать \'мою\' форму на \'чужом\' сервере ?
« Ответ #7 : 12 Сентября 2001, 12:57:51 »
C REFERER похоже разобрался и из моего CGI скрипта передаю
необходимое значение на \'чужой\' сервер. Однако этого оказалось не достаточно. Необходимо еще передать из моего
CGI скрипта на \'чужой\' сервер IP адреc клиента. который передал заполненную форму этому моему CGI скрипту. Попробовал  cделать это  через HTTP::Request (по аналогии с
REFERER) - не получилось.  Может кто посоветует решение ?
С уважением.

Оффлайн lodevar

  • Сеньор-Помидор
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 757
  • +0/-0
  • 2
    • Просмотр профиля
    • http://lodevar.hut.ru
Как обработать \'мою\' форму на \'чужом\' сервере ?
« Ответ #8 : 12 Сентября 2001, 13:09:50 »
Извините за любопытство, а зачем это надо? :confused:
С наилучшими пожеланиями. LODEVAR

Оффлайн Maxim.

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 13
  • +0/-0
  • 0
    • Просмотр профиля
Как обработать \'мою\' форму на \'чужом\' сервере ?
« Ответ #9 : 12 Сентября 2001, 13:16:20 »
В ответ на предыдущий вопрос: стандартная форма с \'чужого\'
сервера осуществляет слабый контроль за корректностью
заполнения полей этой формы. Поэтому слишком часто попадаются неверно заполненные поля (например адрес e-mail).  Я хочу в своем варианте той-же формы сделать этот
контроль лучше.
С уважением.

Оффлайн Chs

  • Perl программер
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 1108
  • +0/-0
  • 2
    • Просмотр профиля
    • http://chs.now.at/
Как обработать \'мою\' форму на \'чужом\' сервере ?
« Ответ #10 : 12 Сентября 2001, 13:46:24 »
Цитировать
Originally posted by Maxim.
Необходимо еще передать из моего
CGI скрипта на \'чужой\' сервер IP адреc клиента. который передал заполненную форму этому моему CGI скрипту. Попробовал  cделать это  через HTTP::Request (по аналогии с
REFERER) - не получилось.  Может кто посоветует решение ?

И не получиться.
Это невозможно.:)
2B OR NOT 2B = FF

Оффлайн Maxim.

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 13
  • +0/-0
  • 0
    • Просмотр профиля
Как обработать \'мою\' форму на \'чужом\' сервере ?
« Ответ #11 : 13 Сентября 2001, 13:24:22 »
Да, с изменением IP адреса (в программе) действительно сложно. Но может быть лучше  решить вопрос иначе - я пробовал менять REFERER в CGI-Perl скрипте и из него-же
передавал запрос на \'чужой\' сервер для обработки формы.
Проблема REFERER решалась, но возникала проблема IP адреса. Тогда возможно следует передавать форму на обработку \'чужому\'  серверу прямо из браузера (с клиентской
машины), но перед отправкой CGI скриптом поменять REFERER ??  Но как это сделать ??
С уважением.

Оффлайн Chs

  • Perl программер
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 1108
  • +0/-0
  • 2
    • Просмотр профиля
    • http://chs.now.at/
Как обработать \'мою\' форму на \'чужом\' сервере ?
« Ответ #12 : 13 Сентября 2001, 14:09:46 »
Цитировать
Originally posted by Maxim.
Да, с изменением IP адреса (в программе) действительно сложно. Но может быть лучше  решить вопрос иначе - я пробовал менять REFERER в CGI-Perl скрипте и из него-же
передавал запрос на \'чужой\' сервер для обработки формы.
Проблема REFERER решалась, но возникала проблема IP адреса. Тогда возможно следует передавать форму на обработку \'чужому\'  серверу прямо из браузера (с клиентской
машины), но перед отправкой CGI скриптом поменять REFERER ??  Но как это сделать ??

Давай так: мухи отдельно, котлеты отдельно.:)
CGI-скрипты работют на стороне сервера и никакого понятия о броузере не имеют.
Если уж тебе нужна какая-то подстановка, проверка значений - используй javascript.
2B OR NOT 2B = FF

Оффлайн Maxim.

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 13
  • +0/-0
  • 0
    • Просмотр профиля
Как обработать \'мою\' форму на \'чужом\' сервере ?
« Ответ #13 : 14 Сентября 2001, 11:30:48 »
Конечно отдельно. А если по существу то: то, что я нашел по вопросу подмены HTTP_REFERER, так это подмена на нужное
значение в CGI скрипте и после этого отправка запроса (формы) на \'чужой\' сервер прямо из этого CGI скрипта. Т.е. имитация браузера средствами CGI. В моем случае это не подходит, т.к. возникает проблема с IP адресом - на \'чужой\' сервер в этом случае передается IP моего сервера, а не IP клиента. Может быть возможно из CGI скрипта отправить
страницу с формой (еще пока пустой) браузеру клиента и уже
в этот момент подсунуть ему необходимое значение HTTP_REFERER ?!
С уважением.

Оффлайн Chs

  • Perl программер
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 1108
  • +0/-0
  • 2
    • Просмотр профиля
    • http://chs.now.at/
Как обработать \'мою\' форму на \'чужом\' сервере ?
« Ответ #14 : 14 Сентября 2001, 11:48:42 »
Цитировать
Сообщение от Maxim.
Может быть возможно из CGI скрипта отправить
страницу с формой (еще пока пустой) браузеру клиента и уже
в этот момент подсунуть ему необходимое значение HTTP_REFERER ?!

HTTP запрос серверу с данными формы будет формировать в этом случае броузер. И ререфер он сформирует соответствующим образом.:))
2B OR NOT 2B = FF

 

Sitemap 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28