Is SOAP wsdl caching on or off by default? I ask because I have users that have reported turning on a soap function, but a request tells them that the function is not enabled. This leaves me to believe that it is cached.
Looking at my php info, I see:
Soap Client => enabled
Soap Server => enabled
Directive => Local Value => Master Value
soap.wsdl_cache => 1 => 1
soap.wsdl_cache_dir => /tmp => /tmp
soap.wsdl_cache_enabled => 1 => 1
soap.wsdl_cache_limit => 5 => 5
soap.wsdl_cache_ttl => 86400 => 86400
But, in the php code for if seems to be set to 0.
Any hints on what is really happening here? Do I need to bust the cache somehow by appending a random string to the end of my wsdl url?
[quote]
Is SOAP wsdl caching on or off by default? I ask because I have users that have reported turning on a soap function, but a request tells them that the function is not enabled. This leaves me to believe that it is cached.
Looking at my php info, I see:
Soap Client => enabled
Soap Server => enabled
Directive => Local Value => Master Value
soap.wsdl_cache => 1 => 1
soap.wsdl_cache_dir => /tmp => /tmp
soap.wsdl_cache_enabled => 1 => 1
soap.wsdl_cache_limit => 5 => 5
soap.wsdl_cache_ttl => 86400 => 86400
But, in the php code for if seems to be set to 0.
Any hints on what is really happening here? Do I need to bust the cache somehow by appending a random string to the end of my wsdl url?
[/quote]
Check for an ini_set command that changes soap.wsdl_cache option in the web_services packages.
Note that, you will have to turn off WSDL caching for the soap client, not on soap server.
That is whoever makes the soap request will have to turn off local wsdl caching.
This PHP code to turn off wsdl caching, is simply ini set the setting to 0:
ini_set("soap.wsdl_cache_enabled", "0");
On the SOAP server side, you can also double check if Squid caching or any caching mechanism that caches the WSDL file output.