PHP прокси-сервер работает половину времени - PullRequest
0 голосов
/ 11 сентября 2011

Я почти ничего не знаю о PHP. Я пытаюсь раздать набор финансовых калькуляторов, которые зависят от веб-службы, доступ к которой осуществляется через прокси-сервер .NET или PHP-прокси. Я остановил прокси PHP на 3 разных серверах (Windows и Linux), и установка всегда работает для меня. Тем не менее, у меня есть веб-мастер написать, и они не могут заставить его работать.

Я надеялся, что кто-то, имеющий опыт отладки, может попробовать это:

http://www.pine -grove.com / онлайн-калькуляторы / PGS-HTML-calculators.htm

Вот еще фон, чтобы сэкономить вам время.

В комплект поставки входит PDF. Но в основном распакуйте в папку. Предложите "калькуляторы". Найдите js / calculator.js. Примерно в строке 11 отредактируйте эту строку, чтобы она указала на установленный прокси:

var strWebService = 'http://{www.your -server.com} /Calculators/proxies/calculators.php';

Это все, что должно потребоваться. Поле responseText объекта HTTPRequest содержит эту ошибку:

soap:ReceiverServer was unable to process request. ---> '\' is an unexpected token. The expected token is '"' or '''. Line 1, position 15.**

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

1 Ответ

0 голосов
/ 11 сентября 2011

Несколько вещей:

  1. curl_setopt($ch, CURLOPT_HEADER, 1);, вероятно, не то, что вы хотите. Это приводит к тому, что заголовки ответа включаются в текст в виде заголовка $result. Возвращая их echo, они волшебным образом не становятся заголовками ответа на запрос к calculator.php; они являются частью тела ответа.
  2. Время ожидания в четыре секунды, вероятно, слишком мало. Если это работает для вас, но не для веб-мастера, то я предполагаю, что для CURL-запроса, выполненного calculator.php, истекло время ожидания для веб-мастера, и предупреждение о том, что этот факт был отправлен обратно.
  3. Это выглядит неправильно:

    $header[] = "Content-Type: text/xml; charset=utf-8";
    $header[] = 'http://com.pine-grove/' + $wsMethod;
    
  4. Избавьтесь от тега PHP close ?> в конце. Обычно это не требуется, и вы рискуете отправить обратно лишние пробелы, как в этом случае, когда calculator.php непреднамеренно добавляет CR + LF к телам всех прокси-ответов.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...