विंडोज 7 WAMP सर्वर पर जेरोमक को स्थापित करना


9

मैं अपने विंडोज 7 मशीन पर zeromq को PHP के साथ उपयोग करने के लिए zeromq स्थापित करने के लिए देख रहा हूँ (मैं WAMP सर्वर (5.3.4), Apache Server 2.2.17) का उपयोग कर रहा हूँ।

मैंने उनकी साइट पर प्रलेखन का पालन ​​किया , लेकिन मुझे नहीं पता कि क्या करना है। मैंने निम्नलिखित साइट से ज़ीरोमक स्थापित किया , फिर मैंने इस साइट से डीएल को कॉपी करने की कोशिश की, लेकिन यह नीचे है।

मुझे DLL कहां मिल सकता है? क्या मैं इस लिंक से केवल विंडोज इंस्टॉलर स्थापित करना चाहता हूं , या कुछ और आवश्यक है?

मैंने इस साइट से dll डाउनलोड किया है http://178.79.157.189/~mikko/win32/php-zmq-win32.zip


मैं PHP 5.3.4 x64 संस्करण और विंडोज 7 x 64 का उपयोग कर रहा हूं। मैंने निम्नलिखित चरणों की कोशिश की:

  1. मैंने स्थापित किया है ZeroMQ-3.2.2rc2~miru1.5-x64
  2. की नकल libzmq.dllकीc:\wamp\bin\php\php5.3.4
  3. की नकल php-zmq\php53\php53-ts_zeromq-3.2.2 कीc:\wamp\bin\php\php5.3.4\ext
  4. में php_zmqएक्सटेंशन सक्षम कियाphp.ini
  5. मैंने WAMP रिस्टार्ट किया। यह दिखाता है

    'c:/wamp/bin/php/php5.3.4/ext/php_zmq.dll' -% 1 वैध win32 आवेदन नहीं है

क्या समस्या हो सकती है?

फिर से मैंने वैम्प x86 (php 5.4.3) संस्करण और विंडोज़ 7 x64 के साथ प्रयास किया

  1. मैंने स्थापित किया है ZeroMQ-3.2.2rc2~miru1.5-x86.exe
  2. की नकल libzmq.dllकीc:\wamp\bin\php\php5.4.3
  3. की नकल php-zmq\php54\php54-ts_zeromq-3.2.2 कीc:\wamp\bin\php\php5.4.3\ext
  4. में php_zmqएक्सटेंशन सक्षम कियाphp.ini
  5. मैंने WAMP रिस्टार्ट किया। यह दिखाता है

    PHP स्टार्टअप: डायनेमिक लाइब्रेरी 'c: /wamp/bin/php/php5.4.3/ext/php_zmq.dll' लोड करने में असमर्थ - निर्दिष्ट मॉड्यूल नहीं मिल सका। लाइन पर अज्ञात में \ r \ n।

जवाबों:


9

यह देखते हुए कि यह विंडोज़ पर PHP के साथ zeromq dll समस्याओं के लिए Google पर शीर्ष खोज परिणाम है, मैं इसमें अपने दो सेंट जोड़ रहा हूं।

PHP के साथ शून्यएमक्यू स्थापित करने के लिए उचित कदम:

1) PHP के लिए सही DLL पैकेज डाउनलोड करें

PHP ZeroMQ के लिए DLL डाउनलोड पृष्ठ अब http://pecl.php.net/package/zmq ( http://snapshot.zeromq.com पर मर चुका है) में पाया जाता है। प्रत्येक उपलब्ध रिलीज़ के बगल में एक छोटा 'DLL' लिंक मौजूद होगा। '। वह आपकी कड़ी है। उस पर क्लिक करें, और अपने PHP संस्करण के आधार पर अपने dll का चयन करें और चाहे वह थ्रेड सेफ (TS) या गैर-थ्रेड सेफ़ (NTS) हो।

यदि आप XAMPP पैकेज से आ रहे हैं, तो आपका DLL TS & x86 संस्करण होना चाहिए ।

2) सुनिश्चित करें कि आपके पास सही Microsoft Visual C ++ Redistributable पैकेज स्थापित है।

इस लेखन के रूप में, सही संस्करण 2012 एक है। पैकेज डाउनलोड करने के लिए लिंक: http://www.microsoft.com/en-us/download/details.aspx?id=30679

