x

Үндсэн бүлгүүд

  1. LimeSurvey Cloud ба LimeSurvey CE-ийн харьцуулалт
  2. LimeSurvey Cloud - Хурдан эхлэх гарын авлага
  3. Суулгалт - LimeSurvey CE
  4. Сайн судалгааг хэрхэн зохиох вэ (гарын авлага)
  5. Эхлэх нь
  6. LimeSurvey-г удирдах
  7. Судалгаа - танилцуулга
  8. Судалгааны тохируулга
  9. Судалгааны цэс
  10. Судалгааны бүтэц
  11. Асуултууд - танилцуулга
  12. Асуултын бүлэг - танилцуулга
  13. Судалгаа - удирдлага
  14. Судалгааны хэрэгслийн самбарын сонголтууд
  15. Олон хэлтэй судалгаа
  16. ExpressionScript Engine - Хурдан эхлэх гарын авлага
  17. Ангилагдаагүй болон нарийвчилсан боломжууд
  18. Түгээмэл асуултууд
  19. Алдаа засварлах
  20. Түр шийдлүүд
  21. Лиценз
  22. Хувилбарын өөрчлөлтүүдийн жагсаалт
  23. Плагинууд
 Actions

Нэмэлт тохиргоо

From LimeSurvey Manual

Энэ хуудсыг машинаар орчуулсан байж магадгүй тул алдаа агуулж болзошгүй. Англи эх хувийг харах · Энэ орчуулгыг сайжруулах
This page is a translated version of the page Optional settings and the translation is 100% complete.

Дараах хэсэг нь LimeSurvey суулгацын GUI (График хэрэглэгчийн интерфейс)-ээр өөрчлөх боломжгүй тохиргооны тохиргоонуудыг засахыг хүссэн хүмүүст зориулагдсан. LimeSurvey үндсэн директороос хийсэн бүх өөрчлөлтийг өөрийн эрсдэлээр хийдгийг анхаарна уу. Хэрэв танд асуудал гарвал эсвэл нэмэлт зөвлөгөө хэрэгтэй бол LimeSurvey нийгэмлэгийн тусламж авахын тулд хэлэлцүүлгийн форумд нэгдээрэй.

Танилцуулга

Суулгацын тохиргооны тохиргоог өөрчлөхийн тулд нэмэлт тохиргоог засах шаардлагатай. Тэдгээрийг LimeSurvey үндсэн директорт байрлах /application/config/config-defaults.php файлаас олох боломжтой. Стандарт суулгацын үндсэн тохиргоо config-defaults.php файлд байдаг. Тэдгээрийн зарим нь ерөнхий тохиргоо цонхоор дарагдаж болох бөгөөд бусдыг нь гараар засах шаардлагатай.

  Хэрэв та эдгээр тохиргоог өөрчлөхийг хүсвэл config-defaults.php файлд өөрчлөлт хийхгүй, харин тухайн тохиргоо/мөрийг /application/config/config.php файлын 'config'=>array( ) хэсэгт хуулж, тэнд өөрчилнө үү. config.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 framework-г ашигладаг бөгөөд үүний өөрийн тохиргооны параметрүүд application/config/internal.php болон application/config/config.php файлд байдаг. Мөн та Yii тохиргоогоор дамжуулан LimeSurvey-ийн зарим тусгай тохиргоонд хандах боломжтой.

config.php дахь хүснэгт нь бүх тохиргоотой нэгтгэгддэг тул config.php файлд Yii-ийн дурын параметрийг солих боломжтой.

Yii-ийн тусгай тохиргоог components хүснэгтэд тохируулдаг:

    'components' => array(
        'db' => array(
            ....
        ),
        'Specific settings'=>array(
            ....
        ),
    ),
Yii framework-ийн талаар дэлгэрэнгүй мэдээллийг дараах холбоосоор үзнэ үү.

Өгөдлийн сангийн тохиргоо

