У меня действительно странная проблема.
Я пытаюсь реализовать веб-сервис, который использует мыло для связи API и требует обратного прокси-сервера для связи.
Локально я использую laravel / valet (nginx) в качестве сервера разработки, и мне удалось заставить обратный прокси-сервер работать на моей машине со следующей конфигурацией:
location /editor/ {
proxy_pass http://00.00.00.00/Editor/;
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-Proto https;
proxy_set_header Force-https-links ON;
}
Когда я делаю это на моем промежуточном сервере, он выдает следующую ошибку:
SoapFault:
Not Found
Пытался отследить его, но не смог найти ничего полезного.
Когда я комментирую proxy_set_header Host $host;
, это работает немного, но API возвращает мне свой собственный IP-адрес. В моей локальной настройке он возвращает домен, где прокси настроен, как и должно быть.
Как только я снова добавляю строку, я снова получаю SoapFault Not found
.
Вот как я подключаюсь к API в моем локальном приложении:
$options = [
'cache_wsdl' => 0,
'trace' => 1,
'exceptions' => 1,
'stream_context' => stream_context_create([
'ssl' => [
'verify_peer' => false,
'verify_peer_name' => false,
'allow_self_signed' => true
]
])
];
$client = new SoapClient('https://domain.test/editor/main.asmx?WSDL', $options);
return $client;
Есть ли кто-нибудь, у кого есть идея, где искать и как правильно это проверить?