Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Problem z soap na localhost
Forum PHP.pl > Forum > PHP
Micchaleq
Witam serdecznie,

mam pewien głupi problem, szukałem już od wczoraj na internecie, ale i tak nie mogę sobie z tym poradzić.
Na serwerze www wszystko działa bez najmniejszych problemów, problem występuje na localhoście, windows 7 64 bity xampp 1.8.1

A więc próbuje sobie utworzy nowy obiekt soap poprzez : new SoapClient używam sobie zarówno http jak i https

I wyskakuje błąd :
  1. Fatal error: Uncaught SoapFault exception: [WSDL] SOAP-ERROR


Znalazłem więc gdzieś, że ssl na serwerze, tak więc od komentowałem odpowiednią linijkę "extension=php_openssl.dll"

I teraz jedyne co mi wypisuje na ekranie to :
"Fatal error: Maximum execution time of 30 seconds exceeded in"

Czy ktoś ma jakiś pomysł jak rozwiązać ten problem?
artuross
Niektórych rzeczy nie da zrobić się na localhost, tak samo jak nie skorzystasz z funkcji mail() tak samo może być z soap. Sprawdziłeś czy chodzi to na WAMP/LAMP/MAMP? To niby to samo, ale jednak jest pewna różnica.
Crozin
@artuross: Niby dlaczego ktoś miałby nie móc skorzystać z mail() na swoim lokalnym komputerze i jakie znaczenia mają tutaj gotowe paczki typu XAMPP/WAMP?

@Micchaleq: Wypadałoby przechwycić wyjątki oraz podać jakiś kod, który powoduje ten błąd.
L00zak
najpewniej masz gdzieś w ustawieniach zły path do includowanych plików, jeśli nie to błąd w configu serwera
nie jestem zwolennikiem serwerów windowsowych, jak już bym nie miał np. debiana to można założyć konto testowe np. na az.pl i milej się pracuje:)
Micchaleq
Witam , zainstalowałem teraz xamppa 1.7.7 i wszystko działa poprawnie, jednak bardziej zależy mi na wersji nowszej smile.gif

konto lokalne mi jest potrzebne bo robie sporty projekt a wrzucać to co chwile na serwer to mi się nie uśmiecha to samo tyczy się jakiejś maszyny wirtualnej, nie mam na to za bardzo czasu tym bardziej że jestem już na końcu zostało mi podpięcie allegro.

Ogolnie to wyjątków nie da się przechwycić bo wywala jakby koniec czasu oczekiwania na serwer, a więc jakby coś blokuje dojście do tego soap-a, ewentualnie w error.log mam coś w stylu ze nie jest ustawiony cache dla ssl, ale jak to zrobić tez nie mam kompletnie pojęcia.
Crozin
Nadal nie pokazałeś kodu (SSCCE), ani dokłądnych treści błędów.
artur_dziocha
A czy to chodzi o API allegro??
Jeśli tak to http://forum.php.pl/index.php?showtopic=20...p;p=994948&
Micchaleq
Witam ponownie,

Ok od początku mój prosty kod ( tworzenie obiektu z allegro )
  1. <?php
  2.  
  3. try {
  4. $test = new SoapClient('http://webapi.allegro.pl/uploader.php?wsdl');
  5. }
  6. catch(SoapFault $f) {
  7. print($f->faultstring);
  8. }
  9. ?>


Przy wyłączonym rozszerzeniu ssl występuje błąd ( bez względy czy adres będzie https czy http )
  1. SOAP-ERROR: Parsing WSDL: Couldn't load from 'https://webapi.allegro.pl/uploader.php?wsdl' : failed to load external entity "https://webapi.allegro.pl/uploader.php?wsdl"


I wyczytałem, że trzeba włączyć rozszerzenie ssl i tak więc uczyniłem w php.ini po czym ( znów zarówno https jak i http ) jest to samo :
  1. Fatal error: Maximum execution time of 30 seconds exceeded in C:\xampp\htdocs\test\index.php on line 4


