Extension catalog and manager - Soap fault 'Not Found' #8404
Comments
Kann ich bei mir nicht nachstellen. Koennt ihr mal bitte eine PHP Datei mit folgendem Inhalt auf euren Webspace hochladen und das Resultat hier posten? <pre><?php
ini_set('display_errors', 1);
error_reporting(-1);
if (version_compare(PHP_VERSION, '5.4.0', '>=') && version_compare(PHP_VERSION, '5.4.4', '<')) {
define('SOAP_COMPRESSION_FIXED', SOAP_COMPRESSION_DEFLATE);
} else {
define('SOAP_COMPRESSION_FIXED', SOAP_COMPRESSION_GZIP);
}
$test = new \SoapClient(
'https://contao.org/services/repository.wsdl',
[
'soap_version' => SOAP_1_2,
'compression' => SOAP_COMPRESSION_ACCEPT | SOAP_COMPRESSION_FIXED | 1,
'trace' => 1
]
);
echo 'PHP:' . PHP_VERSION . "\n";
echo 'OpenSSL:' . OPENSSL_VERSION_TEXT . "\n\n";
$test->getExtensionList(['first' => 0, 'limit' => 1]);
echo "REQUEST:\n" . $test->__getLastRequestHeaders() . "\n" . $test->__getLastRequest();
echo "\n\nRESPONSE:\n" . $test->__getLastResponseHeaders() . "\n" . $test->__getLastResponse();
?></pre> |
<pre>PHP:5.6.20
OpenSSL:OpenSSL 1.0.1e 11 Feb 2013
REQUEST:
POST /services/service.php HTTP/1.1
Host: contao.org
Connection: Keep-Alive
User-Agent: PHP-SOAP/5.6.20
Accept-Encoding: gzip, deflate
Content-Encoding: gzip
Content-Type: application/soap+xml; charset=utf-8; action=""
Content-Length: 286
<?xml version="1.0" encoding="UTF-8"?>
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope" xmlns:ns1="http://contao.org/repository" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:enc="http://www.w3.org/2003/05/soap-encoding"><env:Body><ns1:getExtensionList env:encodingStyle="http://www.w3.org/2003/05/soap-encoding"><options xsi:type="ns1:extensionListArgs"><first xsi:type="xsd:int">0</first><limit xsi:type="xsd:int">1</limit></options></ns1:getExtensionList></env:Body></env:Envelope>
RESPONSE:
HTTP/1.1 200 OK
Server: nginx
Date: Wed, 13 Jul 2016 10:19:18 GMT
Content-Type: application/soap+xml; charset=utf-8
Content-Length: 1982
Connection: keep-alive
<?xml version="1.0" encoding="UTF-8"?>
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope" xmlns:ns1="http://contao.org/repository" xmlns:enc="http://www.w3.org/2003/05/soap-encoding" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><env:Body xmlns:rpc="http://www.w3.org/2003/05/soap-rpc"><ns1:getExtensionListResponse env:encodingStyle="http://www.w3.org/2003/05/soap-encoding"><rpc:result>extensions</rpc:result><extensions enc:itemType="ns1:extension" enc:arraySize="1" xsi:type="ns1:extensionArray"><item xsi:type="ns1:extension"><totrecs xsi:type="xsd:int">1897</totrecs><name xsi:type="xsd:string">1601_webeditor_theme</name><author xsi:type="xsd:string">1601.communication</author><authorname xsi:type="xsd:string">1601.communication gmbh</authorname><authorsite xsi:type="xsd:string">http://www.1601.com</authorsite><type xsi:type="xsd:string">commercial</type><category xsi:type="xsd:string">template</category><version xsi:type="xsd:int">10030019</version><build xsi:type="xsd:int">5</build><releasedate xsi:type="xsd:string">1338933600</releasedate><coreminversion xsi:type="xsd:int">20110009</coreminversion><coremaxversion xsi:type="xsd:int">20110059</coremaxversion><installs xsi:type="xsd:int">7</installs><updates xsi:type="xsd:int">4</updates><votes xsi:type="xsd:int">0</votes><functionality xsi:type="xsd:double">0</functionality><usability xsi:type="xsd:double">0</usability><quality xsi:type="xsd:double">0</quality><rating xsi:type="xsd:double">0</rating><language xsi:type="xsd:string">de</language><title xsi:type="xsd:string">1601.webeditor theme</title><teaser xsi:type="xsd:string">Verändert das Backend-Theme in das Hauseigene-Theme von 1601.communication</teaser><translatorname xsi:type="xsd:string">Andreas Döbeling</translatorname><translatorsite xsi:type="xsd:string">http://www.1601.com</translatorsite></item></extensions></ns1:getExtensionListResponse></env:Body></env:Envelope>
</pre> |
Es funktioniert wieder mit https. Hast du was verändert? |
Dann kommt doch eine saubere Response vom ER2. Edit: nein, wir haben nichts geaendert. |
Mmh, ich hatte heute morgen ein paar Stunden gedebugt, es hatte definitiv nie funktioniert. |
Hier noch die immer wiederkehrenden Fehlermeldungen aus der error.log
https://github.com/contao/core/blob/master/system/modules/repository/templates/repository_catlist.html5#L32 |
funktioniert bei mir immer noch nicht mit https und die Ausgabe des Scripts beschränkt sich hier darauf: |
@dillinja: bitte nochmal probieren, ich hab das script um error reporting erweitert, obendrein solltest du hier bitte den kompletten plaintext pasten (CTRL+U in den meissten Browsern und Systemen / keine Ahnung wie es bei Mac ist). //all: probiert auch mal bitte, ob es bei euch evtl. nur ein caching Problem ist. - define('REPOSITORY_SOAPCACHE', true);
+ define('REPOSITORY_SOAPCACHE', false); |
das war leider die ganze Ausgabe und auch jetzt passiert nicht mehr.
Änderungen in der |
Dann hast du ein lokales Cache Problem auf dem Server. |
Wir haben das Problem auch auf zwei Webserver beobachtet. Wie würde man herausfinden können, warum der Cache zum Problem führt? |
Der Cache wird fyr euch zum Problem, weil er bei euch noch nicht abgelaufen ist und somit die neue WSDL nicht herunter geladen wird. 😀 Die Service URL hat sich mit dem Umbau auf C4.2 auf contao.org architekturbedingt geaendert (vormals zeigte sie auif ein Unterverzeichnis von |
Ah ok - wie setzt man den SOAP Cache zurück? |
Loesche alle Wo dieses liegt: |
Naja, darauf haben wir bei diesen Servern allerdings leider keinen Zugriff. |
aber PHP doch, sonst könnte es dort nichts ablegen. Kleines PHP Script was alle wsdl daraus löscht schreiben sollte doch gehe. |
Vermutlich ja. Könnte man in das Install Tool der nächsten Contao 3.5 Version geben (außer man will einfach abwarten, bis sich das Problem von selbst überall löst). |
Scheint aber schon was mit den neuen Servereinstellungen von contao.org zu tun zu haben, denn wir hatten dieses Problem ja noch nie und jetzt auf einmal so viele, genau an dem Tag wo sich dort was geändert hat. |
Ja, weil sich die Service URL geändert hat in der wsdl. Und wenn noch die alte aus der wsdl im Cache genommen wird, funktioniert es eben nicht mehr. |
Könnte man da nicht auch am Contao Server einen Redirect einrichten? |
Das Problem war anscheinend wirklich nur euer cache. Dieser sollte nun yberall leer sein und das ER sauber wieder funktionieren. @fritzmg einen redirect koennte man machen, jedoch haben wir dies leider versaeumt. Ich denke wir koennen dieses Ticket somit schliessen. @leofeyer please close. |
Ja, nachdem der default wert bei 24h liegt, sollte sich das Problem nun eh überall erledigt haben 😄. Bei unseren Servern auf jeden Fall. Sollte ein redirect nicht trotzdem eingerichtet werden, falls irgendein Hoster zufällig einen ungewöhnlich hohen Wert für |
Danke an alle. |
@discordier Gibt es irgendeinen Grund, warum der Redirect nicht trotzdem im nachhinein eingerichtet wurde? Im Forum tauchen immer noch User auf, die Probleme mit der Erweiterungsverwaltung haben auf grund des SOAP cache. |
Wie bitte koennen die nach MONATEN(!) immer noch einen falschen cache haben? @leofeyer sollen wir doch noch einen redirect einbauen? |
Wie gesagt, evt. benutzen manche Hoster einen sehr hohen Wert für Alternativ könnte man den SoapClient auch komplett ohne Cache initialisieren: $this->client = new SoapClient($wsdl, array(
…,
'cache_wsdl' => WSDL_CACHE_NONE
)); |
Was dann den impact auf dem ER Server bei jeder PI im Backend auch mind. einen hit bringt, da bin ich dagegen. |
Wahrscheinlich seit dem Update der Website auf Contao 4 bekommen viele (nicht alle) User diesen Fehler (Bild)
Siehe auch im Forum https://community.contao.org/de/showthread.php?63188-Erweiterungen-quot-Not-found-quot
Ich habe es zum Beispiel beim Hoster webgo.de innerhalb eines Accounts, in einem anderen Account beim gleichen Hoster nicht.
Stellt man die Extension repository URL wieder auf http, dann geht es wieder. Seltsam, obwohl das ja eine Weiterleitung auf https ist. http://contao.org/services/repository.wsdl
Müsste schnell gefixed werden, weil jetzt viele Ihre Erweiterungen nicht mehr verwalten können, da dort der selbe Fehler kommt.
The text was updated successfully, but these errors were encountered: