इंस्टॉलेशन FAQ
From LimeSurvey Manual
विषय-सूची:
अपने कंप्यूटर पर इंस्टॉलेशन
LimeSurvey को आपके कंप्यूटर पर MAMP/XAMPP या किसी अन्य सिस्टम के साथ इंस्टॉल किया जा सकता है। ध्यान रखें कि आपका कंप्यूटर वेब सर्वर नहीं है - यह किसी अन्य उपयोगकर्ता के लिए वेब के माध्यम से सुलभ नहीं होता।
अपने सर्वेक्षण को वेब के माध्यम से अन्य उपयोगकर्ताओं तक पहुँचाने के लिए, आपके पास इनमें से कोई एक विकल्प होना चाहिए:
- किसी होस्ट प्रदाता से सर्वर या वेब स्पेस खरीदें
- या LimeSurvey में विशेषज्ञता रखने वाला होस्ट प्रदाता खोजें
इंस्टॉलेशन शुरू करना
कमांड-लाइन एक्सेस के साथ MySQL में डेटाबेस और उपयोगकर्ता कैसे बनाएँ?
आपको अपने MySQL में नीचे दिए गए कमांड दर्ज करने होंगे:
create database <your_database_name>;
create user <your_database_username>;
create user <your_database_username>@localhost;
set password for <your_database_username> = PASSWORD('<your_database_password>');
set password for <your_database_username>@localhost = PASSWORD('<your_database_password>');
grant all on <your_database_name>.* to '<your_database_username>';
grant all on <your_database_name>.* to '<your_database_username>'@'localhost';
टर्मिनल में, <your_database_name>, <your_database_username> और <your_database_password> को संबंधित/इच्छित मानों से बदलना होगा।
यदि मैं स्क्रिप्ट के माध्यम से डेटाबेस नहीं बना पाऊँ तो क्या करें?
सामान्यतः स्क्रिप्ट पहले एक नया डेटाबेस बनाती है और फिर टेबल संरचना। लेकिन यदि आपका सर्वर/ISP आपको MySQL में नया डेटाबेस बनाने के लिए एडमिन अधिकार नहीं देता, तो आपको आवश्यक डेटाबेस बनवाने के लिए अपने सर्वर व्यवस्थापक से संपर्क करना होगा (या आवश्यक अनुमतियाँ मिलने पर इसे स्वयं बनाएँ)। नए बनाए गए खाली डेटाबेस में उचित एक्सेस अधिकार (अर्थात: पढ़ना/लिखना/बनाना) होने चाहिए। इसके बाद आप LimeSurvey इंस्टॉलेशन शुरू कर सकेंगे, जो नए बनाए गए डेटाबेस के भीतर टेबल बना देगा।
इंस्टॉल पेज खोलते समय खाली पेज
यह समस्या LimeSurvey इंस्टॉलेशन में नहीं, बल्कि PHP इंस्टॉलेशन में होती है।
- जाँचें कि MySQL PHP मॉड्यूल (php-mysql) इंस्टॉल है।
- जाँचें कि आपका PHP इंस्टॉलेशन वही PHP.ini फ़ाइल लोड कर रहा है जिसे आप संशोधित कर रहे हैं, न कि आपके सिस्टम की अन्य PHP.INI फ़ाइलें।
- अपनी PHP.ini में निम्नलिखित सेटिंग का स्थान और अनुमतियाँ जाँचें:
upload_tmp_dir="/temp"
session.save_path="/temp"
- जाँचें कि आपका सर्वर उपयुक्त PHP संस्करण चला रहा है।
अस्तित्वहीन संसाधनों के कारण त्रुटि संदेश
कभी-कभी फ़ाइलें सही तरह से अपलोड नहीं होतीं या अपलोड प्रक्रिया के दौरान खराब हो जाती हैं। इससे कई अलग-अलग त्रुटि संदेश आते हैं। इनमें से अधिकांश किसी ऐसी फ़ाइल या फ़ाइल के भीतर के फ़ंक्शन का उल्लेख करते हैं जो नहीं मिल रहा।
समाधान: अपने FTP प्रोग्राम के बाइनरी मोड का उपयोग करके सभी फ़ाइलें दोबारा अपलोड करें।
आवश्यकताएँ पेज
mbstring (Multibyte String Functions) लाइब्रेरी क्या है?
mbstring लाइब्रेरी एक PHP लाइब्रेरी है जो कैरेक्टर सेट को एक भाषा से दूसरी भाषा में बदल सकती है। LimeSurvey चलाने के लिए यह आवश्यक है। यह जाँचने के लिए कि यह पहले से इंस्टॉल है या नहीं, किसी वेब ब्राउज़र में यह URL खोलें:
http://<your_server>/<your_limesurvey_directory>/admin/install/phpinfo.php
बहुत सारी जानकारी दिखाई जाएगी। विन्यास अनुभाग में स्ट्रिंग 'mbstring' खोजें। यदि आपको mbstring अनुभाग मिल जाता है, तो सब कुछ ठीक है और आप अपना LimeSurvey इंस्टॉलेशन जारी रख सकते हैं!
यदि आपको mbstring अनुभाग नहीं मिलता, तो आपके सामने समस्या हो सकती है। तीन संभावित स्थितियाँ हैं:
- यदि यह आपके होस्ट प्रदाता का सर्वर है, तो PHP में उस एक्सटेंशन को सक्रिय करने के लिए कहें या इसे सक्रिय करने के बारे में अधिक जानकारी माँगें - यदि आपके सर्वर का एडमिनिस्ट्रेशन पैनल अच्छा है, तो हो सकता है आप इसे स्वयं सक्रिय कर सकें
- यदि यह आपका अपना Linux सर्वर है, तो आपको PHP को दोबारा कंपाइल करके उसमें mbstring लाइब्रेरी शामिल करनी पड़ सकती है। यह कैसे करना है, इसके लिए Linux विशेषज्ञों से पूछें। हालाँकि, आप इसे अपने Linux पैकेज मैनेजर से भी इंस्टॉल कर सकते हैं, जो आजकल लगभग सभी Linux वितरणों में उपलब्ध होता है
- यदि आप Linux का ऐसा संस्करण उपयोग कर रहे हैं जो 'yum' का समर्थन करता है (CentOS, RedHat, Fedora)...
- ...टर्मिनल (सुपर यूज़र के रूप में) का उपयोग करें और टाइप करें: yum install php-mbstring
- .../etc/php.ini को अपडेट करना और mbstring के विभिन्न पैरामीटर से कमेंट हटाना सुनिश्चित करें
- ...इंस्टॉल करने के बाद apache को रीस्टार्ट करना सुनिश्चित करें: /etc/init.d/httpd restart
- यदि आप Linux का ऐसा संस्करण उपयोग कर रहे हैं जो 'yum' का समर्थन करता है (CentOS, RedHat, Fedora)...
- यदि यह आपका अपना Windows सर्वर है, तो अपने सिस्टम पर php.ini खोजें, उसे किसी एडिटर में खोलें और mbstring खोजें। संभवतः जिस पंक्ति में यह स्ट्रिंग है, वह सेमीकोलन से कमेंट की गई होगी। सेमीकोलन हटाएँ, सेव करें और अपना वेब सर्वर रीस्टार्ट करें
फ़ाइल सिस्टम अनुमतियों की जाँच पर अटक जाना
यदि SELinux सक्रिय है (मुख्यतः CentOS पर), तो आपको त्रुटि मिल सकती है कि फ़ाइल सिस्टम अनुमतियाँ सही नहीं हैं, भले ही निर्देशिकाओं की सूची खाली हो। अनुमतियाँ जैसे 777 या 755 होने पर भी SELinux लिखने से रोकता है। अपने सर्वर के लिए SELinux को सही ढंग से कॉन्फ़िगर करने हेतु SELinux दस्तावेज़ीकरण देखें।
डेटाबेस बनाने के बाद
डेटाबेस बनाने के बाद खाली पेज
लक्षण
- LimeSurvey सही ढंग से इंस्टॉल हो गया है और डेटाबेस बन गया है, लेकिन एडमिन पेज की जगह आपको खाली पेज मिलता है
- वेब सर्वर लॉग में "Fatal error: Call to a member function on a non-object in /path/to/limesurvey/admin/login_check.php on line 69" दिखता है
समाधान
यह संभवतः config.php में $rooturl या $rootdir की गलत सेटिंग से संबंधित है। config.php फ़ाइल dirname('''FILE''') को कॉल करके $rootdir को सही ढंग से सेट करने का प्रयास करती है। यह आमतौर पर काम करता है, लेकिन जब LimeSurvey किसी उपयोगकर्ता की होम या public_html निर्देशिका में इंस्टॉल हो और होम निर्देशिका NFS पर माउंट की गई हो, तब यह विफल हो सकता है। $rootdir को मैन्युअल रूप से सेट करने के लिए (आपका शेल या pwd कमांड आपको /disks/hostname/home/username/public_html/limesurvey जैसा पाथ दिखा सकता है), /home/username/public_html/limesurvey का उपयोग करके देखें।
एडमिन पेज खोलने पर ब्राउज़र लगातार चलता रहता है और अंत में उसे दिखाने में विफल हो जाता है
लक्षण
- LimeSurvey सही तरीके से इंस्टॉल हो गया है और डेटाबेस बन गया है। लेकिन जब आप एडमिन पेज खोलते हैं, तो ब्राउज़र लगातार चलता रहता है और अंत में पेज दिखाने में विफल हो जाता है
- जब आप वेब सर्वर का एक्सेस लॉग देखते हैं, तो उसका आकार काफ़ी बड़ा हो चुका होता है (कुछ मामलों में 2 GB से भी अधिक)
- एक्सेस लॉग के अंदर यह संदेश बार-बार भरा हुआ दिखता है:
समाधान
इसका कारण mbstring.func_overload सेटिंग हो सकती है। php.ini फ़ाइल में निम्नलिखित सेटिंग बदलें:
mbstring.func_overload = 0
एडमिन पेज खोलने पर ब्राउज़र में त्रुटि दिखती है: Fatal error: Call to a member function gT() on a non-object in login_check.php on line 76
लक्षण
- LimeSurvey सही तरीके से इंस्टॉल हो गया है और डेटाबेस बन गया है। लेकिन एडमिन पेज पर रीडायरेक्ट होने पर ब्राउज़र में सूचीबद्ध त्रुटि दिखाई देती है।
- config.php में
$rootdirऔर$rooturlसही ढंग से सेट हैं। - limesurvey इंस्टॉलेशन डायरेक्टरी के डिस्क पाथ के नाम में इनमें से कोई एक वर्ण शामिल है: '(',')' या '+'।
समाधान
LimeSurvey इंस्टॉलेशन डायरेक्टरी को मूव/रीनेम करें, ताकि पाथ के नाम में इनमें से कोई भी वर्ण न हो: '(',')' या '+'।
इंस्टॉलेशन के बाद
सफल इंस्टॉलेशन के बाद आने वाली अन्य सभी समस्याओं के लिए, कृपया समस्या निवारण पेज देखें।