IMHO.WS

IMHO.WS (https://www.imho.ws/index.php)
-   Веб-программирование (https://www.imho.ws/forumdisplay.php?f=29)
-   -   помогите с SSL и PHP (https://www.imho.ws/showthread.php?t=131212)

handsome 06.04.2008 09:58

помогите с SSL и PHP
 
Нужно написать скрипт который будет по https общаться с браузером.
Долго парился как настроить конфиги чтобы ssl понимал мой php, не удачно, пошел по легкому пути - установил xampp , он вроде все нормально настроен, но как замутить простенькое шифрование?
на php.ru нашел вот такой вот код но толком запустить его не получается

PHP код:

<?php
/* Send POST request to https://secure.example.com/form_action.php
* Include form elements named "foo" and "bar" with dummy values
*/

$sock fsockopen("ssl://secure.example.com"443$errno$errstr30);
if (!
$sock) die("$errstr ($errno)\n");

$data "foo=" urlencode("Value for Foo") . "&bar=" urlencode("Value for Bar");

fwrite($sock"POST /form_action.php HTTP/1.0\r\n");
fwrite($sock"Host: secure.example.com\r\n");
fwrite($sock"Content-type: application/x-www-form-urlencoded\r\n");
fwrite($sock"Content-length: " strlen($data) . "\r\n");
fwrite($sock"Accept: */*\r\n");
fwrite($sock"\r\n");
fwrite($sock"$data\r\n");
fwrite($sock"\r\n");

$headers "";
while (
$str trim(fgets($sock4096)))
  
$headers .= "$str\n";

echo 
"\n";

$body "";
while (!
feof($sock))
  
$body .= fgets($sock4096);

fclose($sock);
?>

В самом xampp-e есть такие строчки проверяющие ssl

PHP код:

if (($handle = @fsockopen($host443$errno$errstr$timeout)) == false) {
                
$ssl="NOK";
            } else {
                
$ssl="OK";
            }
            @
fclose($handle); 

кто в этом разбирался скажите как на локалхосте это запустить , на что надо заменить secure.example.com? или там ip надо ? может есть нормальный мануал по этой теме, дайте ссылку.

Hubbitus 06.04.2008 22:00

Цитата:

Сообщение от handsome (Сообщение 1540959)
Нужно написать скрипт который будет по https общаться с браузером.

Если с браузером, то после того как Апач (XAMP) настроен и отвечает по https:// ничего больше не надо - все шифруется.

Приведенный же скрипт, наоборот, пытается (ну типа вместо браузера скажем) послать запрос серверу, использующему шифрование.

Вы определитесь сначала что надо Вам именно.

handsome 07.04.2008 07:24

Мне нужно чтобы при обращении к скрипту трафик шифровался. я правильно понимаю, что если https то трафик будет шифроваться и можно писать простые php-скрипты и не заморачиваться, будет работать шифрование с открытым ключем ??? в этом случае главное чтобы апач был правильно настроен для работы с ssl ?

добавлено через 31 минуту
порылся в конфигах xampp и нашел такую вещь
<VirtualHost _default_:443>
DocumentRoot "C:/xampp/htdocs"

ServerName localhost:443
ServerAdmin admin@localhost

ErrorLog logs/error.log
<IfModule log_config_module>
CustomLog logs/access.log combined
</IfModule>
.....

Мне у хостера в конфиге тоже нужно будет прописать что то подобное получается чтобы апач стал шифровать это дело и работать по порту 443 ?

Hubbitus 10.04.2008 18:19

Цитата:

Сообщение от handsome (Сообщение 1541243)
Мне нужно чтобы при обращении к скрипту трафик шифровался. я правильно понимаю, что если https то трафик будет шифроваться и можно писать простые php-скрипты и не заморачиваться, будет работать шифрование с открытым ключем ??? в этом случае главное чтобы апач был правильно настроен для работы с ssl ?

Именно.


Цитата:

Сообщение от handsome (Сообщение 1541243)
Мне у хостера в конфиге тоже нужно будет прописать что то подобное получается чтобы апач стал шифровать это дело и работать по порту 443 ?

Конечно, а как же. Ну строго говоря это не обязательно на 443 порту должно быть, просто это порт по умолчанию. Но безусловно это требует некоторой настройки сервера. И не только этой. Еще нужны сертификаты, ну хотя бы самосгенеренные и самоподписанные.

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


Часовой пояс GMT +4, время: 10:41.

Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.