Dodatkowo zwróciłem uwagę na to, że mój xampp po włączeniu generuje błędy takiej treści :
  1. [Fri Oct 12 18:20:25.151350 2012] [core:warn] [pid 5208:tid 296] AH00098: pid file C:/xampp/apache/logs/httpd.pid overwritten -- Unclean shutdown of previous Apache run?
  2. [Fri Oct 12 18:20:25.728551 2012] [ssl:warn] [pid 5208:tid 296] AH01873: Init: Session Cache is not configured [hint: SSLSessionCache]
  3. [Fri Oct 12 18:20:25.775351 2012] [mpm_winnt:notice] [pid 5208:tid 296] AH00455: Apache/2.4.3 (Win32) OpenSSL/1.0.1c PHP/5.4.7 configured -- resuming normal operations
  4. [Fri Oct 12 18:20:25.775351 2012] [mpm_winnt:notice] [pid 5208:tid 296] AH00456: Server built: Aug 18 2012 12:41:37
  5. [Fri Oct 12 18:20:25.775351 2012] [core:notice] [pid 5208:tid 296] AH00094: Command line: 'c:\\xampp\\apache\\bin\\httpd.exe -d C:/xampp/apache'
  6. [Fri Oct 12 18:20:25.775351 2012] [mpm_winnt:notice] [pid 5208:tid 296] AH00418: Parent: Created child process 6008
  7. [Fri Oct 12 18:20:27.304154 2012] [ssl:warn] [pid 6008:tid 308] AH01873: Init: Session Cache is not configured [hint: SSLSessionCache]
  8. [Fri Oct 12 18:20:27.350954 2012] [mpm_winnt:notice] [pid 6008:tid 308] AH00354: Child: Starting 150 worker threads.
artuross
Cytat(Crozin @ 12.10.2012, 13:17:35 ) *
@artuross: Niby dlaczego ktoś miałby nie móc skorzystać z mail() na swoim lokalnym komputerze i jakie znaczenia mają tutaj gotowe paczki typu XAMPP/WAMP?


Już odpowiadam, gotowe paczki pokroju XAMPP/WAMP mają swoje własne hmm... jak to nazwać - ustawienia. Nawet jeżeli w php.ini (i wszystkich innych plikach, które są gdzieś używane, jakkolwiek one by się nazywały) ustawisz to samo to mogą wystąpić różnice, z taką różnicą się kiedyś spotkałem i jeśli mnie pamięć nie myli to na serwerze już pod wersję produkcyjną działało inaczej.

A używałeś kiedyś mail() na localhoscie? Bo u mnie to nie działa sleep.gif
Micchaleq
Cytat(artuross @ 13.10.2012, 11:22:03 ) *
Już odpowiadam, gotowe paczki pokroju XAMPP/WAMP mają swoje własne hmm... jak to nazwać - ustawienia. Nawet jeżeli w php.ini (i wszystkich innych plikach, które są gdzieś używane, jakkolwiek one by się nazywały) ustawisz to samo to mogą wystąpić różnice, z taką różnicą się kiedyś spotkałem i jeśli mnie pamięć nie myli to na serwerze już pod wersję produkcyjną działało inaczej.

A używałeś kiedyś mail() na localhoscie? Bo u mnie to nie działa sleep.gif


Każdą paczkę czy xampp czy wamp po prostu trzeba umieć skonfigurować i działa ona prawie identycznie do twojego serwera www. Funkcje mail jak najbardziej da się podpiąć! Jedyne co w XAMPIE jest niefajne to trudność instalacji dodatkowych rozszerzeń i zmiany wersji php czy phpmyadmin.

W każdym razie to nie temat czy coś się da czy nie da tak jak koledzy wyżej napisali moim zdaniem też tutaj jest ewidentny problem z ssl i wersją php 5.4.7 tylko czy da się to jakoś rozwiązać?
Crozin
Na początek ustaw zgłaszanie wszelkich informacji do logoów zarówno dla Apachea, jak i PHP.

1. Włącz SSL.
2. Po kolei rozwiązuj każdy z błędów w logu, m.in. włącz SSLSessionCache.
3. Chwilowo wyłącz maksymalny czas wykonywania skryptu - być może masz zwyczajnie problem z łączem i z jakiegoś powodu nie może ono pobrać zawrtości pliku?

@artuross: To najwyższy czas zabrać się za podstaw konfiguracji Apache/PHP/jakiegoś serwera SMTP - gotowe paczki nie uniemożliwiają niczego. To jedynie prekonfigurowane instalacje kilku osobnych programów.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.