Frage

Kann mein Shop API-Anfragen mithilfe einer benutzerdefinierten Administrator-URL lösen?Z.B: https://admin.magento.lc/api/v2_soap?wsdl=1?Das Problem besteht darin, dass, wenn ich eine API-URL über eine benutzerdefinierte Admin-URL verwende, diese zum Frontend umgeleitet wird.

War es hilfreich?

Lösung

Nach einem Blick hinein /app/code/core/Mage/Api/etc/config.xml Ich habe gesehen, dass die Route nur für die konfiguriert ist frontend, nicht für admin:

<config>
<modules ...>
<global ...>
<frontend>
        <routers>
            <api>
                <use>standard</use>
                <args>
                    <module>Mage_Api</module>
                    <frontName>api</frontName>
                </args>
            </api>
        </routers>
...
</frontend>

Es gibt also keine Admin-Route dafür /api Dies könnte der Grund dafür sein, dass Sie weitergeleitet werden.Ich habe es allerdings nicht getestet.

Andere Tipps

Erste Lösung besteht darin, die 301- oder 302-Weiterleitung zu deaktivieren System > Web > Url Options > Auto-redirect to Base URL

Versuchen Sie es dann erneut ohne benutzerdefinierte Administrator-URL: http://magento.dev/api/v2_soap/index/wsdl/1/

Dies kann dazu führen, dass einige Probleme verloren gehen http://example.com/store/ Zu http://www.example.com/store/ Weiterleitungen...


Zweite Lösung besteht darin, eine Rewrite-Regel für die Webserverkonfiguration (hier Apache vhost) festzulegen:

RewriteCond %{HTTP_HOST} ^admin\.magento\.biz$ [NC]
RewriteCond %{REQUEST_URI} /api/
RewriteRule ^ https://magento.biz%{REQUEST_URI} [L,R]
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit magento.stackexchange
scroll top