यदि आप पुरानी एपीआई कॉल के साथ संगतता रखना चाहते हैं तो एक अलग दृष्टिकोण है। कुछ अस्पष्ट कारणों से, मेरा अपाचे सर्वर रीराइट पार्सिंग के दौरान स्ट्रिंग ^api/...
का विश्लेषण नहीं करता है।
लेकिन आप अभी भी Magento PHP कोड को बदले बिना http://www.somedomain.com/api/v2_soap?wsdl=1
का उपयोग कर सकते हैं।
.htaccess में बदलें:: तुम बस निम्नलिखित की तरह .htaccess को बदलने की जरूरत द्वारा
RewriteRule ^api/([a-z][0-9a-z_]+)/?$ api.php?type=$1 [QSA,L]
RewriteRule ^api(\.php)?/([a-z][0-9a-z_]+)/?$ api.php?type=$2 [QSA,L]
(देखना^api.php/बजाय^API /)
और भी बेहतर अगर आप में से कुछ, http://www.somedomain.com/api/V2_soap?wsdl=1
है (V2_soap अपरकेस है), तो आप एक RewriteMap
जोड़ने के लिए आंतरिक अपाचे समारोह का उपयोग करने के छोटे अक्षरों में पैरामीटर सेट करना होगा। अपने वर्चुअल होस्ट में जोड़े RewriteMap:
RewriteMap lc int:tolower
और .htaccess में
RewriteRule ^api(\.php)?/([a-zA-Z][0-9a-z_]+)/?$ api.php?type=${lc:$2} [QSA,L]
यह api.php स्क्रिप्ट के लिए पैरामीटर लोअरकेस करने के लिए सेट है और यह भी स्वीकार करेंगे 'V2_soap' नियमित अभिव्यक्ति में
यह अंतिम भाग @dreeves in this answer
स्रोत
2013-04-09 08:46:30
/index.php/api/V2_soap?wsdl=1 आप इस – chanz
ठीक करने की कोशिश की तो यह काम करता है केवल जब index.php यूआरएल में शामिल है है। ऐसा क्यों है? –
index.php आवश्यक नहीं है, आप इस तरह से भी कोशिश कर सकते हैं www.yourmagento.com/api/V2_soap?wsdl=1 – chanz