Witam! No właśnie Na tym mi się zatrzymało akurat ;) Przerobiłem wg. Twoich wskazówek - własnie na tym certyfikacie stoi. Dodałęm do skryptu dostępne zmienne... Pobrałem certyfikat za pomocą przeglądarki ie6 - i dałem tam export do pliku ale wyeksportowało mi go jako plik *.cer .pem pisałeś - ale nie wiem jak to zrobić
To pokazuje przeglądarka - po odpaleniu skryptu Warning: SoapClient::SoapClient() [function.SoapClient-SoapClient]: Unable to set local cert chain file `cert.cer'; Check that your cafile/capath settings include details of your certificate and its issuer in
A jak uruchomię w linuksie np. w przelądarce w3m - to własnie mi się pokazuje ten błędny certyfikat - ale strona sięwyśiwetla - tylko dopiero po trzech potwierdzeniach
w3m https://transferbgz.pl/bgz.blc.loader/WebService?wsdl
1- unable to get local issuer certificate: accept? (y/n) y 2- Bad cert ident www.transferbgz.pl from transferbgz.pl: accept? (y/n) y 3- Accept unsecure SSL session:Bad cert ident www.transferbgz.pl from transferbgz. y
i dopiero wyświetla się strona.....
W jaki sposób zawrzeć to w skrypcie ? Aktualnie mam tak: ----------------------------------------------------------------------------- <?php #Pobieranie pliku z BGZ
#Dane wejściowe $pLogin = "jan.kowalski"; $pPassword = "haslo"; $pIden = "12345678"; $pId = " " ; $pSystem = " " ; $client = "https://transferbgz.pl/bgz.blc.loader/WebService?wsdl"; $stream_context = "https" ; $cer = "cert.cer";
#Opcje pobierania $g1 = "getDokuments"; $g2 = "getDokumentsForSystem"; $g3 = "getDokument"; $g4 = "getBase64Document"; $g5 = "getSystems";
#Zmienne do opcji $z1 = "'pLogin', 'pPassword', 'pIden'"; $z2 = "'pSystem', 'pLogin', 'pPassword', 'pIden'"; $z3 = "'pId', 'pLogin', 'pPassword', 'pIden'"; $z4 = "'pId', 'pLogin', 'pPassword', 'pIden'"; $z5 = "'pLogin', 'pPassword', 'pIden'";
#Sesja
$my_session = new SoapClient( $client, array( "trace" => true, "exceptions" => true, "proxy_host" => PROXYHOST, "proxy_port" => PROXYPORT, "stream_context" => $stream_context, "local_cert" => $cer ));
#Przykład odbioru #$return_val = $client->getSystems('pLogin', 'pPassword', 'pIden');
$return_val = $client->$g1($z1);
echo $return_val;
?>
-------------------------------------------------------------------------
I to wywala błąd Jak to uwzględnić ? i w którym miejscu ?
W liście datowanym 15 lipca 2009 (11:38:59) napisano:
$client = new SoapClient("https://transferbgz.pl/bgz.blc.loader/WebService?wsdl");
transferbgz.pl używa nieprawidłowego certyfikatu bezpieczeństwa. Ten certyfikat jest prawidłowy tylko dla www.transferbgz.pl. (Kod błędu: ssl_error_bad_cert_domain)
To też bym uwzlędnił...
lms mailing list lms@lists.lms.org.pl http://lists.lms.org.pl/mailman/listinfo/lms