Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Интернет » Web-программирование » PHP: POST-запрос на https

Модерирует : Cheery

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2

Открыть новую тему     Написать ответ в эту тему

SoftICE



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Собствено сабж,
 
но нужно без установки дополнительных модулей
 
тоесть кУРЛ не катит




Добавил PHP в название. — Svarga.

Всего записей: 1065 | Зарегистр. 10-01-2003 | Отправлено: 08:36 05-04-2003 | Исправлено: Svarga, 12:40 28-10-2003
Cheery



.:МордератоР:.
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Код:
 
<?php
 
$response="";
 
if ($fp = fsockopen ("ssl://www.mycompany.com", 443, $errno, $errstr, 30))
{
    $request ="POST /postHandler.php HTTP/1.0\r\n";
    $request.="Host: www.mycompany.com\r\n";
    $request.="Content-Type: application/x-www-form-urlencoded\r\n";
    $request.="Content-Length: 7\r\n";
    $request.="\r\n\r\n";
    $request.="foo=bar";
 
    fwrite($fp,$request,strlen($request));
 
    while (!feof($fp))
        $response.=fread($fp,8192);
 
    fclose($fp);
}
else
    die('Could not open socket');
 
echo "<pre>\n";
echo htmlentities($response);
echo "</pre>\n";
 
?>
 


----------
Away/DND

Всего записей: 52737 | Зарегистр. 04-04-2002 | Отправлено: 08:42 05-04-2003 | Исправлено: Cheery, 08:42 05-04-2003
SoftICE



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Спасибо тебе
 
Терь понял что я здесь забыл, я пытался без ssl:// делать запрос на 443 порт

Всего записей: 1065 | Зарегистр. 10-01-2003 | Отправлено: 13:52 05-04-2003
itaiita



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
а можно теперь этот код прокоментировать?
мне нужно вобщемто тоже самое, но просто на http, вот только что тут к чему понимаю через раз

Всего записей: 77 | Зарегистр. 10-09-2002 | Отправлено: 08:55 15-04-2003
Cheery



.:МордератоР:.
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
itaiita
http://www.webix.ru/doc/php42.rus/f/fsockopen.html
Документация на русском и дальше есть ссылки на остальные используемые функции.

----------
Away/DND

Всего записей: 52737 | Зарегистр. 04-04-2002 | Отправлено: 21:35 15-04-2003
itaiita



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
есть такой код:

Код:
 