Өгөдлийн сангийн тохиргоог LimeSurvey-г анх суулгахад суулгагч файл config.php руу бичдэг. Шаардлагатай бол config.php файлын энэ хэсгийг шинэчилж болно. Үүнийг өөрийн эрсдэлээр хийдгийг санаарай! Мөн Yii баримт бичиг-ийг үзнэ үү. LimeSurvey нь зөвхөн дараах төрлийн өгөгдлийн санг дэмждэг: mysql, pgsql, dblib, mssql, sqlsrv.

Сессийн тохиргоо

Та config.php файлд сессийн зарим параметрийг тохируулж болно (доорх хоёр жишээг харна уу). Шаардлагатай хэсгийг config.php файлд коммент болгосныг арилгаж/нэмж болно. Бусад тохиргооны хувьд Yii баримт бичиг-ийг үзнэ үү.

  Хэрэв нэг домэйн дээр хэд хэдэн LimeSurvey суулгац ажиллуулж байгаа бол тус бүрт нь өөр сессийн нэр өгнө үү. Сессийн cookie-н зам эсвэл CSRF cookie-н тохиргоог өөрчлөх шаардлагагүй.


Хүснэгтэд суурилсан сессийг ашиглах

LimeSurvey нь хүснэгтэд суурилсан сессийг ашиглаж болно. Үүсгэсэн анхдагч config.php файлд коммент болгосон хэсэг байдаг. Хүснэгтэд суурилсан сессийг ашиглахын тулд мөр бүрийн өмнөх // тэмдгийг устгана уу.

        'session' => array (
            'class' => 'application.core.web.DbHttpSession',
            'connectionID' => 'db',
            'sessionTableName' => '{{sessions}}',
        ),
  Хүснэгтэд суурилсан сессийг одоогоор MSSQL серверт дэмждэггүй.


Бусад сессийн шинэчлэлт

Хэрэв та 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
                ),
            ),

Хэрэв cookie-н домайныг тогтмол болгохыг хүсвэл config.php файлд дараах синтаксийг ашиглана уу:

        // Set the domain for cookie
        'session' => array (
            'cookieParams' => array(
                    'domain' => '.example.org',
                ),
            ),

Нэг домэйн дээрх LimeSurvey суулгац бүр өөрийн сессийн нэртэй байх шаардлагатай. Эс бөгөөс нэг суулгац руу нэвтрэхэд нөгөөгөөсөө гарах болно. Суулгагч config.php файлд санамсаргүй сессийн нэр тохируулдаг. Хэрэв та config.php файлыг өөр суулгацаас хуулсан бол эсвэл таны config.php LimeSurvey 4.0-ээс эхний хувилбараас гаралтай бол одоо байгаа session хэсэгт sessionName мөрийг нэмж эсвэл өөрчилж, суулгац бүрт өөр утга ашиглана уу:

        // Set the name of the session
        'session' => array (
            'sessionName' => 'LS-ABCDEFGHIJKLMNOP',
            ),

Request тохиргоо

Request тохиргоо чухал боловч үндсэн тохиргоо нь LimeSurvey-н хэрэглээнд аль хэдийн оновчтой болгогдсон. Тэдгээрийн талаар дэлгэрэнгүй унших бол Yii баримт бичиг-ийг үзнэ үү.

Жишээлбэл, LimeSurvey-н request тохиргоог дараах байдлаар өөрчилж болно (өөрийн эрсдэлээр) :

        // 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
        'request' => array(
            'csrfCookie' => array( 
                'domain' => '.example.com',
                'path' => '/limesurvey/',
            )
        ),

Хэрэв зөвхөн token имэйлийн URL-г шинэчлэх шаардлагатай бол config.php файлдаа publicurl-г тохируулна уу.


iFrame дотор сесс болон CSRF баталгаажуулалтыг ашиглахыг зөвшөөрөх