3) phpzmq.dll और libzmq.dll (चरण 1 में dll पैकेज से) को अपने PHP \ Extensions Directory (डिफ़ॉल्ट XAMPP php ext पथ है: C: \ xampp \ php or ext) पर कॉपी करें

4) अपने PHP.ini में phpzmq.dll जोड़ें

5) अपने पैट सिस्टम वातावरण चर (बहुत महत्वपूर्ण) के लिए PHP \ एक्सटेंशन निर्देशिका जोड़ें और अपनी मशीन को पुनरारंभ करें

पुनः आरंभ करने पर, अपना Apache शुरू करें और PHP देवताओं से प्रार्थना करें।

सामान्य त्रुटियों के लिए सामान्य प्रश्न:

1) मेरे पास एक पॉपअप है, जिसमें कहा जा रहा है कि "'libzmq.dll' मेरे कंप्यूटर से गायब है" जब अपाचे शुरू करते हैं।

खैर, यह सुनिश्चित करें कि आपने पत्र में चरण 5 का पालन किया है और सत्यापित करें कि निर्देशिका पथ सही है और dll उस निर्देशिका में मौजूद है।

2) अपाचे को शुरू करते समय एक अन्य पॉपअप "" php5.dll "मेरे कंप्यूटर से गायब है"।

लगता है कि आपको अपने php संस्करण के लिए गलत dll मिला है। चरण 1 से सही एक डाउनलोड करें।

3) एक यादृच्छिक पॉपअप यह कहते हुए दिखाई दिया कि "'phpzmq.dll' एक वैध जीत 32 आवेदन नहीं है।"

वह DLL अभी भी सही नहीं है। सुनिश्चित करें कि आपको सही (x86 या x64) मिला है और यह या तो थ्रेड सुरक्षित है या नॉन-थ्रेड सुरक्षित है। आप कैसे जानते हैं? DLL रूले खेलने का समय।

इस पोस्ट की आशा करना वास्तव में उन उपयोगकर्ताओं की मदद करता है जो यहां उतरते हैं :)


शानदार जवाब धन्यवाद। मैं उम्र के लिए सही dll के लिंक की तलाश में हूं।
इबानोर

3

@ मिस्ट्रीस का जवाब काफी जानकारीपूर्ण है लेकिन यह गलत है। चरण 3 और 4 में कुछ गलतियाँ हैं जो उल्लेख के लायक हैं।

WAMP सर्वर चरण 3 में सही प्रक्रिया
)

  • i) phb बिन रूट डायरेक्टरी (उदाहरण। C: \ wamp \ bin \ php \ php5.5.12) पर libzmq.dll कॉपी करें
  • ii) php_zmq.dll को php एक्सटेंशन डायरेक्टरी में कॉपी करें (जैसे। C: \ wamp \ bin \ php \ php5.5.12 \ ext)
  • मैं php_zmq-1.1.2-5.5-ts-vc11-x64.zip (php 5.5, थ्रेड सेफ) का उपयोग कर रहा हूं जो इस लिंक http://pecl.php.net/package/zmq से प्राप्त कर सकते हैं ।
  • सुनिश्चित करें कि आप अपने php संस्करण (5.x) से मेल खाने वाले को डाउनलोड करते हैं, अन्यथा आपको "Apache शुरू करते समय" एक और पॉपअप कहा जाता है "" php5.dll 'मेरे कंप्यूटर से गायब है "


चरण 4)
phpzmq.dll घोषणा को अपने PHP.ini में जोड़ें।

यह ध्यान रखना महत्वपूर्ण है कि WAMP सर्वर निर्देशिका में कुछ php.ini हैं।
सही php C: \ wamp \ bin \ apache \ apache2.4.9 \ php.ini
में है, ऊपर दिए गए php.ini में निम्नलिखित घोषणा को लागू करें।

[ZMQ]
extension=php_zmq.dll

1
हाँ! नकल पकड़ना अच्छा है libzmq.dllऔर libsodium.dllphp रूट dir
manix

"प्रतिलिपि libzmq.dll से php बिन रूट डाइरेक्टरी" ने काम किया था।
सिड

2

मुझे भी यही समस्या थी। php-zmq_zeromq-{version}-ztsफ़ोल्डर से dll का उपयोग करने से मेरे लिए समस्या ठीक हो गई।


जहाँ से हम उस dll को प्राप्त कर सकते हैं क्या आप मुझे साझा कर सकते हैं?
तिरुमलाई मुरुगन

0

