Witam
Uruchomiłem WebService napisany w .Net 2.0 na win 2k3, IIS6. Działa on w nieznanym mi środowisku sieciowym, do komputera gdzie jest zainstalowany mam dostęp jedynie przez VNC. Jest on dostępny na porcie 9050. Jeżeli z zewnątrz w przeglądarce wpiszę: http://adres.web.service:9050/service.asmx?wsdl to dostanę listę wszystkich metod usługi sieciowej. Problem pojawia się przy próbie użycia którejkolwiek z tych metod.
Taki kod w php5:
Kod
      $webService = "http://adres.web.service:9050/service.asmx?wsdl";
      $client = new SoapClient($webService);
      $params = array('cos' => $param);
      $wynik = ($client->Test($params));

Daje exception "Not Found".

Napisałem aplikację w WinForms w .Net, która również wywołuje metody tego WebService i sytuacja jest identyczna ("Not Found, error 404"). Jednakże w Visual Studio na debuggerze zauważyłem, że gubiony jest port w adresie usługi. Po jego modyfikacji (breakpoint i dodanie portu do zmiennej w odpowiedniej klasie) wszystko działa.
1. Czy to możliwe, że zarówno w bibliotekach .Netowych oraz w SoapClient w Php byłby identyczny błąd? Kiedyś wystawiałem go na porcie 8080 i działało (tylko to było w sieci lokalnej, nie wiem czy to ma znaczenie).
2. A może po prostu jakaś pula portów nie może być używana do usług sieciowych?
3. Albo sieć, w której działa webservice ma źle przekierowane porty? Metody WebService wywoływane są na tym samym porcie co listing tych metod?

WebService działa na pewno prawidłowo.

Najbardziej zależy mi na rozwiązaniu tego problemu od strony php, z tego co widzę tutaj:
http://pl.php.net/manual/pl/function.soap-...t-construct.php
konstruktor nie ma opcji przekazania portu osobno.