аюулгүй байдлын ерөнхий тохиргоо-нд IFrame оруулахыг зөвшөөрсөн тохиргоог асаах нь зөвхөн хөтчүүдэд таны судалгааг iframe дотор харуулахыг зөвшөөрнө. Оролцогчид iframe дотор судалгааг бөглөж илгээх боломжтой байхын тулд доор тайлбарласны дагуу config.php файл дахь сесс болон CSRF cookie-н тохиргоог мөн өөрчлөх шаардлагатай. Хоёр cookie-г SameSite=None-тэй илгээх ёстой бөгөөд хөтчүүд үүнийг зөвхөн хүчинтэй HTTPS холболтоор хүлээн авдаг.

  Эдгээр бүх тохиргоотой байсан ч iframe доторх судалгаа зарим хөтөч эсвэл хөтчийн зарим тохиргоотой үед, жишээлбэл хувийн хөтлөлтийн горимд эсвэл гуравдагч талын cookie-г хаасан үед ажиллахгүй байж болно. Эдгээр тохиргоог Firefox 81.0.2-оос 115, Chromium 85.0.4183.121-ээс 119 болон Edge 119-ийн анхдагч тохиргоотойгоор туршсан. LimeSurvey энэ тохиргоонд дэмжлэг үзүүлдэггүй, зөвхөн нийгэмлэгийн дэмжлэг боломжтой.


iframe дотор сесс эхлүүлэхийг зөвшөөрөх

Сессийн күүки аюулгүй (хүчинтэй HTTPS холболт шаардлагатай) болон httponly байх ёстой бөгөөд samesite нь None гэж тохируулагдсан байх ёстой. cookieParams доторх түлхүүрүүдийг бүгдийг нь жижиг үсгээр бичих ёстой.

 		 '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 күүки аюулгүй байх ёстой бөгөөд sameSite нь None гэж тохируулагдсан байх ёстой. Энд түлхүүрийг sameSite гэж бичдэгийг анхаарна уу. Бүх request хүснэгтийг session-тэй ижил түвшинд нэмнэ үү.

		'request' => array(
			'enableCsrfValidation'=>true,
			'csrfCookie' => array(
				'sameSite' => 'None',
				'secure' => true,
			),
		),

URL тохиргоо

  Хэрэв та токен болон бусад имэйлийн зөвхөн URL-г өөрчлөх шаардлагатай бол config.php файлдаа publicurl-ийг тохируулна уу.


Үндсэн URL тохиргоог өөрчлөхийн тулд urlManager-ийг шинэчилнэ үү:

       // Use short URL
		'urlManager' => array(
			'urlFormat' => 'path',
			'showScriptName' => false,
		),


Мөн судалгааны ID-ийн дараа .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) */
);
 Hint: Файл анхдагчаар LimeSurvey-ийн үндсэн хавтсанд байрлах limesurvey/tmp/runtime/application.log руу хадгалагдана.
  Yii нь runtime замыг ашигладаг. Анхдагчаар логууд вэбээр нээгдэх боломжтой байдаг бөгөөд таны серверийн талаарх маш их мэдээлэл агуулж болзошгүй. Вэбээр хандах боломжгүй хавтсыг ашиглах нь дээр. Та үүнийг routes дотор тохируулах эсвэл Runtime зам-ыг шинэчлэх замаар тохируулж болно.

.

Runtime зам