<?php  
$request="POST /s_send_reply_gb.php HTTP/1.0
Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/x-shockwave-flash, application/vnd.ms-excel, application/msword, */*
Referer: http://gb.lpt.ru/reply.php?bid=1712&mid=317715&page=10
Accept-Language: ru
Content-Type: application/x-www-form-urlencoded
User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0)
Host: gb.lpt.ru
Content-Length: 128
Pragma: no-cache
Cookie: gbcookname=ita; gbcookemail=ita@ua.fm; gbcookwebpage=http://; gbcooklocation=dp.ua; gbreplycookname=ita; gbreplycooklocation=dp.ua; gbreplycookemail=ita@ua.fm
Connection: keep-alive
 
name=ita
email=ita@ua.fm
location=dp.ua
message=проверка
draw_smiles_u=yes
bid=1712
mid=317715
reply=yes
page=10";
if ($fp = fsockopen ("gb.lpt.ru", 80)){
if (fputs ($fp, $request)){
echo "все ок<br>";
};
while(!feof($fp)){
echo fgets ($fp, 8000);
    }
}
else {echo "не могу открыть порт";}
?>
 

 
и есть ответ сервера
 

Код:
 
HTTP/1.1 302 Found
Date: Thu, 24 Apr 2003 06:15:08 GMT
Server: Apache/1.3.20 (Unix) mod_gzip/1.3.19.1a FrontPage/5.0.2.2510 PHP/4.2.2 mod_fastcgi/2.2.12 mod_ssl/2.8.4 OpenSSL/0.9.6g rus/PL30.5
X-Powered-By: PHP/4.2.2
Location: error.php?2
Connection: close
Content-Type: text/html; charset=windows-1251
Expires: Thu, 01 Jan 1970 00:00:01 GMT
Last-Modified: Thu, 24 Apr 2003 06:15:08 GMT
 

 
сам запрос полностью аналогичен тому, кот уходит про отправке данных из формы. вроде бы..
error.php?2 - это переданы не все парраметры, хотя вроде все отправил..
что я не так делаю?

Всего записей: 77 | Зарегистр. 10-09-2002 | Отправлено: 10:20 24-04-2003 | Исправлено: itaiita, 10:27 24-04-2003
Cheery



.:МордератоР:.
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
itaiita
А

Цитата:
 
 <input type="checkbox" name="receivereplys" value="yes"> Получать ответы

?

----------
Away/DND

Всего записей: 52737 | Зарегистр. 04-04-2002 | Отправлено: 18:34 24-04-2003
itaiita



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Cheery
там же закомментированно все это..

Цитата:
<!--tr>
 <td colspan=2 align="center" class="gbsmall">
 <input type="checkbox" name="receivereplys" value="yes"> Получать ответы
 </td>
</tr-->  

 
 
заработало, глюк в Content-Length был, не точно посчитал.
пасиб  

Всего записей: 77 | Зарегистр. 10-09-2002 | Отправлено: 10:37 25-04-2003
EndoR



Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Не подскажите, как сделать следующее:
юзер ходит по сайту, потом ему надо попасть в закрытую зону. наскока я понимаю, нужно тоже через fsockopen открывать коннект? И на апачах настроить mod_ssl? вообще, опишите,если можно, организацию такой работы.

----------
Fear is an efficient tool of management.

Всего записей: 1159 | Зарегистр. 24-01-2002 | Отправлено: 19:58 27-10-2003
Cheery



.:МордератоР:.
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
EndoR

Цитата:
юзер ходит по сайту, потом ему надо попасть в закрытую зону. наскока я понимаю, нужно тоже через fsockopen открывать коннект?

зачем? что ты называешь закрытой зоной?

Цитата:
И на апачах настроить mod_ssl?  

Для чего ?? поясни сначала.

----------
Away/DND

Всего записей: 52737 | Зарегистр. 04-04-2002 | Отправлено: 20:03 27-10-2003
EndoR



Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Cheery
Задача. Есть открытый сайт (например, www.lalala.ru), т.е. юзеры из инета ходят на него. Есть закрытый сайт (corporate.lalala.ru) - сюда могут зайти только по паролю. Так вот нужно, чтобы момент передачи пароля шифровался.

----------
Fear is an efficient tool of management.

Всего записей: 1159 | Зарегистр. 24-01-2002 | Отправлено: 18:39 29-10-2003
Cheery



.:МордератоР:.
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
EndoR

Цитата:
Так вот нужно, чтобы момент передачи пароля шифровался.

ну так поднять ssl и ходить на тот сайт через него..
Зачем для этого fsockopen? Просто в форме делаешь action="https://corporate.lalala.ru"
либо, что лучше.. уже саму форму для ввода пароля и имени выводить через ssl..
Тоже самое справедливо и для входа через htaccess

----------
Away/DND

Всего записей: 52737 | Зарегистр. 04-04-2002 | Отправлено: 18:52 29-10-2003
EndoR



Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Cheery
....и никаких различий нет? т.е. POST им же и останется?  можно ли вообще всю работу с подзоной corporate.lalala.ru перевести на ssl без каких либо ухищрений?

Цитата:
Тоже самое справедливо и для входа через htaccess

а как быть в этом случае? тут где ssl прикручивать?

----------
Fear is an efficient tool of management.

Всего записей: 1159 | Зарегистр. 24-01-2002 | Отправлено: 21:30 29-10-2003
Cheery



.:МордератоР:.
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
EndoR

Цитата:
....и никаких различий нет?

Нет.

Цитата:
можно ли вообще всю работу с подзоной corporate.lalala.ru перевести на ssl без каких либо ухищрений?  

Можно.. ничего не меняя абсолютно.. за исключением ссылок, если написаны полностью с http

Цитата:
а как быть в этом случае? тут где ssl прикручивать?

Нигде.. разницы никакой нет.. Просто делаешь первоначальный линк на диру с htaccess паролированием уже через https
https://server.ru/restricted/
и все..

----------
Away/DND

Всего записей: 52737 | Зарегистр. 04-04-2002 | Отправлено: 21:54 29-10-2003
knigman



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Скажите пожалуйста, что-то я не совсем понял.
У меня есть сайт. В нем партнерская программа. Я хочу сделать так, чтобы по сайту по https ходили, а когда пользователь вошел в интерфейс партнера, он там ходил через https.
Тут говориться что достаточно в моем случае будет поменять внутри партнерки все ссылки с http на https. И все что-ли?
А как же сертификаты и т.п.?
Кстати сайт у меня на PHP написан, от этого меняется что-то?

Всего записей: 541 | Зарегистр. 03-09-2004 | Отправлено: 08:47 26-05-2005
Cheery



.:МордератоР:.
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
knigman

Цитата:
 Я хочу сделать так, чтобы по сайту по https ходили, а когда пользователь вошел в интерфейс партнера, он там ходил через https.  

разницу видишь?  

Цитата:
Тут говориться что достаточно в моем случае будет поменять внутри партнерки все ссылки с http на https. И все что-ли?  
А как же сертификаты и т.п.?

что у тебя есть? собственный сервер? или хостера? хостер дает https?
что сертификаты? ну ругнется, что имя не соответствует или самоподписанный.. и что?  

Цитата:
Кстати сайт у меня на PHP написан, от этого меняется что-то?

нет

----------
Away/DND

Всего записей: 52737 | Зарегистр. 04-04-2002 | Отправлено: 08:49 26-05-2005
knigman



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Cheery

Цитата:
разницу видишь?  

Не вижу разницы. А может я вопрос не так понял. Какую разницу я должен увидеть?
 
У меня сервер VPS. Могу ставить что захочу.

Всего записей: 541 | Зарегистр. 03-09-2004 | Отправлено: 09:53 27-05-2005
Cheery



.:МордератоР:.
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
knigman

Цитата:
Не вижу разницы. А может я вопрос не так понял. Какую разницу я должен увидеть?  

нет разницы.. пробуй.

----------
Away/DND

Всего записей: 52737 | Зарегистр. 04-04-2002 | Отправлено: 10:00 27-05-2005
yarik987

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
вот такой траб:
шлю

Код:
$request .="POST /default.aspx HTTP/1.1\r\n";
$request .="Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/x-shockwave-flash, application/vnd.ms-excel, application/msword, application/x-icq, \*\/\*\r\n";
$request .="Accept-Language: ru\r\n";
$request .="Content-Type: application/x-www-form-urlencoded\r\n";
$request .="Accept-Encoding: gzip, deflate\r\n";
$request .="User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 2.0.50727)\r\n";
$request .="Host: www.skypoint.ru\r\n";
$request .="Content-Length: 293\r\n";
$request .="Connection: Keep-Alive\r\n";
$request .="Cache-Control: no-cache\r\n";
$request .="Cookie: ASP.NET_SessionId=1ehbbk55aguuk145kf51vuqv\r\n";
$request .="\r\n\r\n";
$request .="__VIEWSTATE=%2FwEPDwUJNTkxOTk1OTEyZBgBBR5fX0NvbnRyb2xzUmVxdWlyZVBvc3RCYWNrS2V5X18WAQUMSW1hZ2VCdXR0b24xuB7ezFiI12lzW%2FiY9nJGyDVpyRc%3D&__EVENTVALIDATION=%2FwEWBALzlfzfCgLs0bLrBgLs0fbZDALSwpnTCPsZTtnoxRKu8XLS6gD9g4kGvWqJ&TextBox1=9015243770&TextBox2=PASS&ImageButton1.x=16&ImageButton1.y=15\r\n";
 
 
    fwrite($fp,$request,strlen($request));

заметил что если в пустых строках ставить \r\n\r\n то не логинется но страницу выдает а внизу еще это  
HTTP/1.1 400 Bad Request
Content-Type: text/html
Date: Fri, 18 Aug 2006 17:13:06 GMT
Connection: close
Content-Length: 35
 
<h1>Bad Request (Invalid Verb)</h1>
 
, а если \r\n то логинется но! долго думает и выдает сервер не найден
и еще подскажите как слать вторую страницу? надо закрывать  fclose($fp); или как?

Всего записей: 145 | Зарегистр. 24-01-2004 | Отправлено: 21:19 18-08-2006 | Исправлено: yarik987, 21:23 18-08-2006
Cheery



.:МордератоР:.
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
yarik987

Цитата:
заметил что если в пустых строках ставить  

что такое "пустые строки"?


----------
Away/DND

Всего записей: 52737 | Зарегистр. 04-04-2002 | Отправлено: 22:08 18-08-2006
Открыть новую тему     Написать ответ в эту тему

Страницы: 1 2

Компьютерный форум Ru.Board » Интернет » Web-программирование » PHP: POST-запрос на https


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru