|
v8: PHP SOAP перестало работать то что точно работало!!! | ☑ | ||
---|---|---|---|---|
0
dzsysop
27.07.11
✎
21:50
|
Вопрос к знатокам PHP, или тем кто реально копал эти чудо веб-сервисы.
Имеется код, который 100% работал неделю назад и который перестал работать без объяснения причин на одном месте (хостинге, где ничего не менялось!!!), но прекрасно выполняется (пока ?) на другом хостинге. Вопрос - куда копать - потому что идей нет!!! погоняйте кто может на своих площадках, может появятся мысли? вот кусок кода: $username = 'web_service'; $password = 'webadmin'; $result = ''; try { $client= new SoapClient('http://69.70.226.251/InfoBase1/ws/test_ws1.1cws?wsdl', array('location'=>'http://69.70.226.251/InfoBase1/ws/test_ws1.1cws?wsdl','login' => $username, 'password' => $password)); try { $result.=$client->CheckUserNameExist(array('UserName'=>$userid))->return; } catch (Exception $e) { $result.='Caught exception: '.$e->getMessage()."\n"; }; } catch (Exception $e) { $result.= 'Caught exception: '. $e->getMessage()."\n"; }; echo $result; |
|||
1
Fragster
гуру
27.07.11
✎
21:51
|
текст ошибки?
|
|||
2
dzsysop
27.07.11
✎
21:51
|
блин
|
|||
3
dzsysop
27.07.11
✎
21:52
|
нет там текста - оно виснет
|
|||
4
dzsysop
27.07.11
✎
21:52
|
а тут форум преобразовал строку
|
|||
5
dzsysop
27.07.11
✎
21:53
|
виснет на создании клиента $client= new SoapClient(
|
|||
6
dzsysop
27.07.11
✎
21:53
|
адрес вызова
69.70.226.251/InfoBase1/ws/test_ws1.1cws?wsdl |
|||
7
dzsysop
27.07.11
✎
21:55
|
второй параметр в вызове
array('login'=>$username, 'password'=>$password) а то тут какой-то баг на форуме |
|||
8
Asmody
27.07.11
✎
21:57
|
(0) точно ничего не менялось? Может хитер какие–нибудь обновления безопасности установил?
|
|||
9
dzsysop
27.07.11
✎
21:58
|
у меня локально XAMPP стоит
|
|||
10
dzsysop
27.07.11
✎
21:59
|
я ничего не менял, работал себе и работал
|
|||
11
dzsysop
27.07.11
✎
22:02
|
опять же, если даже что-то изменилось, то КУДА копать? по инету полазил, пишут только что кэш нао отключать - отключать стал
ini_set('soap.wsdl_cache_enabled', 0) но не помогает апач стал рестартовать перед запуском, типа кэш же должен сброситься - не помогает самое обидное ва дня воевал, думал напортачил с кодом потом когда исключил все, залил ко на внешний хостинг - там все заработало но меня это не раует, потому что на ругом хостинге, куда скорее всего придется таки заливать, этот код работать не хочет т.е. грабли таки надо найти |
|||
12
dzsysop
27.07.11
✎
22:04
|
кстати, может кто-то знает хороший форм РНРшников?
может я куда-то сходил бы за советом, все-таки вебсервисы не совсем местная тема |
|||
13
dzsysop
27.07.11
✎
22:06
|
в строке я ошибся тут
$result.=$client->CheckUserNameExist(array('UserName'=>$userid))->return; надо написать $result.=$client->CheckUserNameExist(array('UserName'=>$username))->return; или любую строку туда передать должно возвращать true или fasle |
|||
14
Fragster
гуру
27.07.11
✎
22:08
|
ну а в логах апача что?
|
|||
15
dzsysop
27.07.11
✎
22:17
|
ХЗ, не спеця в этом, сейчас поищу и скину сюда
но я думал чтобы кто-то для начала у себя запустил в логах апача - тишина - сейчас при попытке открыть страницу - она тупо визуально висит, а в логах апача ничего не появляется... я вот думаю а у РНР есть лог? |
|||
16
Fragster
гуру
27.07.11
✎
22:24
|
у меня говорит: Caught exception: Unable to parse URL
|
|||
17
Fragster
гуру
27.07.11
✎
22:24
|
а просто wsdl - открывается
|
|||
18
Fragster
гуру
27.07.11
✎
22:25
|
а, не, это я опечатался
|
|||
19
Fragster
гуру
27.07.11
✎
22:26
|
вот так работает (true) http://pastebin.com/q0dhWFwa
|
|||
20
dzsysop
27.07.11
✎
22:27
|
||||
21
Адинэснег
27.07.11
✎
22:28
|
(8) безопасность еще в (0) по п*зде пошла :-D
|
|||
22
dzsysop
27.07.11
✎
22:33
|
не помогает, причем я до этого пытался локэйшн передавать, правда саму ссылку туда вставлял.
вот и спрашивается - что за епрст!? а, еще, если первым параметром даю не ссылку а NULL, то объект создается, но тогда ругается при попытке вызова метода CheckUserNameExist в общем, я в ауте, глубоком и не знаю куда двигаться сейчас переустановлю XAMPP, посмотрю что будет... |
|||
23
Fragster
гуру
27.07.11
✎
22:38
|
(22) все дело в настройках пхп
|
|||
24
Fragster
гуру
27.07.11
✎
22:38
|
мне, например, отдельно ставить php_soap пришлось - потому как он не был в стандартной поставке
|
|||
25
dzsysop
27.07.11
✎
22:39
|
ок
сейчас сохраню текущий ИНИ, потом пониму дефолтный потому как оно у меня ТОЧНО работало но вопрос потом еще с хостерами разобраться |
|||
26
dzsysop
27.07.11
✎
22:41
|
такс, пошел качать свежий XAMPP
|
|||
27
dzsysop
27.07.11
✎
23:21
|
итого
на свежем XAMPP имеем Fatal error: Maximum execution time of 30 seconds exceeded in D:\xampp174\htdocs\joom15\ttt\test.php on line 25 т.е. снова висим... а почему висим - никто не знает... :-( |
|||
28
Asmody
27.07.11
✎
23:25
|
(27) ну поставь минут 5 на выполнение скрипта
|
|||
29
dzsysop
27.07.11
✎
23:32
|
ЗАЧЕМ??? если он 100% выполняется пару секунд!!!
|
|||
30
Asmody
27.07.11
✎
23:39
|
(29) откуда я знаю? может у тебя через модем 1800к соединение идет?
|
|||
31
dzsysop
27.07.11
✎
23:50
|
:-)
|
|||
32
Fragster
гуру
27.07.11
✎
23:50
|
файрволл винды не дает апачу ничего сделать (как вариант)
|
|||
33
dzsysop
28.07.11
✎
00:10
|
не верю, как-то все очень станно
фаервол - не давал бы вообще туда обращаться очень непонятные симптомы, и главное все РАБОТАЛО неделю назад |
|||
34
Asmody
28.07.11
✎
00:40
|
Отключи касперского, дрвеба или колёсами ещё шибко умный сетевую активность блокирует
|
|||
35
Asmody
28.07.11
✎
00:41
|
(34)+ «колёсами» — это не читать, это телефон так все переврал
|
|||
36
SeraFim
28.07.11
✎
02:49
|
объясните мне, неучу, для чего такие длинные параметры вызова:
$client= new SoapClient('http://69.70.226.251/InfoBase1/ws/test_ws1.1cws?wsdl" target="_blank" ref="nofollow" class="extralink">http://69.70.226.251/InfoBase1/ws/test_ws1.1cws?wsdl', array('location'=>'//69.70.226.251/InfoBase1/ws/test_ws1.1cws?wsdl','login" target="_blank" ref="nofollow" class="extralink">http://69.70.226.251/InfoBase1/ws/test_ws1.1cws?wsdl','login' => $username, 'password' => $password)); для чего эти таргеты, классы? тут же просто нужна структура веб-сервиса, чтобы soapClient знал, какие функции есть, и с какими параметрами вызывать. что будет, если попробовать по-простому: $client= new SoapClient('http://69.70.226.251/InfoBase1/ws/test_ws1.1cws?wsdl', array('login' => $username, 'password' => $password)); к тому же ерунда какая-то с кавычками у location. + читаем описание: If working in non-WSDL mode, the location and uri options must be set, where location is the URL to request and uri is the target namespace of the SOAP service. |
|||
37
SeraFim
28.07.11
✎
02:51
|
+(36) ошибся, должно быть так:
что будет, если попробовать по-простому: $client= new SoapClient('http://69.70.226.251/InfoBase1/ws/test_ws1.1cws?wsdl', array('login' => $username, 'password' => $password)); |
|||
38
Fragster
гуру
28.07.11
✎
08:38
|
(37)->(19)
|
|||
39
Fragster
гуру
28.07.11
✎
15:02
|
автор живой?
|
|||
40
dzsysop
29.07.11
✎
21:27
|
(37) ты не читал, это и было написано просто
просто ФОРУМ автоматом преобразовал ссылку в хрен знает что, я там написал сразу что в первом параметра и что во втором |
|||
41
dzsysop
29.07.11
✎
21:28
|
итого, плюнул на посиск причин, перестал отлаживать локально,
перенес код на реальный хостинг и там работаю, что случилось с локальным - не понял и плюнул |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |