वैकल्पिक सेटिंग्स
From LimeSurvey Manual
यह अनुभाग उन उपयोगकर्ताओं के लिए है जो ऐसी कॉन्फ़िगरेशन सेटिंग्स को एडिट करना चाहते हैं जिन्हें LimeSurvey इंस्टॉलेशन के GUI (ग्राफ़िकल यूज़र इंटरफ़ेस) से बदला नहीं जा सकता। कृपया ध्यान रखें कि LimeSurvey रूट डायरेक्टरी में किए गए सभी बदलाव आपकी अपनी ज़िम्मेदारी पर होते हैं। फिर भी, यदि आपको कोई समस्या आ रही है या अधिक मार्गदर्शन चाहिए, तो LimeSurvey समुदाय से सहायता के लिए चर्चा फ़ोरम से जुड़ें।
परिचय
इंस्टॉलेशन की कॉन्फ़िगरेशन सेटिंग्स बदलने के लिए आपको वैकल्पिक सेटिंग्स को एडिट करना होगा। ये LimeSurvey रूट डायरेक्टरी में स्थित /application/config/config-defaults.php में मिलती हैं। मानक इंस्टॉलेशन की डिफ़ॉल्ट सेटिंग्स config-defaults.php में होती हैं। इनमें से कुछ को वैश्विक सेटिंग्स संवाद से बदला जा सकता है, जबकि बाकी को मैन्युअल रूप से एडिट करना होगा।
अपग्रेड होने पर केवल config-defaults.php की सेटिंग्स बदलती हैं। इसलिए config.php फ़ाइल को एडिट करने से आपकी कस्टम सेटिंग्स सुरक्षित रहेंगी।
/application/config/config.php में LimeSurvey सेटिंग्स को अपडेट करने/जोड़ने के लिए आपको config सरणी को अपडेट करना होगा:
'config'=>array(
'debug'=>0,
'debugsql'=>0,
'LimeSurveySetting'=>'New value', // Update default LimeSurvey config here
)
Yii सेटिंग्स
LimeSurvey Yii फ़्रेमवर्क का उपयोग करता है, जिसके अपने कॉन्फ़िगरेशन पैरामीटर application/config/internal.php और application/config/config.php फ़ाइल में होते हैं। आप Yii कॉन्फ़िगरेशन के माध्यम से LimeSurvey की कुछ विशिष्ट कॉन्फ़िगरेशन सेटिंग्स तक भी पहुँच सकते हैं।
चूँकि config.php सरणी को पूरे config में मर्ज किया जाता है, आप config.php फ़ाइल में किसी भी Yii पैरामीटर को बदल सकते हैं।
Yii की विशिष्ट सेटिंग्स components सरणी में सेट की जाती हैं:
'components' => array(
'db' => array(
....
),
'Specific settings'=>array(
....
),
),
डाटाबेस सेटिंग
जब आप पहली बार LimeSurvey इंस्टॉल करते हैं, तो इंस्टॉलर फ़ाइल डाटाबेस सेटिंग को config.php में लिख देती है। आवश्यकता होने पर आप config.php फ़ाइल के इस भाग को अपडेट कर सकते हैं। कृपया याद रखें कि यह आपकी अपनी ज़िम्मेदारी पर है! यह भी देखें: Yii दस्तावेज़ीकरण। साथ ही याद रखें कि LimeSurvey केवल इन डाटाबेस प्रकारों को सपोर्ट करता है: mysql, pgsql, dblib, mssql और sqlsrv।
सत्र सेटिंग
आप config.php में कुछ सत्र पैरामीटर सेट कर सकते हैं (नीचे दिए गए दो उदाहरण देखें)। आप config.php में आवश्यक भाग को अनकमेंट/जोड़ सकते हैं। अन्य सेटिंग्स के लिए Yii दस्तावेज़ीकरण देखें।
टेबल-आधारित सत्र का उपयोग करें
LimeSurvey टेबल-आधारित सत्र का उपयोग कर सकता है; डिफ़ॉल्ट रूप से जनरेट हुई config.php फ़ाइल में आपको एक कमेंट किया हुआ भाग मिलेगा। टेबल-आधारित सत्र का उपयोग करने के लिए हर पंक्ति के आगे से // हटाएँ।
'session' => array (
'class' => 'application.core.web.DbHttpSession',
'connectionID' => 'db',
'sessionTableName' => '{{sessions}}',
),
अन्य सत्र अपडेट
यदि आप अपने LimeSurvey इंस्टॉलेशन के लिए SSL ('https') का उपयोग करते हैं, तो अपनी config.php में निम्नलिखित पंक्तियाँ जोड़ने से सत्र की सुरक्षा बढ़ जाएगी:
// Set the cookie via SSL
'session' => array (
'cookieParams' => array(
'secure' => true, // use SSL for cookies
'httponly' => true // Cookies may not be used by other protocols - experimental
),
),
यदि आप किसी कुकी के लिए डोमेन तय करना चाहते हैं, तो config.php में निम्नलिखित सिंटैक्स का उपयोग करें:
// Set the domain for cookie
'session' => array (
'cookieParams' => array(
'domain' => '.example.org',
),
),
यदि एक ही सर्वर पर आपके कई इंस्टॉलेशन हैं, तो हर LimeSurvey इंस्टेंस के लिए अलग सत्र नाम सेट करना अधिक तेज़ और आसान हो सकता है। कुछ परिस्थितियों में IE11 के लिए इसकी आवश्यकता पड़ सकती है (देखें issue 12083)
// Set the name of the session
'session' => array (
'sessionName' => "LimeSurveyN1",
),
रिक्वेस्ट सेटिंग्स
रिक्वेस्ट सेटिंग्स महत्वपूर्ण हैं, लेकिन डिफ़ॉल्ट सेटिंग्स पहले से ही LimeSurvey के उपयोग के लिए अनुकूलित हैं। इनके बारे में अधिक पढ़ने के लिए Yii दस्तावेज़ीकरण देखें।
उदाहरण के लिए, LimeSurvey की रिक्वेस्ट सेटिंग्स कॉन्फ़िगरेशन को इस तरह बदला जा सकता है (अपनी ज़िम्मेदारी पर) :
// Disable CSRF protection
'request' => array(
'enableCsrfValidation'=>false,
),
// Enforce a certain URL base
'request' => array(
'hostInfo' => 'http://www.example.org/'
),
// Set the cookie domain name and path for CSRF protection, path is used if you have different instance on same domain
'request' => array(
'csrfCookie' => array(
'domain' => '.example.com',
'path' => '/limesurvey/',
)
),
यदि आपको केवल टोकन ईमेल के URL को अपडेट करना है, तो अपनी config.php फ़ाइल में publicurl सेट करें।
iFrame में सत्र और CSRF सत्यापन के उपयोग की अनुमति दें
वैश्विक सुरक्षा सेटिंग्स में IFrame एम्बेडिंग की अनुमति है चालू करने से ब्राउज़र केवल आपके सर्वेक्षणों को iframe में दिखा पाते हैं। प्रतिभागी iframe के भीतर सर्वेक्षण भर सकें और सबमिट कर सकें, इसके लिए आपको नीचे बताए अनुसार config.php में सत्र और CSRF कुकी सेटिंग्स भी बदलनी होंगी। दोनों कुकी SameSite=None के साथ भेजी जानी चाहिए, जिसे ब्राउज़र केवल वैध HTTPS कनेक्शन पर ही स्वीकार करते हैं।
iframe में सत्र शुरू करने की अनुमति दें
सत्र कुकी सुरक्षित (secure) होनी चाहिए (इसके लिए वैध HTTPS कनेक्शन आवश्यक है) और httponly होनी चाहिए, तथा samesite को None पर सेट किया जाना चाहिए। cookieParams में कीज़ पूरी तरह छोटे अक्षरों (lowercase) में लिखी जानी चाहिए।
'session' => array (
'sessionName'=>'LS-VBXZZORFJZCAKGYI',
// Uncomment the following lines if you need table-based sessions.
// Note: Table-based sessions are currently not supported on MSSQL server.
// 'class' => 'application.core.web.DbHttpSession',
// 'connectionID' => 'db',
// 'sessionTableName' => '{{sessions}}',
'cookieParams' => array(
'secure' => true,
'httponly' => true,
'samesite' => 'None',
),
),
iframe में csrf कुकी की अनुमति दें
सत्र कुकी की तरह ही, CSRF कुकी भी सुरक्षित (secure) होनी चाहिए, और sameSite को None पर सेट किया जाना चाहिए। ध्यान दें कि यहाँ कुंजी sameSite इस प्रकार लिखी जाती है। पूरी request सरणी को session के समान स्तर पर जोड़ें।
'request' => array(
'enableCsrfValidation'=>true,
'csrfCookie' => array(
'sameSite' => 'None',
'secure' => true,
),
),
URL सेटिंग्स
डिफ़ॉल्ट URL सेटिंग्स बदलने के लिए urlManager को अपडेट करें:
// Use short URL
'urlManager' => array(
'urlFormat' => 'path',
'showScriptName' => false,
),
आप सर्वेक्षण आईडी के बाद .html भी इस प्रकार जोड़ सकते हैं:
// Use short URL
'urlManager' => array(
'urlFormat' => 'path',
'rules' => array (
'<sid:\d+>' => array('survey/index','urlSuffix'=>'.html','matchValue'=>true),
),
'showScriptName' => false,
),
अधिक जानकारी के लिए Yii दस्तावेज़ीकरण देखें।
लॉगिंग सेटिंग्स
Yii लॉग उत्पन्न करने के लिए विभिन्न समाधान प्रदान करता है। इनके बारे में अधिक जानने के लिए लॉगिंग विशेष विषय देखें। LimeSurvey डिफ़ॉल्ट रूप से '1' या '2' का उपयोग करता है, जिससे प्रत्येक वेब उपयोगकर्ता लॉग देख सकता है। आप Yii का सीधे उपयोग करके अपनी स्वयं की सेटिंग्स बना सकते हैं।
उदाहरण के लिए, त्रुटियों और चेतावनियों को फ़ाइलों में लॉग करने का एक त्वरित समाधान है:
return array(
'components' => array(
/* Other component part here 'db' for example */
'log' => array(
'routes' => array(
'fileError' => array(
'class' => 'CFileLogRoute',
'levels' => 'warning, error',
'except' => 'exception.CHttpException.404',
),
),
),
/* Other component part here 'urlManager' for example */
),
/* Final part (with 'runtimePath' 'config' for example) */
);
limesurvey/tmp/runtime/application.log में सहेजी जाती है, जो LimeSurvey रूट फ़ोल्डर में स्थित है।.
रनटाइम पाथ
रनटाइम पाथ “वेब उपयोगकर्ता” के लिए पढ़ने योग्य और लिखने योग्य डायरेक्टरी होनी चाहिए। हालाँकि, रनटाइम पाथ में ऐसी फ़ाइलें होती हैं जिनमें संभावित सुरक्षा संबंधी जानकारी होती है और जो सार्वजनिक वेब एक्सेस क्षेत्र में स्थित होती हैं। LimeSurvey इन फ़ाइलों को LimeSurvey रूट डायरेक्टरी की temp डायरेक्टरी में एकत्र करता है। ऐसे महत्वपूर्ण डेटा तक पहुँच को रोकने के लिए, आप /application/config/config.php फ़ाइल में संबंधित पंक्तियों को संपादित करके रनटाइम पाथ को सार्वजनिक वेब एक्सेस से बाहर सेट कर सकते हैं:
return array(
'components' => array(
[…]
'runtimePath'=>'/var/limesurvey/runtime/',
'config'=>array(
[…]
)
)
)
सामान्य सेटिंग्स
- sitename: आपकी सर्वेक्षण साइट को एक नाम देता है। यह नाम सर्वेक्षण सूची के अवलोकन और व्यवस्थापन हेडर में दिखाई देगा। डिफ़ॉल्ट मान 'LimeSurvey' है और इसे वैश्विक सेटिंग्स डायलॉग में बदला जा सकता है या config.php में संपादित किया जा सकता है।
- siteadminemail: यह साइट व्यवस्थापक का डिफ़ॉल्ट ईमेल पता है और इसका उपयोग सिस्टम संदेशों और संपर्क विकल्पों के लिए किया जाता है। इस सेटिंग का उपयोग केवल डिफ़ॉल्ट मान के रूप में किया जाता है और इसे वैश्विक सेटिंग्स डायलॉग में बदला जा सकता है।
- showEmailInError: त्रुटि पृष्ठ में mailto लिंक के लिए डिफ़ॉल्ट साइट व्यवस्थापक ईमेल (siteadminemail) का उपयोग करें। केवल व्यवस्थापक का नाम दिखाने के लिए इसे अक्षम करें। व्यवस्थापन ईमेल पर अधिक स्पैम से बचने के लिए यह डिफ़ॉल्ट रूप से अक्षम है।
- siteadminbounce: यह वह ईमेल पता है जहाँ बाउंस हुए ईमेल भेजे जाएँगे। इस सेटिंग का उपयोग केवल डिफ़ॉल्ट मान के रूप में किया जाता है और इसे वैश्विक सेटिंग्स डायलॉग द्वारा बदला जा सकता है।
- siteadminname: साइट व्यवस्थापक का वास्तविक नाम। इस सेटिंग का उपयोग केवल डिफ़ॉल्ट मान के रूप में किया जाता है और इसे वैश्विक सेटिंग्स डायलॉग में बदला जा सकता है।
- proxy_host_name: यह आपके प्रॉक्सी सर्वर का होस्ट नाम है (यदि आप प्रॉक्सी के पीछे हैं और ComfortUpdate का उपयोग करके LimeSurvey को अपडेट करना चाहते हैं, तो इसका उल्लेख करना आवश्यक है)।
- proxy_host_port: यह आपके प्रॉक्सी सर्वर का पोर्ट है (यदि आप प्रॉक्सी के पीछे हैं और ComfortUpdate का उपयोग करके LimeSurvey को अपडेट करना चाहते हैं, तो इसका उल्लेख करना आवश्यक है)।
सुरक्षा
- maxLoginAttempt: यह उन प्रयासों की संख्या है जिनमें उपयोगकर्ता को सही पासवर्ड दर्ज करना होता है, इसके बाद उसका आईपी पता ब्लॉक/लॉक कर दिया जाता है। डिफ़ॉल्ट मान 3 है और इसे config.php से बदला जा सकता है।
- timeOutTime: यदि उपयोगकर्ता <maxLoginAttempt> बार पासवर्ड गलत दर्ज करता है, तो उसे <timeOutTime> सेकंड के लिए लॉक कर दिया जाता है। डिफ़ॉल्ट मान 10 मिनट है और इसे config.php से बदला जा सकता है।
- maxLoginAttemptParticipants: यह उन प्रयासों की संख्या है जिनमें प्रतिभागी को वैध टोकन दर्ज करना होता है, इसके बाद उसका आईपी पता ब्लॉक/लॉक कर दिया जाता है। डिफ़ॉल्ट मान 3 है और इसे config.php से बदला जा सकता है।
- timeOutParticipants: यदि प्रतिभागी <maxLoginAttemptParticipants> बार टोकन गलत दर्ज करता है, तो उसे <timeOutParticipants> सेकंड के लिए लॉक कर दिया जाता है। डिफ़ॉल्ट मान 10 मिनट है और इसे config.php से बदला जा सकता है।
- surveyPreview_require_Auth: डिफ़ॉल्ट रूप से true पर सेट होता है। यदि आप इसे 'false' पर सेट करते हैं, तो कोई भी व्यक्ति व्यवस्थापन पैनल में लॉग इन किए बिना और सर्वेक्षण को पहले सक्रिय किए बिना सर्वेक्षण के यूआरएल का उपयोग करके आपके सर्वेक्षण का परीक्षण कर सकता है। यह सेटिंग एक डिफ़ॉल्ट मान है और इसे वैश्विक सेटिंग्स डायलॉग में बदला जा सकता है या config.php में संपादित किया जा सकता है।
- usercontrolSameGroupPolicy: डिफ़ॉल्ट रूप से true पर सेट होता है। डिफ़ॉल्ट रूप से, LimeSurvey प्रबंधन इंटरफ़ेस में परिभाषित गैर-व्यवस्थापक उपयोगकर्ता केवल उन्हीं उपयोगकर्ताओं को देख पाएँगे जिन्हें उन्होंने बनाया है या जो कम से कम एक समान समूह से संबंधित हैं। डिफ़ॉल्ट मान को वैश्विक सेटिंग्स डायलॉग में बदला जा सकता है या config.php में संपादित किया जा सकता है।
- demoMode: यदि config.php में इस विकल्प को 'true' पर सेट किया जाता है, तो LimeSurvey डेमो मोड में चला जाएगा। डेमो मोड निम्नलिखित चीज़ें बदलता है:
- व्यवस्थापक उपयोगकर्ता के विवरण और पासवर्ड बदलना अक्षम कर देता है;
- टेम्पलेट संपादक पर फ़ाइलों का अपलोड अक्षम कर देता है;
- ईमेल आमंत्रण और अनुस्मारक भेजना अक्षम कर देता है;
- डेटाबेस डंप बनाने की सुविधा अक्षम कर देता है;
- निम्नलिखित वैश्विक सेटिंग्स को संशोधित करने की क्षमता अक्षम कर देता है: साइट का नाम, डिफ़ॉल्ट भाषा, डिफ़ॉल्ट HTML संपादक मोड, XSS फ़िल्टर।
- forcedsuperadmin: उपयोगकर्ता आईडी की सरणी, जिनके पास पूरे LimeSurvey पर सभी अधिकार होते हैं। इस सेटिंग को केवल config.php फ़ाइल में अपडेट किया जा सकता है। इस उपयोगकर्ता के अधिकारों को किसी उपयोगकर्ता के लिए वैश्विक अनुमतियाँ में किसी अन्य forced सुपर व्यवस्थापक द्वारा भी संपादित नहीं किया जा सकता। डिफ़ॉल्ट रूप से: ये अधिकार रखने वाला उपयोगकर्ता आईडी 1 वाला उपयोगकर्ता होता है, यानी इंस्टॉलेशन के तुरंत बाद बनाया गया पहला उपयोगकर्ता।
- force_ssl: LimeSurvey को HTTPS के माध्यम से चलने के लिए बाध्य करता है या HTTPS को ब्लॉक करता है। वैश्विक सेटिंग्स के व्यवस्थापन GUI में बल https देखें।
- ssl_emergency_override: यह सेटिंग SSL को बंद करने के लिए बाध्य करती है। यदि आपने वैश्विक सेटिंग्स में HTTPS/SSL चालू किया है, लेकिन आपके सर्वर पर HTTPS सक्षम नहीं है, तो इसे बंद करने का एकमात्र तरीका डेटाबेस में सीधे कोई मान बदलना है। यह आपको Force Secure की वैश्विक सेटिंग्स बदलते समय HTTPS को बंद करने के लिए बाध्य करने की सुविधा देती है। यह हमेशा false रहना चाहिए, सिवाय आपातकालीन स्थितियों के जहाँ आप समस्या ठीक होने तक इसे true कर देते हैं। इस सेटिंग को केवल config.php फ़ाइल के माध्यम से सेट किया जा सकता है।
- ssl_disable_alert: यदि आप वास्तव में SSL को बाध्य नहीं कर सकते या नहीं करना चाहते, तो गैर-बाध्य SSL के बारे में सुपर व्यवस्थापक को दिखने वाली चेतावनी को अक्षम करें। इस सेटिंग को केवल config.php फ़ाइल के माध्यम से सेट किया जा सकता है।
- allow_unserialize_attributedescriptions: सर्वेक्षण ऑब्जेक्ट को इंपोर्ट या पढ़ते समय टोकन विशेषताओं को unserialize करने (PHP unserialize फ़ंक्शन के साथ) की अनुमति दें। टोकन विशेषताओं का डेटा JSON के रूप में सहेजा जाता है। यदि आप बहुत पुराने LimeSurvey संस्करण की सर्वेक्षण फ़ाइल इंपोर्ट करते हैं और उसकी टोकन विशेषताएँ प्राप्त करनी हैं, तो आपको यह सेटिंग सक्षम करनी होगी। चेतावनी: Unserialization के कारण ऑब्जेक्ट इंस्टेंशिएशन और ऑटोलोडिंग के माध्यम से कोड लोड और निष्पादित हो सकता है, और कोई दुर्भावनापूर्ण उपयोगकर्ता इसका फ़ायदा उठा सकता है। इस सेटिंग को केवल config.php फ़ाइल के माध्यम से सेट किया जा सकता है।
- allow_unserialize_attachments: सर्वेक्षण इंपोर्ट करते समय अटैचमेंट विशेषताओं को unserialize करने (PHP unserialize फ़ंक्शन के साथ) की अनुमति दें। limesurvey 6.16.17 में: अटैचमेंट विशेषता serialize से json_encode में स्थानांतरित हो गई। यदि पुरानी LSS फ़ाइल इंपोर्ट करते समय आपको अटैचमेंट रखना है, तो आपको इसकी अनुमति देनी होगी। चेतावनी: Unserialization के कारण ऑब्जेक्ट इंस्टेंशिएशन और ऑटोलोडिंग के माध्यम से कोड लोड और निष्पादित हो सकता है, और कोई दुर्भावनापूर्ण उपयोगकर्ता इसका फ़ायदा उठा सकता है। इस सेटिंग को केवल config.php फ़ाइल के माध्यम से सेट किया जा सकता है।
- twig_getConfig_extraallowlist: twig में getConfig फ़ंक्शन के लिए विशिष्ट तत्वों की अनुमति देता है। LimeSurvey पहले से ही सबसे अधिक आवश्यक और उपयोग की जाने वाली सेटिंग्स की अनुमति देता है, लेकिन आपको और की आवश्यकता हो सकती है। यदि आप 'securesetting' और 'anothersetting' की अनुमति देना चाहते हैं, तो इसे
['securesetting','anothersetting']पर सेट करें, इस तरह:'twig_getConfig_extraallowlist' => ['securesetting','anothersetting']। इस सेटिंग को केवल config.php फ़ाइल के माध्यम से सेट किया जा सकता है।
क्रॉस-साइट स्क्रिप्टिंग (XSS) सुरक्षा
LimeSurvey व्यवस्थापन पृष्ठ पर किसी भी उपयोगकर्ता स्क्रिप्ट की अनुमति नहीं देता। यदि आपको किसी उपयोगकर्ता द्वारा व्यवस्थापन पृष्ठ पर XSS स्क्रिप्ट जोड़ने का कोई तरीका मिलता है, तो कृपया हमारी सुरक्षा नीति देखें।
सार्वजनिक पृष्ठ की स्क्रिप्ट XSS फ़िल्टर सेटिंग्स द्वारा प्रबंधित की जाती हैं।
- filterxsshtml: यह सेटिंग व्यवस्थापन इंटरफ़ेस में सर्वेक्षणों, समूहों, प्रश्नों और उत्तर के पाठ में मौजूद संदिग्ध html टैग के फ़िल्टरिंग को सक्षम करती है। इसे केवल तभी 'false' पर रखें जब आप LimeSurvey के व्यवस्थापन के लिए बनाए गए उपयोगकर्ताओं पर पूरी तरह भरोसा करते हों और चाहते हों कि ये उपयोगकर्ता Javascript, Flash Movies आदि का उपयोग कर सकें। सुपर व्यवस्थापकों का HTML कभी फ़िल्टर नहीं किया जाता। डिफ़ॉल्ट मान को वैश्विक सेटिंग्स डायलॉग में बदला जा सकता है।
- filterxsshtml_forcedall: सभी उपयोगकर्ताओं के लिए
filterxsshtmlको true पर बाध्य करें, व्यवस्थापन GUI में अपडेट अक्षम करें। सुपर व्यवस्थापक के लिए भी संदिग्ध HTML टैग का फ़िल्टरिंग सक्षम करता है। - filterxsshtml_allowforcedsuperadmin: केवल तभी उपयोग होता है जब
filterxsshtml_forcedalltrue हो।forcedsuperadmin(डिफ़ॉल्ट रूप से व्यवस्थापक उपयोगकर्ता #1) द्वारा किसी भी स्क्रिप्ट और HTML को जोड़ने की अनुमति दें। - disablescriptwithxss: प्रश्न में स्क्रिप्ट के अपडेट की अनुमति दें: डिफ़ॉल्ट रूप से, true: XSS नियमों का पालन करें; सभी उपयोगकर्ताओं को अनुमति देने के लिए false पर सेट करें। डिफ़ॉल्ट मान को वैश्विक सेटिंग्स डायलॉग में बदला जा सकता है।
- filterxsshtml_enablescript: केवल तभी उपयोग होता है जब filterxsshtml_forcedall true हो। विशिष्ट उपयोगकर्ता के लिए प्रश्न स्क्रिप्ट सक्षम करें:
gui: GUI के माध्यम से सेटिंग अपडेट की अनुमति दें;superadmin: केवल सुपर व्यवस्थापक;forcedsuperadmin: केवल forced सुपर व्यवस्थापक; डिफ़ॉल्ट रूप से: कोई उपयोगकर्ता नहीं और GUI के माध्यम से अपडेट की अनुमति नहीं
अनुमत फ़ाइल अपलोड
- allowedthemeimageformats : थीम अनुभाग में अपलोड करने के लिए अनुमत इमेज फ़ाइल प्रकार। डिफ़ॉल्ट रूप से संभावित XSS हमले के कारण SVG फ़ाइलें अक्षम हैं।
- allowedthemeuploads : थीम अनुभाग में अपलोड करने के लिए अनुमत अन्य फ़ाइल प्रकार (zip फ़ाइल)
- allowedresourcesuploads : संसाधन अनुभागों में और HTML संपादक के साथ अपलोड करने के लिए अनुमत फ़ाइल प्रकार
- allowedpluginuploads : प्लगइन की zip फ़ाइल अपलोड करते समय अनुमत फ़ाइल प्रकार।
बस अल्पविराम से अलग किए गए एक्सटेंशन की एक स्ट्रिंग दर्ज करें। उदाहरण के लिए:
'allowedthemeimageformats' => 'jpg,jpeg,gif,png,webm,svg',
चेतावनी: फ़ाइल अपलोड की अनुमति देते समय हमेशा सावधान रहें। दुर्भावनापूर्ण गतिविधियों की आशंका हो सकती है।
प्लगइन
- usePluginWhitelist : यदि true है, तो जो प्लगइन अनुमति सूची ('pluginWhitelist' देखें) में नहीं हैं, उन्हें न तो इंस्टॉल किया जा सकता है और न ही लोड किया जा सकता है। इससे पहले से इंस्टॉल किए गए प्लगइन अक्षम हो सकते हैं।
- pluginWhitelist : प्लगइन के नामों की वह सूची जिन्हें 'usePluginWhitelist' के true होने पर इंस्टॉल और लोड करने की अनुमति है। कोर प्लगइन अपने आप अनुमति सूची में शामिल होते हैं।
- corePluginBlacklist : कोर प्लगइन के नामों की वह सूची जो 'usePluginWhitelist' के true होने पर प्रतिबंधित हैं।
- disablePluginUpload : जब यह सेटिंग true होती है, तो "Plugin Upload" सुविधा अक्षम हो जाती है।
होस्ट नियंत्रण
- allowedHosts : Host Header Injection से बचने के लिए, आप सभी क्रियाओं के लिए अनुमत होस्ट सेट कर सकते हैं। यदि आप सार्वजनिक पृष्ठ और एडमिन पृष्ठ के लिए अलग-अलग होस्ट इस्तेमाल करते हैं, तो आपको दोनों को अनुमत होस्ट के रूप में सेट करना होगा।
'config'=>array(
....
, // Update default LimeSurvey config here
'allowedHosts' => [
'survey.example.org',
'proxy.survey.example.com',
'example.limesurvey.org',
],
),
संसाधन
- iSessionExpirationTime: सेकंड में वह समय निर्धारित करता है जिसके बाद सर्वेक्षण सत्र समाप्त हो जाता है। यह केवल तभी लागू होता है जब आप डेटाबेस सत्र का उपयोग कर रहे हों। यदि आप डेटाबेस सत्र का उपयोग करते हैं, तो config.php में पैरामीटर बदलें या वैश्विक सेटिंग्स डायलॉग से डिफ़ॉल्ट मान को ओवरराइड करें।
- memory_limit: यह निर्धारित करता है कि LimeSurvey मेगाबाइट में कितनी मेमोरी का उपयोग कर सकता है। डिफ़ॉल्ट मान '256' है। यदि आपको टाइम आउट त्रुटियाँ मिलती हैं या आँकड़े बनाने या फ़ाइलें एक्सपोर्ट करने में समस्या आती है, तो इस सीमा को '512' या उससे अधिक करें। यदि आपके वेब सर्वर ने php.ini में इससे अधिक सीमा सेट की है, तो इस सेटिंग को अनदेखा कर दिया जाएगा।
मेमोरी सीमा को 128M तक बढ़ाने के लिए आप यह भी जोड़कर देख सकते हैं:
- memory_limit = 128M अपने सर्वर की मुख्य php.ini फ़ाइल में (अनुशंसित, यदि आपके पास एक्सेस है)
- memory_limit = 128M LimeSurvey रूट की php.ini फ़ाइल में
- php_value memory_limit 128M LimeSurvey रूट की .htaccess फ़ाइल में
- max_execution_time: वह सेकंड संख्या सेट करें जिसके लिए किसी स्क्रिप्ट को चलने की अनुमति है। यदि यह सीमा पूरी हो जाती है, तो स्क्रिप्ट एक घातक त्रुटि देती है। बड़े सर्वेक्षण डेटा और आँकड़े एक्सपोर्ट करने की अनुमति देने के लिए, LimeSurvey इसे डिफ़ॉल्ट रूप से 1200 सेकंड पर सेट करने का प्रयास करता है। आवश्यकता होने पर आप इससे अधिक या कम समय सेट कर सकते हैं। यह केवल php कॉन्फ़िग फ़ाइल के माध्यम से उपलब्ध है।
दिखावट
- repeatheadings: सरणी प्रश्न के प्रकार में अक्सर बहुत से उप-प्रश्न होते हैं, जो स्क्रीन पर दिखाए जाने पर एक से अधिक पृष्ठ घेर लेते हैं। यह सेटिंग आपको तय करने देती है कि प्रश्न की हेडर जानकारी दोहराने से पहले कितने उप-प्रश्न दिखाए जाएँ। इसके लिए लगभग 15 अच्छा मान है। यदि आप नहीं चाहते कि शीर्षक बिल्कुल दोहराए जाएँ, तो इसे 0 पर सेट करें। यह सेटिंग वैश्विक सेटिंग्स डायलॉग में ओवरराइड हो जाती है।
- minrepeatheadings: सरणी प्रश्नों में शीर्षक दोहराने से पहले शेष उप-प्रश्नों की न्यूनतम आवश्यक संख्या। डिफ़ॉल्ट मान 3 है और इसे config.php में संपादित किया जा सकता है।
- defaulttheme: यह सेटिंग सर्वेक्षणों की 'सार्वजनिक सूची' के लिए उपयोग की जाने वाली डिफ़ॉल्ट थीम निर्दिष्ट करती है। इस सेटिंग को वैश्विक सेटिंग्स डायलॉग में ओवरराइड किया जा सकता है या config.php में संपादित किया जा सकता है।
- defaulthtmleditormode: एकीकृत HTML संपादक के लिए डिफ़ॉल्ट मोड सेट करता है। इस सेटिंग को वैश्विक सेटिंग्स डायलॉग में ओवरराइड किया जा सकता है या config.php में संपादित किया जा सकता है। मान्य सेटिंग्स ये हैं:
- 'inline' - फ़ील्ड को इनलाइन HTML संपादक से बदलना। धीमा लेकिन सुविधाजनक और उपयोगकर्ता के अनुकूल;
- 'popup' - एक आइकन जोड़ता है जो आवश्यकता होने पर HTML संपादक को पॉपअप में चलाता है। तेज़, लेकिन फ़ॉर्म में HTML कोड दिखाई देता है;
- 'none'- कोई HTML संपादक नहीं;
- column_style: display_columns का उपयोग करते समय सर्वेक्षण के उत्तरों के लिए कॉलम कैसे रेंडर किए जाएँ, यह तय करता है। इसे config.php फ़ाइल में संपादित किया जा सकता है। मान्य सेटिंग्स ये हैं:
- 'css' - कॉलम बनाने के लिए विभिन्न CSS तरीकों में से एक का उपयोग करता है (विवरण के लिए टेम्पलेट स्टाइल शीट देखें);
- 'ul' - कॉलम को कई फ़्लोटेड अक्रमबद्ध सूचियों के रूप में रेंडर किया जाता है (डिफ़ॉल्ट);
- 'table' - पारंपरिक टेबल-आधारित लेआउट का उपयोग करता है;
- NULL - कॉलम का उपयोग अक्षम करता है।
भाषा और समय
- defaultlang: इसे उस डिफ़ॉल्ट भाषा पर सेट किया जाना चाहिए जिसका उपयोग आपकी एडमिन स्क्रिप्ट में होगा, और यह सार्वजनिक सर्वेक्षण सूची में भाषा की डिफ़ॉल्ट सेटिंग भी है। इस सेटिंग को वैश्विक सेटिंग्स डायलॉग में ओवरराइड किया जा सकता है या config.php में संपादित किया जा सकता है।
- timeadjust: यदि आपका वेब सर्वर उस स्थान से अलग समय क्षेत्र में है जहाँ आपके सर्वेक्षण आधारित होंगे, तो यहाँ अपने सर्वर और अपने स्थानीय समय क्षेत्र का अंतर डालें। उदाहरण के लिए, मैं ऑस्ट्रेलिया में रहता हूँ, लेकिन मैं अमेरिकी वेब सर्वर का उपयोग करता हूँ। वेब सर्वर मेरे स्थानीय समय क्षेत्र से 14 घंटे पीछे है। इसलिए यहाँ मेरी सेटिंग "14" है। दूसरे शब्दों में, यह वेब सर्वर के समय में 14 घंटे जोड़ता है। यह सेटिंग विशेष रूप से तब महत्वपूर्ण है जब सर्वेक्षण प्रतिक्रियाओं पर टाइमस्टैम्प लगाते हैं। इस सेटिंग को वैश्विक सेटिंग्स डायलॉग में ओवरराइड किया जा सकता है या config.php में संपादित किया जा सकता है।
सर्वेक्षण का व्यवहार
- deletenonvalues: इस सुविधा का उपयोग सावधानी से करें। डिफ़ॉल्ट रूप से (मान 1), असंगत प्रश्नों को डेटाबेस में NULL कर दिया जाता है। इससे यह सुनिश्चित होता है कि आपके डेटाबेस का डेटा आंतरिक रूप से सुसंगत रहे। फिर भी, कुछ दुर्लभ मामले होते हैं जहाँ आप असंगत मानों को रखना चाह सकते हैं, तब आप मान को 0 पर सेट कर सकते हैं। उदाहरण के लिए, आप किसी पुरुष से उसका लिंग पूछते हैं, और वह गलती से 'महिला' चुन लेता है और फिर महिलाओं से संबंधित कुछ प्रश्नों के उत्तर देता है (ऐसे प्रश्न जो महिला होने की शर्त पर निर्भर हैं, इसलिए केवल महिलाओं के लिए प्रासंगिक हैं)। फिर उसे अपनी गलती का एहसास होता है, वह पीछे जाता है, लिंग को 'पुरुष' पर सेट करता है, और सर्वेक्षण जारी रखता है। अब महिलाओं से संबंधित प्रश्न असंगत हैं। यदि
$deletenonvalues==1है, तो वे असंगत मान डेटाबेस में साफ़ (NULL) कर दिए जाएँगे। यदि$deletenonvalues==0है, तो उसके गलत उत्तर डिलीट नहीं किए जाएँगे, इसलिए आपके विश्लेषण करते समय वे डेटाबेस में मौजूद रहेंगे। - shownoanswer: जब संपादन योग्य उत्तरों वाला रेडियो बटन/चयन प्रकार का प्रश्न (जैसे: सूची, सरणी प्रश्न) अनिवार्य नहीं है और 'shownoanswer' को 1 पर सेट किया गया है, तो एक अतिरिक्त 'कोई जवाब नहीं' प्रविष्टि दिखाई जाती है - ताकि प्रतिभागी प्रश्न का उत्तर न देने का विकल्प चुन सकें। कुछ लोग इसे उपलब्ध न कराना पसंद करते हैं। इस सेटिंग को वैश्विक सेटिंग्स डायलॉग से ओवरराइड किया जा सकता है या config.php में संपादित किया जा सकता है। मान्य मान हैं:
- '0': नहीं;
- '1': हां;
- '2': सर्वेक्षण एडमिन चुन सकता है।
- printanswershonorsconditions: यह सेटिंग तय करती है कि printanswers सुविधा उन प्रश्नों की प्रविष्टियाँ दिखाएगी या नहीं जो शर्त-शाखाकरण द्वारा छिपाए गए थे (डिफ़ॉल्ट: 1 = शर्तों द्वारा छिपाए गए प्रश्नों के उत्तर छिपाएँ)।
- showpopups: यदि अनिवार्य या सशर्त प्रश्नों के उत्तर सही ढंग से नहीं दिए गए हैं तो पॉपअप संदेश दिखाएँ:
- '2' = थीम विकल्प द्वारा निर्धारित (डिफ़ॉल्ट)
- '1'= पॉपअप संदेश दिखाएँ;
- '0'= इसके बजाय पृष्ठ पर संदेश दिखाएँ;
- '-1'= संदेश बिल्कुल न दिखाएँ (इस स्थिति में, उपयोगकर्ता को फिर भी प्रश्न-विशिष्ट सुझाव दिखाई देंगे जो बताते हैं कि किन प्रश्नों का उत्तर देना आवश्यक है)।
संख्यात्मक प्रश्न के प्रकार का व्यवहार
- bFixNumAuto: संख्यात्मक फ़ील्ड को स्वचालित रूप से फ़िल्टर किया जा सकता है ताकि सभी गैर-संख्यात्मक मान हटा दिए जाएँ। डिफ़ॉल्ट रूप से यह सक्षम है, आप इसे वैश्विक रूप से अक्षम कर सकते हैं। यह सेटिंग कोर थीम विकल्प में संख्यात्मक मान स्वचालित रूप से ठीक करें से संबंधित है। यह हां के लिए सक्षम, एक्सप्रेशन के लिए और नहीं के लिए अक्षम था।
- bNumRealValue: एक्सप्रेशन मैनेजर में उपयोग किए जाने वाले संख्यात्मक फ़ील्ड को ठीक किया जा सकता है या नहीं। यह डिफ़ॉल्ट रूप से ठीक किया जाता है। यदि NUMERIC एक संख्यात्मक प्रश्न है: अक्षम या 0 : गलत वर्णों वाला {NUMERIC} '' भेजता है, सक्षम या 1 : {NUMERIC} दर्ज किए गए सभी वर्ण भेजता है। यह सेटिंग कोर थीम विकल्प में संख्यात्मक मान स्वचालित रूप से ठीक करें से संबंधित है। यह हां और एक्सप्रेशन के लिए के लिए सक्षम और नहीं के लिए अक्षम था।
विकास और डिबगिंग
- debug: इस सेटिंग से आप PHP त्रुटि रिपोर्टिंग को E_ALL पर सेट करते हैं। इसका अर्थ है कि स्क्रिप्ट से संबंधित हर छोटी सूचना, चेतावनी या त्रुटि दिखाई जाती है। इस सेटिंग को केवल तभी '1' पर करना चाहिए जब आप किसी कारण से एप्लिकेशन को डिबग करने का प्रयास कर रहे हों। यदि आप डेवलपर हैं, तो इसे '2' पर करें। प्रोडक्शन में इसे '1' या '2' पर न करें, क्योंकि इससे पाथ का खुलासा हो सकता है। डिफ़ॉल्ट मान '0' है और इसे config.php में संपादित किया जा सकता है।
- debugsql: यदि आप स्क्रिप्ट के लिए चलाई गई सभी SQL क्वेरी को हर पृष्ठ के नीचे दिखाना चाहते हैं तो इस सेटिंग को सक्रिय करें। क्वेरी की संख्या को अनुकूलित करने के लिए बहुत उपयोगी। इसे सक्रिय करने के लिए config.php फ़ाइल में डिफ़ॉल्ट मान को '1' में बदलें।
- use_asset_manager: डिफ़ॉल्ट रूप से, डिबग मोड asset manager को अक्षम कर देता है; आप डिबग मोड सक्षम होने पर भी asset manager का उपयोग करने की अनुमति दे सकते हैं।
यदि आपको एप्लिकेशन में कोई त्रुटि मिलती है, तो हम दृढ़ता से अनुशंसा करते हैं कि डिबग सेटिंग को सक्रिय करें ताकि आपको अधिक विस्तृत त्रुटि मिल सके जिसे आप बग रिपोर्ट के साथ सबमिट कर सकें:
'config'=>array(
'debug'=>2,
'debugsql'=>0,
)
यदि आप प्लगइन पर काम करते हैं और स्क्रीन पर वेरिएबल दिखाने का त्वरित तरीका चाहिए: तो आप traceVar फ़ंक्शन का उपयोग कर सकते हैं। यदि debug सेट है: तो यह फ़ंक्शन HTML पृष्ठ पर दिखाने के लिए CWebLogRoute का उपयोग करता है। उपयोग traceVar($MyVariable)
ईमेल सेटिंग्स
नीचे दी गई सभी सेटिंग्स को वैश्विक सेटिंग्स डायलॉग में ओवरराइड किया जा सकता है।
- 'emailmethod: यह निर्धारित करता है कि ईमेल संदेश कैसे भेजे जाते हैं। निम्नलिखित विकल्प उपलब्ध हैं:
- 'mail:' यह आंतरिक PHP मेलर का उपयोग करता है;
- 'sendmail:' यह sendmail मेलर का उपयोग करता है;
- 'smtp:' यह SMTP रिले का उपयोग करता है। इस सेटिंग का उपयोग तब करें जब आप LimeSurvey को ऐसे होस्ट पर चला रहे हों जो आपका मेल सर्वर नहीं है।
- 'emailsmtphost: यदि आप
$emailmethodके रूप में 'smtp' का उपयोग करते हैं, तो आपको यहाँ अपना SMTP-सर्वर डालना होगा। यदि आप Google mail का उपयोग कर रहे हैं, तो आपको पोर्ट नंबर भी जोड़ना पड़ सकता है, जैसे $emailsmtphost = 'smtp.gmail.com:465'। - emailsmtpuser: यदि आपके SMTP-सर्वर को प्रमाणीकरण की आवश्यकता है, तो इसे अपने उपयोगकर्ता के नाम पर सेट करें, अन्यथा यह खाली होना चाहिए।
- emailsmtppassword: यदि आपके SMTP-सर्वर को प्रमाणीकरण की आवश्यकता है, तो इसे अपने पासवर्ड पर सेट करें, अन्यथा यह खाली होना चाहिए।
- emailsmtpssl: SMTP कनेक्शन के लिए SSL/TLS का उपयोग करने हेतु इसे 'ssl' या 'tls' पर सेट करें।
- maxemails: सर्वेक्षण के प्रतिभागियों को आमंत्रण या अनुस्मारक भेजते समय, यह सेटिंग यह तय करने के लिए उपयोग की जाती है कि एक बार में कितने ईमेल भेजे जा सकते हैं। अलग-अलग वेब सर्वरों की ईमेल क्षमता अलग-अलग होती है और यदि आपकी स्क्रिप्ट ईमेल का एक समूह भेजने में बहुत अधिक समय लेती है, तो स्क्रिप्ट टाइम आउट हो सकती है और त्रुटियाँ पैदा कर सकती है। अधिकांश वेब सर्वर PHP स्क्रिप्ट की डिफ़ॉल्ट 30 सेकंड की समय सीमा के भीतर एक बार में 100 ईमेल भेज सकते हैं। यदि बड़ी संख्या में ईमेल भेजते समय आपको स्क्रिप्ट टाइमआउट त्रुटियाँ मिलती हैं, तो इस सेटिंग में संख्या घटा दें। टोकन नियंत्रण टूलबार से 'ईमेल निमंत्रण भेजें' बटन पर क्लिक करने (प्रत्येक टोकन के दाईं ओर स्थित बटन नहीं) पर <maxemails> संख्या के निमंत्रण भेजे जाते हैं, फिर यह प्राप्तकर्ताओं के पतों की सूची और यह चेतावनी दिखाता है कि एक बैच में भेजे जा सकने वाले ईमेल से अधिक ईमेल लंबित हैं। नीचे क्लिक करके ईमेल भेजना जारी रखें। अभी ### ईमेल भेजने बाकी हैं। और अगले बैच पर जाने के लिए एक "जारी रखें बटन" देता है। यानी, हर बैच के ईमेल भेजे जाने के बाद अगला बैच कब भेजना है, यह उपयोगकर्ता तय करता है। इस स्क्रीन को सक्रिय रखकर प्रतीक्षा करना आवश्यक नहीं है। एडमिन लॉग आउट करके बाद में वापस आ सकता है और आमंत्रणों का अगला बैच भेज सकता है।
आँकड़े और प्रतिक्रिया ब्राउज़िंग
- filterout_incomplete_answers: प्रतिक्रियाओं को ब्राउज़ या विश्लेषित करते समय अधूरे उत्तरों को फ़िल्टर करने का डिफ़ॉल्ट व्यवहार नियंत्रित करता है। अधूरी प्रतिक्रियाओं के बारे में जानकारी के लिए हमारा सर्वेक्षण परिणाम ब्राउज़ करने वाला विकी देखें। चूँकि ये रिकॉर्ड आँकड़ों को बिगाड़ सकते हैं, इसलिए कई GUI फ़ॉर्म में इस फ़िल्टर को चालू या बंद करने का विकल्प दिया गया है। इस पैरामीटर को config.php में संपादित किया जा सकता है। निम्नलिखित विकल्प उपलब्ध हैं:
- 'all': आपको पूर्ण और अधूरे, दोनों उत्तर देखने की सुविधा देता है;
- 'complete': यह केवल पूर्ण उत्तर दिखाता है;
- 'incomplete': केवल अधूरे उत्तर दिखाता है।
- strip_query_from_referer_url: यह सेटिंग तय करती है कि संदर्भ URL पैरामीटर को सहेजता है या नहीं। डिफ़ॉल्ट मूल्य 'false' है (इस स्थिति में संदर्भ URL सभी पैरामीटर सहेजता है)। वैकल्पिक रूप से, इस मान को 'true' पर सेट किया जा सकता है, तब संदर्भ URL का पैरामीटर वाला भाग हटा दिया जाएगा।
- showaggregateddata: सक्रिय होने पर, गणित का मतलब और मानक विचलन जैसे अतिरिक्त सांख्यिकीय मान दिखाए जाते हैं। इसके अलावा, तेज़ अवलोकन के लिए डेटा को एकत्रित किया जाता है। उदाहरण के लिए, स्केल 1+2 और 4+5 के परिणाम जोड़ दिए जाते हैं ताकि "अच्छा" (1/2), "औसत" (3) और "खराब" (4/5) जैसी सामान्य रैंकिंग मिल सके। यह केवल प्रश्न प्रकार "A" (5 बिंदु सरणी) और "5" (5 बिंदु वाले विकल्प) को प्रभावित करता है।
- PDF निर्यात सेटिंग: यह सुविधा प्रिंट करने योग्य सर्वेक्षणों और उत्तर प्रिंट करें के लिए PDF निर्यात सक्रिय करती है। PDF निर्यात फ़ंक्शन पूरी तरह प्रायोगिक है और इसका आउटपुट पूर्ण से बहुत दूर है। दुर्भाग्य से, फ़िलहाल कोई सहायता नहीं दी जा सकती - यदि आप इसे ठीक करने में मदद करना चाहते हैं, तो कृपया हमसे संपर्क करें।
- 'pdfdefaultfont': यह वह डिफ़ॉल्ट फ़ॉन्ट है जिसका उपयोग PDF निर्यात फ़ंक्शन करेगा। डिफ़ॉल्ट मूल्य 'auto' है। इसे बदलने के लिए, आपको इसे PDF कोर फ़ॉन्ट में से किसी एक पर सेट करना होगा।
- 'alternatepdffontfile': यह भाषा कुंजियों और उनके संबंधित फ़ॉन्ट की एक सरणी है। प्रत्येक भाषा के डिफ़ॉल्ट फ़ॉन्ट को config.php फ़ाइल में बदला जा सकता है;
- 'pdffontsize': यह सामान्य टेक्स्ट के लिए फ़ॉन्ट आकार दिखाता है; सर्वेक्षण के शीर्षक के लिए यह <pdffontsize>+4 है, जबकि समूह शीर्षक के लिए <pdffontsize>+2 है। इसे config.php फ़ाइल में या वैश्विक सेटिंग्स डायलॉग से संपादित किया जा सकता है।
- ग्राफ़ सेटिंग
- 'chartfontfile': सांख्यिकीय चार्ट बनाने के लिए उपयोग की जाने वाली फ़ॉन्ट फ़ाइल का नाम सेट करता है। फ़ाइल LimeSurvey रूट फ़ोल्डर में स्थित fonts डायरेक्टरी में होनी चाहिए। इसे config.php फ़ाइल में संपादित किया जा सकता है;
- 'alternatechartfontfile': यह भाषा कुंजियों और उनके संबंधित फ़ॉन्ट की एक सरणी है। इसे config.php फ़ाइल में संपादित किया जा सकता है।
- showsgqacode: इस सेटिंग का उपयोग प्रिंट करने योग्य सर्वेक्षण सुविधा में होता है और इसका डिफ़ॉल्ट मूल्य 'false है। यदि आप showsgqacode = 'true'; सेट करते हैं, तो प्रत्येक प्रश्न - और यदि लागू हो तो उत्तर - की ID दिखाई जाएगी। ये ID Lime_survey_12345 तालिका के कॉलम शीर्षक से मेल खाती हैं, जिसमें किसी निश्चित सर्वेक्षण का उत्तर डेटा होता है। इन ID का उपयोग मैन्युअल डेटाबेस क्वेरी के लिए कोड बुक के रूप में किया जा सकता है।
LDAP सेटिंग
चूँकि यह एक विस्तृत विषय है, हमने LDAP सेटिंग को दूसरे पृष्ठ पर स्थानांतरित कर दिया है।
प्रमाणीकरण
प्रमाणीकरण प्लगइन द्वारा संभाला जाता है। नीचे दी गई सेटिंग वेबसर्वर प्रमाणीकरण प्लगइन द्वारा उपयोग की जाती हैं, देखें प्रमाणीकरण प्लगइन।
वेबसर्वर को प्रमाणीकरण सौंपना
सिस्टम प्रशासक चाह सकते हैं कि उनके सर्वेक्षण प्रशासकों को LimeSurvey के आंतरिक डेटाबेस के बजाय किसी केंद्रीय प्रमाणीकरण प्रणाली (Active Directory, openLdap, Radius, ...) के विरुद्ध प्रमाणित किया जाए। ऐसा करने का एक आसान तरीका यह है कि अपने वेब सर्वर सॉफ़्टवेयर को इस बाहरी प्रमाणीकरण प्रणाली का उपयोग करने के लिए सेट करें, और फिर LimeSurvey से वेब सर्वर द्वारा बताई गई उपयोगकर्ता पहचान पर भरोसा करने को कहें। इस सुविधा को सक्षम करने के लिए, आपको यह करना होगा:
- विन्यास > प्लगइन में Webserver प्लगइन को सक्रिय करें और प्लगइन सेटिंग में वह सर्वर कुंजी सेट करें जिसमें उपयोगकर्ता नाम है (डिफ़ॉल्ट: REMOTE_USER);
- वेब सर्वर की ओर से प्रमाणीकरण सक्षम करें।
कृपया ध्यान दें:
- LimeSurvey तब अपनी स्वयं की प्रमाणीकरण प्रक्रिया को छोड़ देगा (वेब सर्वर द्वारा बताए गए लॉगिन नाम का उपयोग करके, पासवर्ड माँगे बिना);
- यह केवल LimeSurvey GUI प्रमाणीकरण प्रणाली को बदल सकता है, सर्वेक्षण आमंत्रण प्रणाली को नहीं (प्रतिभागी इंटरफ़ेस)।
स्वचालित उपयोगकर्ता इंपोर्ट के बिना प्रमाणीकरण सौंपना
कृपया ध्यान दें कि प्रमाणीकरण सौंपना डिफ़ॉल्ट रूप से LimeSurvey की प्राधिकरण प्रणाली को दरकिनार नहीं करता - यानी, भले ही आपको LimeSurvey में पासवर्ड प्रबंधित न करने पड़ें, फिर भी आपको उपयोगकर्ताओं को LimeSurvey डेटाबेस में परिभाषित करना होगा और उन्हें प्रशासन पैनल तक पहुँचने देने के लिए अधिकारों का सही सेट देना होगा।
तब किसी उपयोगकर्ता को LimeSurvey तक पहुँच केवल तभी मिलती है जब:
- वह वेब सर्वर पर प्रमाणित हो चुका हो;
- उसका लॉगिन नाम LimeSurvey उपयोगकर्ता डेटाबेस में उपयोगकर्ता के रूप में परिभाषित हो (तब उपयोगकर्ता को LimeSurvey उपयोगकर्ता डेटाबेस में परिभाषित उपयोगकर्ता के विशेषाधिकार दिए जाते हैं);
- उसके पास वैश्विक अनुमति वेब सर्वर प्रमाणीकरण इस्तेमाल करें हो।
स्वचालित उपयोगकर्ता इंपोर्ट के साथ प्रमाणीकरण सौंपना
बहुत बड़े उपयोगकर्ता डेटाबेस को प्रबंधित करते समय, कभी-कभी उपयोगकर्ताओं को LimeSurvey डेटाबेस में स्वतः इंपोर्ट करना आसान होता है:
- auth_webserver_autocreate_user: यदि 'true' पर सेट हो, तो LimeSurvey उन उपयोगकर्ताओं को स्वतः इंपोर्ट करने का प्रयास करेगा जो वेब सर्वर द्वारा प्रमाणित हैं लेकिन उसके उपयोगकर्ता डेटाबेस में पहले से नहीं हैं।
- auth_webserver_autocreate_profile: एक सरणी जो उपयोगकर्ता को दी जाने वाली डिफ़ॉल्ट प्रोफ़ाइल का वर्णन करती है: पूरा (नकली) नाम, ईमेल और भाषा।
- auth_webserver_autocreate_permissions: एक सरणी जिसमें वे वैश्विक अनुमतियाँ होती हैं जो उपयोगकर्ता को दी जाएँगी।
यदि आप उपयोगकर्ता प्रोफ़ाइल को इस तरह अनुकूलित करना चाहते हैं कि वह लॉग-इन उपयोगकर्ता से मेल खाए, तो आपको config.php में hook_get_auth_webserver_profile नामक एक सरल फ़ंक्शन विकसित करना होगा - इस फ़ंक्शन से आप किसी केंद्रीय उपयोगकर्ता खाता डेटाबेस (उदाहरण के लिए, LDAP डायरेक्टरी) से किसी विशेष उपयोगकर्ता का वास्तविक पूरा नाम, ईमेल और भाषा प्राप्त कर सकते हैं।
hook_get_auth_webserver_profile फ़ंक्शन उपयोगकर्ता का लॉगिन नाम एकमात्र तर्क के रूप में लेता है और यह लौटा सकता है:
- False या एक खाली सरणी - इस स्थिति में उपयोगकर्ता को LimeSurvey तक पहुँच से वंचित कर दिया जाता है;
- एक सरणी जिसमें
auth_webserver_autocreate_profileजैसी ही प्रविष्टियाँ हों।
function hook_get_auth_webserver_profile($user_name)
{
// Retrieve user's data from your database backend (for instance LDAP) here
// ... get $user_name_from_backend
// ... get $user_email_from_backend
// ... get $user_lang_from_backend
return array(
'full_name' => $user_name_from_backend,
'email' => $user_email_from_backend,
'lang' => $user_lang_from_backend,
);
}
// If user should be denied access, return an empty array
// return array();
उपयोगकर्ता नाम मैपिंग
यदि कुछ उपयोगकर्ताओं का बाहरी उपयोगकर्ता नाम उनके LimeSurvey उपयोगकर्ता नाम से भिन्न है, तो उपयोगकर्ता नाम मैपिंग का उपयोग करना उपयोगी हो सकता है। LimeSurvey में यह auth_webserver_user_map पैरामीटर का उपयोग करके किया जाता है। उदाहरण के लिए, मान लीजिए आपके बाहरी प्रमाणीकरण डेटाबेस में 'admin' उपयोगकर्ता नाम परिभाषित नहीं है। तब, LimeSurvey में admin के रूप में लॉगिन करने के लिए, आपको अपने बाहरी उपयोगकर्ता नाम (मान लें 'myname') को LimeSurvey के admin लॉगिन नाम से मैप करना होगा। इसके लिए संबंधित सेटअप यह है:
'config'=>array(
...
'auth_webserver_user_map' => array ('myname' => 'admin');
)
'myname' लॉगिन और वेब सर्वर पासवर्ड के साथ सफल प्रमाणीकरण के बाद, आपको सीधे 'admin' उपयोगकर्ता के रूप में LimeSurvey का उपयोग करने की अनुमति मिल जाएगी।
इसके गंभीर सुरक्षा निहितार्थ हैं, इसलिए इसका उपयोग सावधानी से करें। साथ ही, अपनी config.php को वेब सर्वर द्वारा लिखे जाने से सुरक्षित रखें।
वन-टाइम पासवर्ड का उपयोग करें
कोई उपयोगकर्ता default.com/limesurvey/admin पर LimeSurvey लॉगिन पृष्ठ खोल सकता है और उपयोगकर्ता नाम तथा वह वन-टाइम पासवर्ड दर्ज कर सकता है जिसे किसी बाहरी एप्लिकेशन ने पहले users तालिका (कॉलम one_time_pw) में लिखा था।
वन-टाइम पासवर्ड के उपयोग को सक्षम करने के लिए इस सेटिंग को config.php फ़ाइल में चालू करना होगा (डिफ़ॉल्ट = false)।
'config'=>array(
'debug'=>0,
'debugsql'=>0,
'use_one_time_passwords'=>true,
)
अधिक जानकारी "उपयोगकर्ता प्रबंधित करें" अनुभाग में मिल सकती है।
एन्क्रिप्शन सेटिंग
application/config/security.php फ़ाइल में सेट किए गए थे। आप चाहें तो इन सेटिंग को config.php में ले जा सकते हैं या security.php में ही रहने दे सकते हैं।इस सुविधा के विवरण के लिए डेटा एन्क्रिप्शन देखें।
- encryptionkeypair
- encryptionpublickey
- encryptionsecretkey
- encryptionnonce
- encryptionsecretboxkey
उन्नत URL सेटिंग
- publicurl: इसे आपकी 'पब्लिक स्क्रिप्ट' के URL स्थान पर सेट किया जाना चाहिए। पब्लिक स्क्रिप्ट वे होती हैं जो "limesurvey" फ़ोल्डर में स्थित होती हैं (या उस डायरेक्टरी में जिसे आपने कोई भी नाम दिया हो और जिसमें अन्य सभी स्क्रिप्ट और डायरेक्टरी रखी गई हैं)। यह सेटिंग config.php में उपलब्ध है और इसका उपयोग तब किया जाता है जब LimeSurvey को पूर्ण URL की आवश्यकता होती है (उदाहरण के लिए, जब टोकन ईमेल भेजे जाते हैं)।
- tempurl: इसे आपकी "/limesurvey/tmp" डायरेक्टरी के URL स्थान पर सेट किया जाना चाहिए - या ऐसी डायरेक्टरी पर जिसे आप LimeSurvey द्वारा अस्थायी फ़ाइलें उपलब्ध कराने के लिए उपयोग करना चाहते हैं।
- uploadurl: इसे आपकी "/limesurvey/upload" डायरेक्टरी के URL स्थान पर सेट किया जाना चाहिए - या ऐसी डायरेक्टरी पर जिसे आप LimeSurvey द्वारा अपलोड की गई फ़ाइलें उपलब्ध कराने के लिए उपयोग करना चाहते हैं। इससे आप अपलोड की गई फ़ाइलों को किसी दूसरे URL डोमेन पर सेट कर सकते हैं।
एडवांस पाथ सेटिंग
- homedir: इसे आपकी एडमिनिस्ट्रेशन स्क्रिप्ट के भौतिक डिस्क स्थान पर सेट किया जाना चाहिए - उदाहरण के लिए "/home/usr/htdocs/limesurvey/admin"। इस प्रविष्टि के अंत में स्लैश न जोड़ें। config.php में डिफ़ॉल्ट सेटिंग php वेरिएबल सेटिंग
{$_SERVER['DOCUMENT_ROOT']}का उपयोग करके आपके सभी दस्तावेज़ों का डिफ़ॉल्ट रूट पाथ पता लगाने का प्रयास करती है। ज़्यादातर मामलों में आप इसे वैसा ही छोड़ सकते हैं और इस स्ट्रिंग के शेष भाग को उस डायरेक्टरी के नाम के अनुसार बदल सकते हैं जिसमें आपने LimeSurvey स्क्रिप्ट रखी हैं। - publicdir: इसे आपकी 'पब्लिक स्क्रिप्ट' के भौतिक डिस्क स्थान पर सेट किया जाना चाहिए।
- tempdir: इसे आपकी /limesurvey/tmp डायरेक्टरी के भौतिक डिस्क स्थान पर सेट किया जाना चाहिए ताकि स्क्रिप्ट फ़ाइलें पढ़ और लिख सके।
- uploaddir: इसे आपकी /limesurvey/upload डायरेक्टरी के भौतिक डिस्क स्थान पर सेट किया जाना चाहिए ताकि स्क्रिप्ट फ़ाइलें पढ़ और लिख सके।
- sCKEditorURL: CKEditor स्क्रिप्ट का URL।
अन्य एडवांस सेटिंग
फ़ाइलें अपलोड करें
- magic_database: finfo_open के लिए किसी भिन्न MIME डेटाबेस के उपयोग की अनुमति देता है। इसे केवल config.php फ़ाइल में अपडेट किया जा सकता है। उदाहरण: redhat आधारित लिनक्स के लिए
/usr/share/misc/magic.mgc। - magic_file: MIME प्रकार के अनुसार एक्सटेंशन की सरणी प्राप्त करने के लिए शामिल फ़ाइल के बजाय किसी दूसरी फ़ाइल के उपयोग की अनुमति देता है। यह एक PHP फ़ाइल होनी चाहिए जो सरणी लौटाए। इसे केवल config.php फ़ाइल में अपडेट किया जा सकता है।
अपडेट
- updatable: यह सेटिंग version.php में है। यह true या false हो सकती है। यदि आप इसे true पर सेट करते हैं: जब कोई सुपर एडमिन उपयोगकर्ता लॉग इन करता है, तो LimeSurvey जाँचता है कि कोई अपडेट उपलब्ध है या नहीं और आपको चेतावनी दिखाता है। यदि इसे false पर सेट किया जाए: कोई जाँच नहीं की जाती और आप सुविधा अद्यतन का उपयोग नहीं कर सकते।
टोकन
- allowedcharacters_pattern_token : ये सेटिंग टोकन को फ़िल्टर करते समय regexp पैटर्न सेट करने की अनुमति देती हैं।