Runtime зам нь “вэб хэрэглэгч”-ийн хувьд унших болон бичих боломжтой хавтас байх ёстой. Гэсэн хэдий ч runtime зам нь олон нийтэд нээлттэй вэб хандалтын хэсэгт байрлах аюулгүй байдлын мэдээлэл агуулж болзошгүй файлуудыг агуулдаг. LimeSurvey эдгээр файлуудыг LimeSurvey-ийн үндсэн хавтасны temp хавтсанд цуглуулдаг. Ийм чухал өгөгдөлд хандахыг хаахын тулд та /application/config/config.php файлын холбогдох мөрүүдийг засварлан runtime замыг олон нийтийн вэб хандалтаас гадна тохируулж болно:

 
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: Хэрэглэгч зөв нууц үгээ оруулах оролдлогын тоо бөгөөд үүнээс хэтэрвэл түүний IP хаяг хаагдана/түгжигдэнэ. Үндсэн утга нь 3 бөгөөд config.php-ээс өөрчилж болно.
  • timeOutTime: Хэрэглэгч нууц үгээ <maxLoginAttempt> удаа буруу оруулбал <timeOutTime> секундын турш түгжигдэнэ. Үндсэн утга нь 10 минут бөгөөд config.php-ээс өөрчилж болно.
  • maxLoginAttemptParticipants: Оролцогч хүчинтэй токен оруулах оролдлогын тоо бөгөөд үүнээс хэтэрвэл түүний IP хаяг хаагдана/түгжигдэнэ. Үндсэн утга нь 3 бөгөөд config.php-ээс өөрчилж болно.
  • timeOutParticipants: Оролцогч токеноо <maxLoginAttemptParticipants> удаа буруу оруулбал <timeOutParticipants> секундын турш түгжигдэнэ. Үндсэн утга нь 10 минут бөгөөд config.php-ээс өөрчилж болно.
  • surveyPreview_require_Auth: Үндсэнээр true гэж тохируулагдсан. Хэрэв үүнийг 'false' болговол хэн ч удирдлагын самбарт нэвтрэхгүйгээр, мөн судалгааг эхлээд идэвхжүүлэхгүйгээр судалгааны URL ашиглан судалгааг турших боломжтой болно. Энэ тохиргоо нь үндсэн утга бөгөөд ерөнхий тохиргоо цонхноос дарж бичих эсвэл config.php дээр засварлаж болно.
  • usercontrolSameGroupPolicy: Үндсэнээр true гэж тохируулагдсан. Үндсэнээр LimeSurvey-ийн удирдлагын интерфэйст тодорхойлогдсон админ бус хэрэглэгчид зөвхөн өөрсдийн үүсгэсэн хэрэглэгчид эсвэл дор хаяж нэг ижил бүлэгт харьяалагдах хэрэглэгчдийг л харах боломжтой. Үндсэн утгыг ерөнхий тохиргоо цонхноос дарж бичих эсвэл config.php дээр засварлаж болно.
  • demoMode: Хэрэв энэ сонголтыг config.php дээр 'true' гэж тохируулсан бол LimeSurvey демо горимд орно. Демо горим дараах зүйлсийг өөрчилдөг:
    • Админ хэрэглэгчийн дэлгэрэнгүй мэдээлэл болон нууц үгийн өөрчлөлтийг идэвхгүй болгоно;
    • Загвар засварлагч дээр файл байршуулахыг идэвхгүй болгоно;
    • Имэйл урилга болон сануулга илгээхийг идэвхгүй болгоно;
    • Өгөгдлийн сангийн dump үүсгэхийг идэвхгүй болгоно;
    • Дараах ерөнхий тохиргоог өөрчлөх боломжийг идэвхгүй болгоно: сайтын нэр, үндсэн хэл, HTML засварлагчийн үндсэн горим, XSS шүүлтүүр.
  • forcedsuperadmin: LimeSurvey дээрх бүх эрхтэй хэрэглэгчийн ID-ийн хүснэгт. Энэ тохиргоог зөвхөн config.php файлд шинэчилж болно. Энэ хэрэглэгчийн эрхийг хэрэглэгчийн ерөнхий эрх хэсэгт, тэр байтугай өөр forced super administrator ч гэсэн засварлах боломжгүй. Үндсэнээр энэ эрхтэй хэрэглэгч нь ID нь 1 байх хэрэглэгч, өөрөөр хэлбэл суулгасны дараа шууд үүсгэгдсэн анхны хэрэглэгч юм.
  • force_ssl: LimeSurvey-г HTTPS-ээр ажиллуулахыг эсвэл HTTPS-г хаахыг албадна. Админы GUI дахь ерөнхий тохиргооны HTTPS хүчин чадал-ыг үзнэ үү.
  • ssl_emergency_override: Энэ тохиргоо нь SSL-г албадан унтраана. Хэрэв та ерөнхий тохиргоонд HTTPS/SSL-г асаасан боловч таны сервер HTTPS-ийг идэвхжүүлээгүй бол үүнийг унтраах цорын ганц арга нь өгөгдлийн сан дахь утгыг шууд өөрчлөх явдал юм. Энэ нь Force Secure-ийн ерөнхий тохиргоог өөрчлөх хооронд HTTPS-г албадан унтраах боломжийг олгоно. Асуудлыг засах хүртэл true болгож тохируулдаг онцгой байдлаас бусад тохиолдолд энэ нь үргэлж false байх ёстой. Энэ тохиргоог зөвхөн config.php файлаар тохируулах боломжтой.
  • ssl_disable_alert: Хэрэв та SSL-г албадаж чадахгүй эсвэл албадахыг хүсэхгүй бол албадаагүй SSL-ийн талаарх супер админд харуулах сэрэмжлүүлгийг идэвхгүй болгоно. Энэ тохиргоог зөвхөн config.php файлаар тохируулах боломжтой.
  • allow_unserialize_attributedescriptions: Судалгааны объектыг импортлох эсвэл унших үед токены шинж чанаруудыг (PHP unserialize функцээр) unserialize хийхийг зөвшөөрнө. Токены шинж чанарын өгөгдөл JSON хэлбэрээр хадгалагддаг. Хэрэв та маш хуучин LimeSurvey хувилбарын судалгааны файлыг импортолж, түүний токены шинж чанаруудыг авах шаардлагатай бол энэ тохиргоог идэвхжүүлэх ёстой. Анхааруулга: Unserialization нь объект үүсгэх болон autoloading-ээс шалтгаалан код ачаалагдаж, ажиллахад хүргэж болзошгүй бөгөөд хортой хэрэглэгч үүнийг ашиглаж магадгүй.. Энэ тохиргоог зөвхөн config.php файлаар тохируулах боломжтой.
  • allow_unserialize_attachments: Судалгааг импортлох үед хавсралтын шинж чанаруудыг (PHP unserialize функцээр) unserialize хийхийг зөвшөөрнө. limesurvey 6.16.17-д: хавсралтын шинж чанар serialize-аас json_encode руу шилжсэн. Хэрэв хуучин LSS файлыг импортлоход хавсралтыг хадгалах шаардлагатай бол үүнийг зөвшөөрөх хэрэгтэй. Анхааруулга: Unserialization нь объект үүсгэх болон autoloading-ээс шалтгаалан код ачаалагдаж, ажиллахад хүргэж болзошгүй бөгөөд хортой хэрэглэгч үүнийг ашиглаж магадгүй. Энэ тохиргоог зөвхөн config.php файлаар тохируулах боломжтой.
  • twig_getConfig_extraallowlist: twig дэх getConfig функцэд тодорхой элементийг зөвшөөрөхөд ашиглана. LimeSurvey хамгийн их шаардлагатай, түгээмэл ашиглагддаг тохиргоонуудыг аль хэдийн зөвшөөрсөн боловч танд илүү их хэрэгтэй байж болно. Хэрэв та 'securesetting' болон 'anothersetting'-ийг зөвшөөрөхийг хүсвэл үүнийг ['securesetting','anothersetting'] гэж тохируулна, жишээ нь 'twig_getConfig_extraallowlist' => ['securesetting','anothersetting']. Энэ тохиргоог зөвхөн config.php файлаар тохируулах боломжтой.

