Модераторы: skyboy, MoLeX, Aliance, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> curl post - ошибка 504 
:(
    Опции темы
jone31
  Дата 14.2.2015, 20:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 343
Регистрация: 29.11.2008

Репутация: нет
Всего: нет



вообще такая ситуация:
есть внутренний ресурс куда нужно отправлять уведомления от QIWI. к нему не привязан домен, это просто белый IP.

но т.к. требуется https, на домене сайта(https) сделан скрипт который "проксирует" их на внутренний ресурс.
т.е. запросы поступает на скрипт по https и он их перенаправляет на другой IP по http.
сам скрипт для "проксирования" запросов:
Код

test.php
<?PHP
function post($url, $data=array()){
        $ch = curl_init(); 
        curl_setopt($ch, CURLOPT_URL, $url); 
        curl_setopt($ch, CURLOPT_POST, 1); 
        curl_setopt($ch, CURLOPT_POSTFIELDS, $data); 
        $res = curl_exec($ch);
        if(curl_error($ch)){ echo 'Error '.curl_errno($ch).': '.curl_error($ch); }
        curl_close($ch);
        return $res;
    }
    $t = post('http://x.x.x.x:1462/qiwi.php', $_POST);
    echo $t;
    exit();
?>

вроде все просто и должно работать.

при прямом запросе на http://x.x.x.x:1462/qiwi.php - работает корректно и ответ получен.
при запросе к test.php по https без параметров - скрипт пересылает корректно, ответ получает.
при запросе к test.php по https с POST - скрипт подвисает минут на 15-20 и выдает 504 ошибку.
в логах сайта вижу это:
Код

2015/02/14 18:54:25 [error] 1162#0: *5520 upstream prematurely closed connection while reading response header from upstream, 
client: x.x.x.x, server: site_name.ru, request: "POST /test.php HTTP/1.1", upstream: "http://127.0.0.1:8081/test.php", host: "www.site_name.ru"
2015/02/14 19:07:50 [error] 1165#0: *5540 upstream timed out (110: Connection timed out) while reading response header from upstream, 
client: x.x.x.x, server: site_name.ru, request: "POST /test.php HTTP/1.1", upstream: "http://127.0.0.1:8081/test.php", host: "www.site_name.ru"

в логах внутреннего сервера вижу что до него запрос вообще не дошел.

test.php работает на nginx + apache.

не могу понять в чем может быть причина такого поведения и куда дальше копать...

Добавлено @ 20:59
сами post данные небольшие, например: "eshopId=2082622219&paymentId=221232083270875&eshopAccount=RU0045436412211&
recipientAmount=1.00&recipientCurrency=RUR&paymentStatus=3&[email protected]&[email protected]&
paymentData=2015-02-02+22%3a23%3a01&orderId=3321747171&serviceName=12312&hash=012701fcb7f4b07b94a669f59cc7398c48
&invoiceId=21059325580&
payerAccount=RU42213312195&paymentAmount=1.00&paymentCurrency=RUR&rupay_payment_sum=1.00&rupay_payment_currency=RUR
&paymentMethod=CardPayment&merchantPaymentAmount=0.96"

Это сообщение отредактировал(а) jone31 - 14.2.2015, 21:00
PM MAIL   Вверх
Сумасшедший
Дата 23.2.2015, 11:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Чилавек-Каропка
***


Профиль
Группа: Завсегдатай
Сообщений: 1503
Регистрация: 15.8.2004
Где: Москва

Репутация: нет
Всего: 107



А конфиги веб-серверов в чём различаются?


--------------------
Однажды ты спросишь, а я отвечу: "Время ожидания специалиста - 10 минут". Ты бросишь трубку, так и не узнав, что Ваш звонок очень важен для нас!
PM MAIL WWW Jabber   Вверх
jone31
  Дата 23.2.2015, 22:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 343
Регистрация: 29.11.2008

Репутация: нет
Всего: нет



Цитата(Сумасшедший @  23.2.2015,  11:47 Найти цитируемый пост)
А конфиги веб-серверов в чём различаются? 

внешний это vds с конфигами по умолчанию.

на внутреннем сервере стоит apache, но все конфиги закрыты и какие там настройки неизвестно.

пробовал запустиь curl скрипт из консоли php - результат тот же.


PM MAIL   Вверх
Сумасшедший
Дата 24.2.2015, 20:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Чилавек-Каропка
***


Профиль
Группа: Завсегдатай
Сообщений: 1503
Регистрация: 15.8.2004
Где: Москва

Репутация: нет
Всего: 107



Вэдээс вэдээсу вэдээс) Даже в разных сборках линукса дефолтные конфиги отличаются. Просто подозрение что nginx, если это он обслуживает https не туда проксирует.


--------------------
Однажды ты спросишь, а я отвечу: "Время ожидания специалиста - 10 минут". Ты бросишь трубку, так и не узнав, что Ваш звонок очень важен для нас!
PM MAIL WWW Jabber   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0905 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.