Kuvvet php WSDL yeniden önbellek

4 Cevap php

PHP WSDL-cache devre dışı bırakmak için nasıl biliyorum, ama ne WSDL yeniden önbelleğe kuvvet hakkında?

Bu denedim budur: Ben engelli için önbelleğe alma seti ile benim kodu çalıştırmak ve espected yeni yöntemler geldi. Sonra önbelleğe alma etkinleştirildiğinde, ama nedense benim eski olmayan çalışma Wsdl tekrar gösterdi. Yani: nasıl benim eski önbellek üzerine yazmak benim yeni WSDL zorlayabilir?

4 Cevap

Ben önbelleklediğiniz devre dışı olduğunda da önbelleğe yazma duracaktır sanırım. Eğer önbelleği yeniden etkinleştirmek Yani eski önbelleğe alınmış kopyası hala orada ve geçerli olacaktır. Sen (önbelleğe alma etkin) deneyebilirsiniz

ini_set('soap.wsdl_cache_ttl', 1);

Ben koymak bir süre-canlı bir saniye içinde bunu sıfır koyarsanız ben düşünüyorum, çünkü tamamen önbelleğini devre dışı ama girişi kaldırmak değil. Muhtemelen yalnızca önbelleğe alınmış bir kopyasını öldürmek istediğinizde bu satırı koymak isteyeceksiniz.

Benim php.ini Bu gibi görünen bir giriş var:

soap.wsdl_cache_dir="/tmp"

/ Tmp, ben wsdl-[bazı onaltılık dize] adlı dosyaları bir demet bulundu

Bu komut ile önbelleğe alınmış wsdl dosyaları temizleyebilirsiniz:

rm /tmp/wsdl-*

Önbellekten eski WSDL silin.

Ben denemek istiyorum

$limit = ini_get('soap.wsdl_cache_limit');
ini_set('soap.wsdl_cache_limit', 0);
ini_set('soap.wsdl_cache_limit', $limit);

Ya da belki soap.wsdl_cache_ttl 0 ve geriye