वाकई, मुझे लग ही रहा था कि पिक्चर अभी बाकी है, दिल्ली अभी दूर है, और मेरा माइंड अभी ब्लो होना है!!
यदि आपने नहीं पढ़ी है तो दास्तान-ए-मैक की पहली किस्त अवश्य पढ़ें। 😉 पिछली किस्त में मैंने दूसरी चीज़ों के साथ कीपास और वनपासवर्ड का अनुभव बताया था कि कैसे कीपास का जुगाड़ मैक पर नहीं चला। बाद में चलाने पर कीपास का मैक वर्ज़न कीपासएक्स मेरे मैक पर चल गया, हालांकि उतना बढ़िया नहीं है जितना विण्डोज़ वाला कीपास है लेकिन कुछ नहीं से कुछ सही वाली बात हो जाती है, सबसे बढ़िया दो बातें कि मुफ़्त है और मुझे अपना कीपास वाला डाटाबेस कन्वर्ट नहीं करना पड़ेगा और वही एक डाटाबेस विण्डोज़, मैक और एण्ड्रॉयड तीनों पर चल जाएगा!! :tup:
पिछली किस्त में तो मैंने सिर्फ़ शुरुआती अनुभव बयान किए थे। लगता है कि कदाचित् मैक ने मंद-२ मुस्कुराते हुए सोचा हो कि बेटे अभी से पस्त हो गए, अभी तो पिक्चर बाकी है!!
शुरुआती सैटअप के बाद बारी आई डेवेलपमेन्ट एन्वॉयरनमेन्ट सैट करने की। सोचा कि अपाचे (Apache) सर्वर डालें या इंजन एक्स (Nginx) डाल लें। तभी एक मैक प्रयोग करने वाले मित्र ने बताया कि अपाचे डला हुआ आता है और पीएचपी (PHP) भी डली हुई आती है। यह सुन सोचा कि चलो अपाचे डला हुआ है ही, कहाँ इंजन एक्स डालने के लिए उसको कंपाइल करते फिरेंगे (चाहे यह काम मैकपोर्ट्स ही क्यों न करे, झंझट तो है ही)। तो अपाचे की कॉन्फिगुरेशन फाइल मे छेड़छाड़ करी, मुख्य घर वाली डायरेक्टरी बदली, वर्चुअल होस्ट बना लिए सभी प्रोजेक्ट्स के लिए, पीएचपी के साथ अपाचे का गठबंधन किया (दोनो ही डले हुए आते हैं लेकिन एक दूसरे से अंजान होते हैं, अब इसको एप्पल का अहमक पन नहीं कहा जाए तो क्या कहें)। टर्मिनल खोल के अपाचे को अब रीस्टार्ट किया (हाँ यहाँ पर विण्डोज़ की तरह सर्विसिज़ विण्डो नहीं होती जिसमें एक क्लिक पर स्टार्ट/स्टॉप/रीस्टार्ट का विकल्प हो, मैक इज़ नथिंग बट यूनिक्स विद अ गुड लुकिंग इंटरफेस)। अपाचे तुरंत रीस्टार्ट हो गया लेकिन लोकलहोस्ट अब भी न चल के दे, अपाचे के एरर लॉग में देखा तो पाया कि वह /usr/htdocs/ में जाने की कोशिश कर रहा है पर कॉन्फिगुरेशन फाइल में यह पथ तो कहीं भी नहीं है!!
तो क्या किया जाए? मेरा मतलब एप्पल और मैक को जी भर के कोसने के अतिरिक्त क्या किया जाए? 😀 गूगल की सहायता ली, खोजा तो जाना कि सिस्टम प्रेफरेन्स (यूं कह लो मैक का कंट्रोल पैनल) में शेयरिंग में वेब सर्वर है, उसका स्विच ऑन करो तो अपाचे चलेगा (तो अभी तक मैं किसको रीस्टार्ट कर रहा था?)। बहरहाल वह किया और लोकलहोस्ट चल गया, जय हो!! लेकिन अब माईसीक्वेल (MySQL) की समस्या थी, पीएचपी उससे गठबंधन नहीं कर पा रही थी जबकि माईसीक्वेल बराबर चल रहा था, सीक्वेल प्रो नामक क्लाइंट बिना किसी दिक्कत माईसीक्वेल से गठबंधन कर उसके डाटाबेस दिखा रहा था, स्वयं मैंने 10-15 जीबी के डाटाबेस माईसीक्वेल में इंपोर्ट किए थे तो उसके न चलने का तो कोई मतलब ही नहीं था। बहुत दिमाग खराब किया लेकिन हल न निकला।
तो अब क्या किया जाए? अर्थात एप्पल और मैक को गालियाँ देने के अतिरिक्त क्या किया जाए? 😀 बात अगले दिन पर छोड़ मैं ऑफिस के काम में व्यस्त हो गया। अगले दिन एक पीएचपी स्क्रिप्ट लिखी माईसीक्वेल से गठबंधन करने वाली और उसके द्वारा पूरा एरर लॉग प्रिंट करवाया तो जाना कि माईसीक्वेल सॉकेट नहीं मिल रहा है पीएचपी को। पीएचपी की डिफॉल्ट कॉनफिगुरेशन में सॉकेट /var/mysql/mysql.sock पर ढूँढ रहा था लेकिन वहाँ कुछ न था और यह सॉकेट /tmp/mysql.sock पर आराम से विराजमान था। अब वहाँ से इसको हिलाने का मतलब था कि जो इसका वो पता जान प्रयोग करते हैं वो सभी एप्प कलप जाएँगे, तो इसलिए /var/mysql/ में mysql.sock नाम से सिमलिंक बना के /tmp/mysql.sock पर प्वाइंट कर दिया और पीएचपी का माईसीक्वेल के साथ गठबंधन हो गया, चक दे फट्टे!!
शायद मैंने कभी स्टीव जॉब्स को स्टेज पर कहते सुना था कि एप्पल के उत्पाद बेहतरीन होते हैं क्योंकि दे जस्ट वर्क। हाँ अब लॉगिन स्क्रीन पर पासवर्ड डालने से लॉगिन हो जाए, ब्राऊज़र पर क्लिक करने से ब्राऊज़र खुल जाए तो यह डींग मार ही सकते हो, इसके आगे की चीज़ों पर कभी बात करने की आवश्यकता ही नहीं रही क्योंकि यदि करते तो कूड़े को बढ़िया बता के कैसे बेचते!!
मैंने पहली बार मैक पर डेवेलपमेन्ट एन्वॉयरनमेन्ट सैटअप किया। जितना समय मुझे मैक पर डेवेलपमेन्ट एन्वॉयरनमेन्ट सैटअप करने में लगा उसका आधा मुश्किल से मुझे विण्डोज़ पर लगा था जब कई वर्ष पहले मैंने पहली बार विण्डोज़ एक्सपी पर यह सब सैटअप किया था!! वाकई, जय हो!!
अपडेट: यह तो बताना भूल ही गए कि एक प्रोजेक्ट जिसका कोड विण्डोज़ और लिनेक्स पर मस्त चल रहा है उसको मैक पर चलाने से मैक को लकवा मार जाता है, टर्मिनल भी नहीं खुलता कि अपाचे वेबसर्वर को रीस्टार्ट कर दें, मैक को हार्ड रीबूट करना पड़ता है!! ❗ ऐसा भी नहीं है कि कोड की मैक से शत्रुता है क्योंकि कोड पीएचपी में है और सॉफ़्टवेयर वर्डप्रैस है!! 😀
Comments