मैंने @Mysteryos और @Zcythe द्वारा निर्देशों का पालन किया, लेकिन मुझे अभी भी मॉड्यूल त्रुटि लोड करने में असमर्थ प्राप्त हो रहा था, इसलिए फ्रेंच में WAMP मंचों की समीक्षा करने के बाद मुझे चरण 4 के बाद अगले परिवर्तनों के बाद काम करना पड़ा:

C: \ wamp \ script में स्थित फ़ाइल config.inc.php को संपादित करें

ढूंढें:

$phpDllToCopy = array_merge(
    $php_icu_dll,
    array (
    'libmysql.dll',
    'libeay32.dll',
    'libsasl.dll',
    'libpq.dll',
    'libssh2.dll', //For php 5.5.17
    'php5isapi.dll',
    'php5nsapi.dll',
    'ssleay32.dll',
    'php5ts.dll',
    'php7ts.dll', //For PHP 7
    )
);

और फिर 2 ZeroMQ पुस्तकालयों को जोड़ें ताकि यह ऐसा दिखता है:

$phpDllToCopy = array_merge(
    $php_icu_dll,
    array (
    'libmysql.dll',
    'libeay32.dll',
    'libsasl.dll',
    'libpq.dll',
    'libssh2.dll', //For php 5.5.17
    'php5isapi.dll',
    'php5nsapi.dll',
    'ssleay32.dll',
    'php5ts.dll',
    'php7ts.dll', //For PHP 7
    'Libsodium.dll', //The ZMQ Libraries
    'Libzmq.dll'
    )
);

WAMP को पुनरारंभ करें और इसे ठीक से काम करना है।

मैंने निम्नलिखित ZMQ लाइब्रेरी के साथ इसका परीक्षण किया:

https://pecl.php.net/package/zmq/1.1.3/windows

  • (7.0 थ्रेड सेफ (टीएस) x64, पीएचपी 7.0.10)

अभिवादन!


0

PHP 5.3, PHP 7.1, और विंडोज पर 7.2 में शून्यएमक्यू स्थापित करने के लिए कदम

सबसे अधिक संभावना है कि आप अपने PHP संस्करण, x64, और थ्रेड सुरक्षित चाहते हैं,
लेकिन आपके पास PHP का x32 संस्करण हो सकता है

$ php -i | grep Architecture  
Architecture => x64
  • PHP 5.3 के लिए

5.3 थ्रेड सेफ (TS) x86
एक्सट्रैक्ट को डाउनलोड करें और dll को कॉपी करें

कॉपी libzmq.dllमें
C: \ WAMP \ बिन \ php \ php5.3.4
वहाँ कोई है libsodium.dllपीएचपी 5.3 में

कॉपी php_zmq.dllमें
C: \ WAMP \ बिन \ php \ php5.3.4 \ ext

अपने php.ini में एक्सटेंशन जोड़ें,
आमतौर पर अन्य डायनामिक एक्सटेंशन्स के साथ

extension=php_zmq.dll

  • PHP 7.1 के लिए

7.1 थ्रेड सेफ (TS) x64
एक्सट्रैक्ट को डाउनलोड करें और dll को कॉपी करें

कॉपी libzmq.dllऔर libsodium.dllमें
C: \ laragon \ बिन \ php \ php-7.1.20-Win32-VC14-64
एक अतिरिक्त dll है libsodium.dllपीएचपी 7.1 के लिए

कॉपी php_zmq.dllमें
\ laragon \ बिन \ php \ php-7.1.20-Win32-VC14-x64 \ ext: सी

अपने php.ini में एक्सटेंशन जोड़ें, आमतौर पर अन्य डायनामिक एक्सटेंशन्स के साथ

extension=php_zmq.dll

  • PHP 7.2 के लिए

7.2 थ्रेड सेफ (TS) x64
एक्सट्रैक्ट को डाउनलोड करें और dll को कॉपी करें

कॉपी libzmq.dllमें
C: \ laragon \ बिन \ php \ php-7.2.11-Win32-VC15-x64
वहाँ कोई है libsodium.dllपीएचपी 7.1 के बाद

कॉपी php_zmq.dllमें
\ laragon \ बिन \ php \ php-7.2.11-Win32-VC15-x64 \ ext: सी

अपने php.ini में एक्सटेंशन जोड़ें, आमतौर पर अन्य डायनामिक एक्सटेंशन्स के साथ

extension=zmq

  • php जानकारी देखकर सत्यापित करें
$ php -i | grep zmq  
zmq  
libzmq version => 4.1.3
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.