Cross-site scripting (XSS) хамгаалалт

LimeSurvey удирдлагын хуудсан дээр хэрэглэгчийн ямар ч скриптийг зөвшөөрдөггүй. Хэрэв та ямар нэг хэрэглэгч удирдлагын хуудсанд XSS скрипт нэмэх арга олсон бол манай Security Policy-г үзнэ үү.

Олон нийтийн хуудасны скриптүүдийг XSS шүүлтүүрийн тохиргоогоор удирддаг.

  • filterxsshtml: Энэ тохиргоо нь удирдлагын интерфэйс дэх судалгаа, бүлэг, асуулт болон хариултын текст доторх сэжигтэй html таг-уудыг шүүхийг идэвхжүүлнэ. Хэрэв та LimeSurvey-ийн удирдлагад үүсгэсэн хэрэглэгчдэдээ бүрэн итгэдэг бөгөөд эдгээр хэрэглэгчдэд Javascript, Flash Movies гэх мэтийг ашиглахыг зөвшөөрөхийг хүсвэл л үүнийг 'false' гэж үлдээнэ үү. Супер админуудын HTML хэзээ ч шүүгдэхгүй. Үндсэн утгыг ерөнхий тохиргоо цонхноос дарж бичиж болно.
  • filterxsshtml_forcedall: filterxsshtml-ийг бүх хэрэглэгчийн хувьд true болгож албадан, админы GUI дахь өөрчлөлтийг идэвхгүй болгоно. Супер админы хувьд ч сэжигтэй HTML таг-уудын шүүлтийг идэвхжүүлнэ.
  • filterxsshtml_allowforcedsuperadmin: Зөвхөн filterxsshtml_forcedall нь true үед ашиглагдана. forcedsuperadmin (үндсэнээр админ хэрэглэгч #1)-д ямар ч скрипт болон HTML нэмэхийг зөвшөөрнө.
  • disablescriptwithxss: Асуулт дахь скриптийг шинэчлэхийг зөвшөөрнө: үндсэнээр true бол XSS дүрмийг дагана; бүх хэрэглэгчид зөвшөөрөхийн тулд false болгоно. Үндсэн утгыг ерөнхий тохиргоо цонхноос дарж бичиж болно.
  • filterxsshtml_enablescript: Зөвхөн filterxsshtml_forcedall нь true үед ашиглагдана. Тодорхой хэрэглэгчийн хувьд асуултын скриптийг идэвхжүүлнэ: gui: GUI-аар тохиргоог шинэчлэхийг зөвшөөрнө; superadmin: зөвхөн супер админ; forcedsuperadmin: зөвхөн forced superadmin; үндсэнээр: хэрэглэгч байхгүй бөгөөд GUI-аар шинэчлэхийг зөвшөөрөхгүй

Файл байршуулахыг зөвшөөрөх

  • allowedthemeimageformats : Загварын хэсэгт байршуулахыг зөвшөөрсөн зургийн файлын төрлүүд. Үндсэнээр SVG файлыг XSS халдлагын боломжит эрсдэлээс болж идэвхгүй болгосон.
  • 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-ийн төрөл бүрийн аргуудын аль нэгийг ашиглана (дэлгэрэнгүйг загварын style sheet-ээс үзнэ үү);
    • 'ul' - баганууд олон float-той эрэмбэлэгдээгүй жагсаалт хэлбэрээр дүрслэгдэнэ (үндсэн);
    • '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-ийг ашиглахыг зөвшөөрч болно.

Хэрэв та аппликейшнд алдаатай тулгарвал алдааны тайланд хавсаргах илүү дэлгэрэнгүй алдаа авахын тулд debug тохиргоог идэвхжүүлэхийг хүчтэй зөвлөж байна:

    'config'=>array(
        'debug'=>2,
        'debugsql'=>0,
    )

Хэрэв та плагин дээр ажиллаж байгаа бөгөөд хувьсагчдыг дэлгэц дээр хурдан харуулах арга хэрэгтэй бол traceVar функцийг ашиглаж болно. Хэрэв debug тохируулагдсан бол энэ функц CWebLogRoute-г ашиглан HTML хуудсанд харуулна. Хэрэглээ: traceVar($MyVariable)

Email тохиргоонууд

Доорх бүх тохиргоог ерөнхий тохиргооны цонхонд дарж бичиж болно.

  • 'emailmethod: Энэ нь цахим шуудангийн мессежийг хэрхэн илгээхийг тодорхойлно. Дараах сонголтууд байна:
    • 'mail:' PHP-ийн дотоод mailer-ийг ашиглана;
    • 'sendmail:' sendmail mailer-ийг ашиглана;
    • 'smtp:' SMTP relay ашиглана. 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-д вэб серверийн мэдээлсэн хэрэглэгчийн нэрийг итгэхийг зөвшөөрөх явдал юм. Энэ боломжийг идэвхжүүлэхийн тулд дараахыг хийнэ:

  • Configuration > Plugins хэсэгт 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();
  The optionnal 'hook_get_auth_webserver_profile' функц нь зөвхөн ахисан түвшний хэрэглэгчдэд зориулагдсан! Дэлгэрэнгүй мэдээллийг config-defaults.php файлын тайлбараас уншина уу.


Хэрэглэгчийн нэрийн харгалзуулалт

Зарим хэрэглэгчдийн гадаад хэрэглэгчийн нэр нь LimeSurvey дээрх хэрэглэгчийн нэрээс өөр байвал хэрэглэгчийн нэрийн харгалзуулалтыг ашиглах нь хэрэгтэй. Үүнийг LimeSurvey дээр auth_webserver_user_map параметрээр хийдэг. Жишээлбэл, таны гадаад баталгаажуулалтын өгөгдлийн санд 'admin' хэрэглэгчийн нэр байхгүй гэж бодъё. Тэгвэл LimeSurvey-д admin-аар нэвтрэхийн тулд гадаад хэрэглэгчийн нэрээ (үүнийг 'myname' гэе) LimeSurvey дээрх admin нэвтрэх нэртэй харгалзуулах шаардлагатай. Харгалзах тохиргоо нь:

'config'=>array(
...
'auth_webserver_user_map' => array ('myname' => 'admin');
)

'myname' нэвтрэх нэр болон вэб серверийн нууц үгээр амжилттай баталгаажсаны дараа та LimeSurvey-ийг 'admin' хэрэглэгчээр шууд ашиглах эрхтэй болно.

Энэ нь аюулгүй байдалд ноцтой нөлөө үзүүлдэг тул болгоомжтой ашиглана уу. Мөн config.php файлаа вэб серверийн бичих эрхээс хамгаална уу.

Нэг удаагийн нууц үг ашиглах

Хэрэглэгч default.com/limesurvey/admin хаягаар LimeSurvey-ийн нэвтрэх хуудсыг нээж, хэрэглэгчийн нэр болон гадаад програмаар хэрэглэгчдийн хүснэгтэд (one_time_pw багана) өмнө нь бичигдсэн Нэг удаагийн нууц үгийг оруулж болно.

Нэг удаагийн нууц үгийг ашиглахын тулд энэ тохиргоог config.php файлд асаах шаардлагатай (үндсэн утга = false).

    'config'=>array(
        'debug'=>0,
        'debugsql'=>0,
        'use_one_time_passwords'=>true,
    )

Дэлгэрэнгүй мэдээллийг "Хэрэглэгчдийг удирдах" хэсгээс үзнэ үү.


Шифрлэлтийн тохиргоо

  Анхааруулга : Шифрлэлтийн түлхүүрийг нэг тохируулсны дараа хэзээ ч өөрчилж болохгүй, эс тэгвээс бүх шифрлэгдсэн өгөгдөл алга болж болзошгүй!


Шинэчлэх эсвэл суулгах үед эдгээр параметрүүдийг LimeSurvey үүсгэж 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-д ашиглуулахыг хүсч буй директорийн URL байршилд тохируулах ёстой.
  • uploadurl: Үүнийг таны "/limesurvey/upload" директорийн URL байршилд эсвэл байршуулсан файлуудыг түгээхэд LimeSurvey-д ашиглуулахыг хүсч буй директорийн URL байршилд тохируулах ёстой. Энэ нь байршуулсан файлуудыг өөр 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 суурьтай linux-д зориулсан /usr/share/misc/magic.mgc.
  • magic_file: MIME төрлөөр өргөтгөлүүдийн хүснэгтийг авахдаа орсон файл-аас өөр файл ашиглах боломжийг олгоно. Хүснэгт буцаадаг PHP файл байх ёстой. Зөвхөн config.php файлд шинэчилж болно.

Шинэчлэлт

  • updatable: Энэ тохиргоо version.php файлд байдаг. true эсвэл false байж болно. true гэж тохируулбал супер админ хэрэглэгч нэвтрэх үед LimeSurvey шинэчлэлт байгаа эсэхийг шалгаж, анхааруулга харуулна. false гэж тохируулбал шалгалт хийгдэхгүй бөгөөд ComfortUpdate-г ашиглах боломжгүй.

Токенууд

  • allowedcharacters_pattern_token : Эдгээр тохиргоо нь токеныг шүүх үед regexp загварыг тохируулах боломжийг олгоно.