Actions

Optional settings/bg: Difference between revisions

From LimeSurvey Manual

(Created page with "<syntaxhighlight lang="php" enclose="pre">!Н! 'config'=>array( 'debug'=>2, 'debugsql'=>0, ) </syntaxhighlight>")
(Updating to match new version of source page)
 
(42 intermediate revisions by 2 users not shown)
Line 116: Line 116:




==Разрешете използването на анкети във вградена рамка==
==Разрешаване на използване на сесия и Csrf валидиране в iFrame {{NewIn|v=3.24.3}}==


След разрешаване на [[Global_settings#Security|вграждане на Iframe]] 100% надеждно решение може да бъде гарантирано само ако сайтът за рамкиране използва същия основен домейн. Ако използвате LimeSurvey Cloud, това може да се постигне чрез [https://www.limesurvey.org/support/faq/37-limesurvey-cloud/499-what-is-domain-aliasing-and-why-do-i- нужда от псевдоним на домейн]
<div class="mw-translate-fuzzy">
След като разрешите [[Global_settings#Security|вграждане на Iframe]], трябва да актуализирате част от конфигурацията. Внимание, дори и с всички настройки: разрешаването на формуляр в iframe може да се повреди в някои браузъри. Тези настройки бяха тествани с Firefox 81.0.2 и Chromium 85.0.4183.121.
</div>
 
{{Alert|Attention, even with all settings : allow form in iframe can broke on some browser or with user specific settings. This settings was tested with Firefox 81.0.2 to 115 and Chromium 85.0.4183.121 to 119, and119 Edge with default settings. '''No support on this feature, only community support'''.}}
 
===Разрешаване на стартиране на сесия в iframe===
 
Сесията трябва да е защитена (валиден https), само httponly и същия сайт към None. Всички настройки трябва да бъдат зададени на малки букви.
 
<syntaxhighlight lang="php" enclose="pre">'session' => array (
'sessionName'=>'LS-VBXZZORFJZCAKGYI',
// Разкоментирайте следните редове, ако имате нужда от базирани на таблици сесии.
// Забележка: Базираните на таблици сесии са в момента не се поддържа на MSSQL сървър.
// 'class' => 'application.core.web.DbHttpSession',
// 'connectionID' => 'db',
// 'sessionTableName' = > '{{sessions}}',
'cookieParams' => array(
'secure' => true,
'httponly' => true,
'samesite' => 'Няма' ,
),
),
</syntaxhighlight>
 
===Разрешаване на csrf бисквитка в iframe===
 
<div class="mw-translate-fuzzy">
Същото като сесията: трябва да е защитено и същият сайт да е зададен на Няма. Целият масив трябва да бъде добавен на същото ниво като сесията.
</div>
 
<syntaxhighlight lang="php" enclose="pre">'request' => array(
'enableCsrfValidation'=>true,
'csrfCookie' => array(
'sameSite' => 'None',
'secure' => true,
),
),
</syntaxhighlight>


==URL настройки==
==URL настройки==
Line 282: Line 320:
Ако работите върху плъгин и се нуждаете от бърз начин за изхвърляне на променливи на екрана: можете да използвате функцията traceVar. Ако е зададено отстраняване на грешки: тази функция използва CWebLogRoute, за да бъде показана на HTML страница. Използване <code>traceVar($MyVariable)</code>
Ако работите върху плъгин и се нуждаете от бърз начин за изхвърляне на променливи на екрана: можете да използвате функцията traceVar. Ако е зададено отстраняване на грешки: тази функция използва CWebLogRoute, за да бъде показана на HTML страница. Използване <code>traceVar($MyVariable)</code>


= Email settings=
= Настройки за имейл=


All the settings from below can be overridden in the [[Global settings|global settings]] dialog.
Всички настройки отдолу могат да бъдат заменени в диалоговия прозорец [[Глобални настройки|глобални настройки]].
*'''emailmethod:'' This determines how email messages are being sent. The following options are available:
*''''emailmethod:'' Това определя как се изпращат имейл съобщенията. Налични са следните опции:
**'mail:' it uses internal PHP mailer;
**'mail:' използва вътрешен PHP имейл;
**'sendmail:' it uses sendmail mailer;
**'sendmail:' използва sendmail имейл;
**'smtp:' it uses SMTP relaying. Use this setting when you are running LimeSurvey on a host that is not your mail server.
**'smtp:' използва SMTP препредаване. Използвайте тази настройка, когато изпълнявате LimeSurvey на хост, който не е вашият мейл сървър.
*'''emailsmtphost:'' If you use 'smtp' as <code>$emailmethod</code>, then you have to put your SMTP-server here. If you are using Google mail you might have to add the port number like $emailsmtphost = 'smtp.gmail.com:465'.
*'''emailsmtphost:'' Ако използвате 'smtp' като <code>$emailmethod</code> , тогава трябва да поставите вашия SMTP сървър тук. Ако използвате Google Mail, може да се наложи да добавите номера на порта като $emailsmtphost = 'smtp.gmail.com:465'.
*''emailsmtpuser:'' If your SMTP-server needs authentication then set this to your user name, otherwise it must be blank.
*''emailsmtpuser:'' Ако вашият SMTP сървър се нуждае от удостоверяване, задайте това на вашия потребителско име, в противен случай трябва да е празно.
*''emailsmtppassword:'' If your SMTP-server needs authentication then set this to your password, otherwise it must be blank.
*''emailsmtppassword:'' Ако вашият SMTP-сървър се нуждае от удостоверяване, задайте това на вашата парола, в противен случай трябва да е празно.
*''emailsmtpssl:'' Set this to 'ssl' or 'tls' to use SSL/TLS for SMTP connection.
*''emailsmtpssl:'' Задайте това на 'ssl' или 'tls' за използване на SSL/TLS за SMTP връзка.
*''maxemails:'' When sending invitations or reminders to survey participants, this setting is used to determine how many emails can be sent in one bunch. Different web servers have different email capacities and if your script takes too long to send a bunch of emails, the script could time out and cause errors. Most web servers can send 100 emails at a time within the default 30 second time limit for a PHP script. If you get script timeout errors when sending large numbers of emails, reduce the number in this setting. Clicking the 'send email invitation' button from the token control toolbar (not the button situated on the right of each token) sends the <maxemails> number of invitations, then it displays a list of the addresses of the recipients and a warning that ''there are more emails pending than could be sent in one batch. Continue sending emails by clicking below. There are ### emails still to be sent.'' and provides a "continue button" to proceed with the next batch. I.e., the user determines when to send the next batch after each batch gets emailed. It is not necessary to wait with this screen active. The admin could log out and come back at a later time to send the next batch of invites.
*''maxemails:'' Когато изпращате покани или напомняния на участниците в проучването, тази настройка се използва, за да определи колко имейла могат да бъдат изпратени в един куп. Различните уеб сървъри имат различен капацитет за имейли и ако вашият скрипт отнема твърде много време, за да изпрати куп имейли, скриптът може да изтече и да причини грешки. Повечето уеб сървъри могат да изпратят 100 имейла наведнъж в рамките на ограничението от 30 секунди по подразбиране за PHP скрипт. Ако получавате грешки при изчакване на скрипта, когато изпращате голям брой имейли, намалете броя в тази настройка. Щракването върху бутона „изпращане на имейл покана“ от лентата с инструменти за управление на токени (а не върху бутона, разположен вдясно на всеки токен) изпраща<maxemails> брой покани, след което показва списък с адресите на получателите и предупреждение, че „има повече чакащи имейли, отколкото могат да бъдат изпратени в една група. Продължете да изпращате имейли, като щракнете по-долу. Все още има ### имейла за изпращане.'' и предоставя „бутон за продължаване“, за да продължите със следващата група. Т.е. потребителят определя кога да изпрати следващата партида, след като всяка партида бъде изпратена по имейл. Не е необходимо да чакате с активен екран. Администраторът може да излезе и да се върне по-късно, за да изпрати следващата група покани.


= Statistics and response browsing=
= Преглед на статистики и отговори=
*'''filterout_incomplete_answers:''' Control the default behavior of filtering incomplete answers when browsing or analyzing responses. For a discussion on incomplete responses see our [[Responses & statistics#Responses summary|browsing survey results wiki]]. Since these records can corrupt the statistics, an option is given to switch this filter on or off in several GUI forms. The parameter can be edited in the config.php. The following options are available:
*'''filterout_incomplete_answers:''' Контролирайте поведението по подразбиране за филтриране на непълни отговори при разглеждане или анализиране на отговорите. За дискусия относно непълните отговори вижте нашата [[Отговори и статистика#Резюме на отговорите|уики за резултати от проучване за сърфиране]]. Тъй като тези записи могат да повредят статистиката, е дадена опция за включване или изключване на този филтър в няколко GUI форми. Параметърът може да се редактира в config.php. Налични са следните опции:
**'show': Allows you to visualize both complete and incomplete answers;
**'show': Позволява ви да визуализирате както пълни, така и непълни отговори;
**'filter': It shows only complete answers;
**'filter': Показва само пълни отговори;
**'incomplete': Show only incomplete answers.
**'incomplete': Показване само непълни отговори.
*'''strip_query_from_referer_url''': This setting determines if the referrer URL saves the parameter or not. The default value is 'false' (in this case, the referrer URL saves all parameters). Alternatively, this value can be set to 'true' and the parameter part of the referrer URL will be removed.
*''strip_query_from_referer_url''': Тази настройка определя дали URL адресът за препращане запазва параметъра или не. Стойността по подразбиране е „false“ (в този случай URL адресът на референта запазва всички параметри). Като алтернатива, тази стойност може да бъде зададена на „истина“ и частта от параметъра на препоръчания URL адрес ще бъде премахната.
*'''showaggregateddata:''' when activated, additional statistical values such as the arithmetic mean and standard deviation are shown. Furthermore, the data is aggregated to get a faster overview. For example, results of scale 1+2 and 4+5 are added to have a general ranking like "good" (1/2), "average" (3) and "bad" (4/5). This only affects question types  "A" (5 point array) and "5" (5 point choice).
*''''showaggregateddata:'''', когато е активирана, се показват допълнителни статистически стойности, като средно аритметично и стандартно отклонение показано. Освен това данните се обобщават, за да се получи по-бърз преглед. Например, резултатите от скала 1+2 и 4+5 се добавят, за да имат общо класиране като "добър" (1/2), "среден" (3) и "лош" (4/5). Това засяга само типовете въпроси "A" (масив от 5 точки) и "5" (избор от 5 точки).
* '''PDF Export Settings:''' This feature activates PDF export for printable surveys and Print Answers. The PDF export function is totally experimental and the output is far from being perfect. Unfortunately, no support can be given at the moment - if you want to help to fix it, please get in touch with us.
* '''Настройки за експортиране на PDF:''' Тази функция активира експортиране на PDF за анкети за печат и за печат на отговори. Функцията за експортиране на PDF е напълно експериментална и резултатът далеч не е перфектен. За съжаление, в момента не може да бъде предоставена поддръжка - ако искате да помогнете за отстраняването му, моля, свържете се с нас.
**'usepdfexport': Set '0' to disable and '1' to enable;
**'usepdfexport': Задайте '0', за да деактивирате, и '1', за да активирате;
**'pdfdefaultfont': It represents the default font that will be used by the pdf export function. The default value is 'auto'. To change it, you have to set it to one of the [https://tcpdf.org/docs/fonts/ PDF core fonts].  
**'pdfdefaultfont': Той представлява шрифта по подразбиране, който ще се използва от функцията за експортиране на pdf. Стойността по подразбиране е „автоматично“. За да го промените, трябва да го зададете на един от [https://tcpdf.org/docs/fonts/ PDF основните шрифтове].  
**'alternatepdffontfile': It's an array with language keys and their corresponding font. The default font for each language can be replaced in the config.php file;
**'alternatepdffontfile': Това е масив с езикови ключове и съответния им шрифт. Шрифтът по подразбиране за всеки език може да бъде заменен във файла config.php;
**'pdffontsize': it shows the font size for normal texts; For the title of the survey, it is <pdffontsize>+4, while for the group title is <pdffontsize>+2. It can be edited in the config.php file or from the [Global settings|global settings]] dialog;
**'pdffontsize': показва размера на шрифта за нормални текстове; За заглавието на анкетата е<pdffontsize> +4, докато за заглавието на групата е<pdffontsize> +2. Може да се редактира във файла config.php или от диалоговия прозорец [Глобални настройки|глобални настройки]];
**'notsupportlanguages': it includes a list with the languages for which no PDF font was found. The list includes Amharic ('am'), Sinhala ('si'), and Thai ('th'), and it can be found in the config-defaults.php file;
**'notsupportlanguages': включва списък с езиците, за които не е намерен PDF шрифт. Списъкът включва амхарски ('am'), сингалски ('si') и тайландски ('th') и може да бъде намерен във файла config-defaults.php;
**'pdforientation': Set 'L' for Landscape or 'P' for portrait format. It can be edited from the config.php file.
**'pdforientation': Set ' L' за пейзаж или 'P' за портретен формат. Може да се редактира от файла config.php.
*'''Graph setting'''
*'''Graph setting'''
**'chartfontfile': Sets the font file name that is used to create the statistical charts. The file has to be located in the fonts directory, located in the LimeSurvey root folder. It can be edited in the config.php file;
**'chartfontfile': Задава името на файла с шрифт, който се използва за създаване на статистически диаграми. Файлът трябва да се намира в директорията с шрифтове, разположена в основната папка на LimeSurvey. Може да се редактира във файла config.php;
**'alternatechartfontfile': It's an array with language keys and their corresponding font. It can be edited in the config.php file.
**'alternatechartfontfile': Това е масив с езикови ключове и съответния им шрифт. Може да се редактира във файла config.php.
*'''showsgqacode:''' This setting is used at the printable survey feature and defaults to 'false''. If you set showsgqacode = 'true';, the IDs of each question - and answer if applicable - will be shown. These IDs match the column heading at the Lime_survey_12345 table, which holds the answer data for a certain survey. These IDs can be used for a code book for manual database queries.
*'''showsgqacode:''' Тази настройка се използва при функцията за проучване за печат и по подразбиране е 'false'. Ако зададете showgqacode = 'true';, идентификаторите на всеки въпрос - и отговор, ако е приложим - ще бъдат показани. Тези идентификатори съответстват на заглавието на колоната в таблицата Lime_survey_12345, която съдържа данните за отговорите за определено проучване. Тези идентификатори могат да се използват за кодова книга за ръчни заявки към база данни.


= [[LDAP settings]]=
= [[LDAP настройки]]=


As this is an extensive topic we have moved [[LDAP settings]] to [[LDAP settings|another page.]]
Тъй като това е обширна тема, ние преместихме [[LDAP настройките]] на [[LDAP настройките|друга страница.]]


= Authentication=
= Удостоверяване=


Starting with LimeSurvey 2.05, authentication will be handled by plugins. As a result, the information below might be outdated. See [[Plugins|the plugins wiki]] for most up to date information.
Започвайки с LimeSurvey 2.05, удостоверяването ще се извършва от добавки. В резултат на това информацията по-долу може да е остаряла. Вижте [[Plugins|уикито на добавките]] за най-актуална информация.


== Authentication delegation to the webserver==
== Делегиране на удостоверяване към уеб сървъра==


System administrators may want to have their '''survey administrators''' authenticated against a central authentication system (Active Directory, openLdap, Radius, ...) rather than using the internal LimeSurvey database. An easy way to do this is to setup your web server software to use this external authentication system, and then ask LimeSurvey to trust the user identity reported by the web server. In order to enable this feature, you have to:
Системните администратори може да поискат техните '''администратори на анкети''' да бъдат удостоверени срещу централна система за удостоверяване (Active Directory, openLdap, Radius, ...), вместо да използват вътрешната база данни на LimeSurvey. Лесен начин да направите това е да настроите софтуера на вашия уеб сървър да използва тази външна система за удостоверяване и след това да поискате от LimeSurvey да се довери на самоличността на потребителя, отчетена от уеб сървъра. За да активирате тази функция, трябва:
* set '''auth_webserver''' to 'true' in config.php;
* да зададете '''auth_webserver''' на 'true' в config.php;
* enable authentication from the web server side.
* да разрешите удостоверяване от страната на уеб сървъра.


Please note that:
Моля, имайте предвид, че:
* LimeSurvey will then bypass its own authentication process (by using the login name reported by the web server without asking for a password);
* LimeSurvey след това ще заобиколи собствения си процес на удостоверяване (като използва името за влизане, докладвано от уеб сървъра, без да иска парола);
* this can only replace the LimeSurvey GUI authentication system, '''not the survey invitation system''' (participant interface).
* това може да замени само системата за удостоверяване на LimeSurvey GUI, '' „не системата за покани за анкета“ (интерфейс за участници).


== Authentication delegation with no automatic user import==
== Делегиране на удостоверяване без автоматично импортиране на потребител ==


Please note that <u>Authentication Delegation doesn't bypass the LimeSurvey authorization system by default</u> - meaning that, even if you don't have to manage passwords in LimeSurvey, you still need to define the users in the LimeSurvey database and assign them the correct set of rights in order to let them access the administration panel.
Моля, имайте предвид, че <u>делегирането на удостоверяване не заобикаля системата за оторизация на LimeSurvey по подразбиране</u> – което означава, че дори и да не се налага да управлявате пароли в LimeSurvey, пак трябва да дефинирате потребителите в базата данни на LimeSurvey и да им присвоите правилния набор от права, за да им позволите достъп до административния панел.


A user is then granted access to LimeSurvey if and only if:
След това на потребител се предоставя достъп до LimeSurvey, ако и само ако:
* he has been authenticated to the web server;
* той е бил удостоверен на уеб сървъра;
* his login name is defined as a user in the LimeSurvey user database (the user is then granted the privileges of the user defined in the LimeSurvey user database).
* неговото име за вход е дефинирано като потребител в потребителската база данни на LimeSurvey (след това на потребителя се предоставя привилегии на потребителя, дефиниран в потребителската база данни на LimeSurvey).


== Authentication delegation with automatic user import==
== Делегиране на удостоверяване с автоматично импортиране на потребител ==


When managing a huge user database, it is sometimes easier to auto-import users in the LimeSurvey database:
Когато управлявате огромна потребителска база данни, понякога е по-лесно автоматично да импортирате потребители в базата данни на LimeSurvey:
*'''auth_webserver_autocreate_user''': If set to 'true', LimeSurvey will try to auto-import users authenticated by the web server but not already in its users DB.
*''''auth_webserver_autocreate_user''': Ако е зададено на 'true', LimeSurvey ще се опита автоматично да импортира потребители, удостоверени от уеб сървъра, но все още не е в неговата потребителска база данни.
*'''auth_webserver_autocreate_profile''': An array describing the default profile that will be assigned to the user, including the full (fake) name, email, and privileges.
*'''auth_webserver_autocreate_profile''': Масив, описващ профила по подразбиране, който ще бъде присвоен на потребителя, включително пълното (фалшиво) име, имейл и привилегии.


If you want to customize the user profile so that it matches the logged-in user, you'll have to develop a simple function called '''hook_get_autouserprofile''' - with this function you can retrieve from a central user account database (for instance, from a LDAP directory) the true full name, names, and email of a particular user. You can even customize his privileges on the system based on the groups he is allocated in the external database.
Ако искате да персонализирате потребителския профил, така че да съответства на влезлия потребител, ще трябва да разработите проста функция, наречена '''hook_get_autouserprofile''' - с тази функция можете да извличате от централна база данни с потребителски акаунти (за например от LDAP директория) истинското пълно име, имена и имейл на конкретен потребител. Можете дори да персонализирате неговите привилегии в системата въз основа на групите, които са му разпределени във външната база данни.


The '''hook_get_auth_webserver_profile''' function takes the user login name as the only argument and can return:
Функцията '''hook_get_auth_webserver_profile''' приема потребителското име за вход като единствен аргумент и може да върне:
* False or an empty array - in this case the user is denied access to LimeSurvey;
* False или празен масив - в този случай на потребителя е отказан достъп до LimeSurvey;
* an array containing all common userprofile entries as described in the <code>$WebserverAuth_autouserprofile</code>
* масив, съдържащ всички общи записи в потребителския профил, както е описано в <code>$WebserverAuth_autouserprofile</code>
<syntaxhighlight lang="php">function hook_get_auth_webserver_profile($user_name)
<syntaxhighlight lang="php">function hook_get_auth_webserver_profile($user_name)
{
{
Line 376: Line 414:


     // return Array();</syntaxhighlight>
     // return Array();</syntaxhighlight>
{{Alert|The optionnal 'hook_get_auth_webserver_profile' function is for advanced user usage only! For further details, please read the comments from the config-defaults.php file.}}
{{Alert|Опционалната функция 'hook_get_auth_webserver_profile' е само за напреднали потребители! За повече подробности, моля, прочетете коментарите от файла config-defaults.php.}}


== User name mapping==
== Съпоставяне на потребителско име==


In the case in which some users have an external user name that is different from their LimeSurvey user name, you may find useful to use a user name mapping. This is done in LimeSurvey by using the '''auth_webserver_user_map''' parameter. For instance, imagine you don't have an 'admin' user name defined in your external authentication database. Then, in order to login to LimeSurvey as admin, you'll have to map your external user name (let's call it 'myname') to the admin login name in LimeSurvey. The corresponding setup is:
В случай, че някои потребители имат външно потребителско име, което е различно от тяхното потребителско име в LimeSurvey, може да ви е полезно да използвате съпоставяне на потребителско име. Това се прави в LimeSurvey с помощта на параметъра '''auth_webserver_user_map'''. Например, представете си, че нямате дефинирано потребителско име „admin“ във вашата външна база данни за удостоверяване. След това, за да влезете в LimeSurvey като администратор, ще трябва да съпоставите вашето външно потребителско име (нека го наречем „моето име“) към администраторското име за вход в LimeSurvey. Съответната настройка е:


<syntaxhighlight lang="php">'config'=>array(
<syntaxhighlight lang="php">'config'=>array(
Line 386: Line 424:
'auth_webserver_user_map' => array ('myname' => 'admin');
'auth_webserver_user_map' => array ('myname' => 'admin');
)</syntaxhighlight>
)</syntaxhighlight>
After a successful authentication with the 'myname' login and web server password, you'll be directly authorized to use LimeSurvey as the 'admin' user.  
След успешно удостоверяване с потребителско име 'myname' и парола за уеб сървър, вие ще бъдете директно упълномощени да използвате LimeSurvey като потребител 'admin'.  


This has serious security implications, so use it with care. Also, protect your config.php from write access by the web server.
Това има сериозни последици за сигурността, така че го използвайте внимателно. Освен това защитете своя config.php от достъп за запис от уеб сървъра.


== Use one-time passwords==
== Използвайте еднократни пароли==


A user can open the LimeSurvey login page at default.com/limesurvey/admin and type the username and the one-time password which was previously written into the users table (column one_time_pw) by an external application.
Потребителят може да отвори страницата за вход в LimeSurvey на default.com/limesurvey/admin и да въведе потребителското име и еднократната парола, които преди това са били записани в таблицата с потребители (колона one_time_pw) от външно приложение.


This setting has to be turned on config.php file to enable the usage of one-time passwords (default = false).
Тази настройка трябва да бъде включена във файла config.php, за да се даде възможност за използване на еднократни пароли (по подразбиране = false).
<syntaxhighlight lang="php" enclose="pre">
<syntaxhighlight lang="php" enclose="pre">
    'config'=>array(
'config'=>array(
        'debug'=>0,
'debug'=>0,
        'debugsql'=>0,
'debugsql'=>0,
        'use_one_time_passwords'=>true,
'use_one_time_passwords'=>true,
    )
)
</syntaxhighlight>
</syntaxhighlight>


More information can be found in the [[Manage users#Use one-time passwords|"Manage Users" section]].
Повече информация можете да намерите в [[Управление на потребители#Използване на еднократни пароли|секция „Управление на потребители“]].




= Encryption settings {{NewIn|4.0.0}} =
= Настройки за криптиране {{NewIn|4.0.0}} =


{{Alert|title=Attention|text=Once set, encryption keys should never be changed, otherwise all encrypted data could be lost !}}
{{Alert|title=Внимание|text=Веднъж зададени, ключовете за криптиране никога не трябва да се променят, в противен случай всички криптирани данни могат да бъдат загубени!}}


{{Note|When update or install, this parameters was generated by LimeSurvey and set in <code>application/config/security.php</code> file. You can move this settings in config.php if you want or leave in security.php.}}
{{Забележка|При актуализиране или инсталиране, тези параметри са генерирани от LimeSurvey и зададени във файла <code>application/config/security.php</code> . Можете да преместите тези настройки в config.php, ако желаете, или да ги оставите в security.php.}}


See [[data encryption]] for detail on this feature.
Вижте [[шифроване на данни]] за подробности относно тази функция.


*'''encryptionkeypair'''
*''''encryptionkeypair''''
*'''encryptionpublickey'''
*'''encryptionpublickey'''
*'''encryptionsecretkey'''
*''''encryptionsecretkey''''


= Advanced url settings=
= Разширени настройки на url=


*'''publicurl:''' This should be set to the URL location of your 'public scripts'. The public scripts are those located in the "limesurvey" folder (or whatever name you gave to the directory that all the other scripts and directories are kept in). '''This settings is available in config.php and it is used when LimeSurvey need an absolute url (for example when token emails are sent).'''
*''''publicurl:'''' Това трябва да бъде настроено на URL местоположението на вашите 'публични скриптове'. Публичните скриптове са тези, които се намират в папката "limesurvey" (или каквото име сте дали на директорията, в която се съхраняват всички останали скриптове и директории). '''Тази настройка е налична в config.php и се използва, когато LimeSurvey се нуждае от абсолютен url (например когато се изпращат имейли с токени).'''
*'''homeurl:''' This should be set to the URL location of your administration scripts. These are located in the /limesurvey/admin folder. This should be set to the WEB URL location - for example, ''http://www.example.com/limesurvey/html/admin''. Don't add a trailing slash to this entry. The default setting in config.php attempts to detect the name of your server automatically using a php variable setting - <code>{$_SERVER<nowiki>[</nowiki>'SERVER_NAME']}</code>. '''In most cases, you can leave this and just modify the remainder of this string to match the directory name you have put the LimeSurvey scripts in.'''
*''''homeurl:'''' Това трябва да бъде зададено към URL местоположението на вашите административни скриптове. Те се намират в папката /limesurvey/admin. Това трябва да бъде зададено на местоположението на WEB URL адреса - например, ''http://www.example.com/limesurvey/html/admin''. Не добавяйте наклонена черта в края към този запис. Настройката по подразбиране в config.php се опитва да открие името на вашия сървър автоматично, като използва настройка на променлива на php - <code>{$_SERVER [ 'SERVER_NAME']}</code><nowiki> <code>{$_SERVER [ 'SERVER_NAME']}</code></nowiki> <code>{$_SERVER [ 'SERVER_NAME']}</code> . '''В повечето случаи можете да оставите това и просто да промените остатъка от този низ, за да съответства на името на директорията, в която сте поставили скриптовете на LimeSurvey.'''
*'''tempurl:''' This should be set to the URL location of your "/limesurvey/tmp" directory - or to a directory in which you would like LimeSurvey to use to serve temporary files.  
*'''tempurl:''' Това трябва да бъде задайте на URL местоположението на вашата директория "/limesurvey/tmp" - или на директория, в която бихте искали LimeSurvey да използва за обслужване на временни файлове.  
*'''uploadurl:''' This should be set to the URL location of your "/limesurvey/upload" directory - or to a directory in which you would like LimeSurvey to use to serve uploaded files. This allow you to set uploaded files on another url domain.
*'''uploadurl:''' Това трябва да бъде зададено на URL местоположението на вашата директория "/limesurvey/upload" - или на директория, в която бихте искали LimeSurvey да използва за обслужване на качени файлове. Това ви позволява да зададете качени файлове на друг домейн с URL адреси.


= Advanced path settings=
= Разширени настройки на пътя=


*'''homedir:''' This should be set to the physical disk location of your administration scripts - for example "/home/usr/htdocs/limesurvey/admin". Don't add a trailing slash to this entry. The default setting in config.php attempts to detect the default root path of all your documents using the php variable setting  <code>{$_SERVER<nowiki>[</nowiki>'DOCUMENT_ROOT']}</code>. In most cases you can leave this and just modify the remainder of this string to match the directory name you have put the LimeSurvey scripts in.
*''''homedir:''' Това трябва да бъде зададено на местоположението на физическия диск на вашите административни скриптове - например "/home/usr/htdocs/limesurvey/admin". Не добавяйте наклонена черта в края към този запис. Настройката по подразбиране в config.php се опитва да открие основния път по подразбиране на всичките ви документи, използвайки настройката на променливата на php <code>{$_SERVER [ 'DOCUMENT_ROOT']}</code><nowiki> <code>{$_SERVER [ 'DOCUMENT_ROOT']}</code></nowiki> <code>{$_SERVER [ 'DOCUMENT_ROOT']}</code> . В повечето случаи можете да оставите това и просто да промените остатъка от този низ, за да съответства на името на директорията, в която сте поставили скриптовете на LimeSurvey.
*'''publicdir:''' This should be set to the physical disk location of your 'public scripts'.
*''''publicdir:'''' Това трябва да бъде зададено на местоположението на физическия диск на вашите 'публични скриптове'.
*'''tempdir:''' This should be set to the physical disk location of your /limesurvey/tmp directory so that the script can read and write files.
*''''tempdir:''' Това трябва да бъде зададено на местоположението на физическия диск на вашата директория /limesurvey/tmp, така че скриптът да може да чете и записва файлове.
*'''uploaddir:''' This should be set to the physical disk location of your /limesurvey/upload directory so that the script can read and write files.
*'' 'uploaddir:''' Това трябва да бъде зададено на местоположението на физическия диск на вашата директория /limesurvey/upload, така че скриптът да може да чете и записва файлове.
*'''sCKEditorURL:''' url of the fckeditor script.
*''sCKEditorURL:'''' url на скрипта fckeditor.  
*'''fckeditexpandtoolbar:''' defines if the fckeditor toolbar should be opened by default.
*'''fckediteexpandtoolbar:''' определя дали лентата с инструменти на fckeditor трябва да се отваря по подразбиране.
*'''pdfexportdir:''' This is the directory with the tcpdf.php extensiontcpdf.php.
*''''pdfexportdir:'''' Това е директорията с tcpdf.php разширението tcpdf.php.
*'''pdffonts:''' This is the directory for the TCPDF fonts.
*'''pdffonts:''' Това е директорията за TCPDF шрифтовете.


= Other advanced settings=
= Други разширени настройки=


== Upload files==
== Качване на файлове==


*'''allowedthemeuploads:''' File types allowed to be uploaded in theme editor
*''''allowedthemeuploads:'''' Типове файлове, разрешени за качване в редактора на теми
*'''allowedresourcesuploads:''' File types allowed to be uploaded in the resources sections, and with the HTML Editor
*''''allowedresourceuploads:'''' Типове файлове, разрешени за качване в секциите с ресурси и с HTML редактора
*'''allowedfileuploads''' {{NewIn|4.0.0}} Global restriction on file type to be uploaded
* '''allowedfileuploads''' {{NewIn|4.0.0}} Глобално ограничение за типа файл за качване
*'''magic_database:''' {{NewIn|3.17.17}} Allow to use a different MIME database for [https://www.php.net/manual/en/function.finfo-open.php finfo_open]. Can be updated only in config.php file. Example : <code>/usr/share/misc/magic.mgc</code> for redhat based linux.
*'''magic_database:''' {{NewIn|3.17.17}} Позволява да се използва различен MIME база данни за [https://www.php.net/manual/en/function.finfo-open.php finfo_open]. Може да се актуализира само във файла config.php. Пример: <code>/usr/share/misc/magic.mgc</code> за базиран на redhat linux.
*'''magic_file:''' {{NewIn|3.17.17}} Allow to use a different file to get the array of extension by mime type than the [https://github.com/LimeSurvey/LimeSurvey/blob/master/application/core/utils/fileExtensions.php included one]. Must be a PHP file return an array. Can be updated only in config.php file.
*'''magic_file:''' {{NewIn|3.17.17}} Позволява да се използва различен файл за получаване на масива от разширение по mime тип от [https://github.com/LimeSurvey/LimeSurvey/blob/master/application/core/utils/fileExtensions.php включен]. Трябва да е PHP файл, който връща масив. Може да се актуализира само във файла config.php.


== Update ==
== Актуализация ==


*'''updatable:''' This setting is in version.php. Can be true or false. If you set to true : when an super admin user log in : LimeSurvey checks if an update is available and show you a warning. If set to false : no check is done and you can't use ComfortUpdate.
*''''актуализиран:'''' Тази настройка е във version.php. Може да бъде вярно или невярно. Ако зададете true : когато супер администратор влезе в системата : LimeSurvey проверява дали има налична актуализация и ви показва предупреждение. Ако е зададено на false: не се извършва проверка и не можете да използвате ComfortUpdate.

Latest revision as of 16:59, 2 April 2024

Следващият раздел е адресиран до онези от вас, които биха искали да редактират тези настройки на конфигурацията, които не могат да бъдат променени с помощта на GUI (графичен потребителски интерфейс) на инсталацията на LimeSurvey. Моля, имайте предвид, че всички промени от основната директория на LimeSurvey се извършват на ваш собствен риск. Независимо от това, в случай, че изпитвате проблеми/имате нужда от допълнителни насоки, присъединете се към дискусионните форуми или IRC канал за помощ от общността на LimeSurvey.

Въведение

За да промените конфигурационните настройки на инсталацията, трябва да редактирате незадължителните настройки. Те могат да бъдат намерени в /application/config/config-defaults.php, който се намира в основната директория на LimeSurvey. Настройките по подразбиране на стандартната инсталация могат да бъдат намерени в config-defaults.php. Някои от тях могат да бъдат отменени чрез диалога глобални настройки, докато другите ще трябва да бъдат редактирани ръчно.

  Ако искате да промените тези настройки, моля, не ги променяйте в config-defaults.php, а копирайте конкретната настройка/ред в /application/config/config.php'' в 'config'=>array( ) и го смени там. Всички новопроменени/въведени настройки от файла config.php ще заменят стойностите по подразбиране от config-defaults.php.


Когато се извърши надграждане, се променят само настройките на config-defaults.php. Следователно редактирането на файла config.php ще запази вашите персонализирани настройки.

За да актуализирате/добавите настройките на LimeSurvey в /application/config/config.php', трябва да актуализирате конфигурационния масив:

 !Н! 'config'=>array(
 'debug'=>0,
 'debugsql'=>0,
 'LimeSurveySetting'=>'Нова стойност', // Актуализиране на конфигурацията на LimeSurvey по подразбиране тук
 )!Н!

Yii настройки

LimeSurvey използва рамката Yii, която има свои собствени конфигурационни параметри във файла application/config/internal.php' и application/config/'config.php'. Можете също да получите достъп до някои специфични конфигурационни настройки на LimeSurvey чрез конфигурацията на Yii.

Тъй като масивът config.php е обединен с цялата конфигурация, можете да замените всички Yii параметри във файла config.php.

Специфичните настройки на Yii са зададени в масива на компонентите:

 !Н! 'components' => array(
 'db' => array(
 ....
 ),
 'Специфични настройки'=>array(
 ....
 ),
 ),

Template:Забележка

Настройки на базата данни

Настройките на базата данни се записват в config.php от инсталационния файл, когато инсталирате LimeSurvey за първи път. Ако е необходимо, можете да актуализирате тази част от файла config.php. Моля, не забравяйте, че правите това на свой собствен риск!

Вижте също Yii документация и моля не забравяйте, че LimeSurvey поддържа само следните типове бази данни: mysql, pgsql, dblib, mssql и sqlsrv.

Настройки на сесията

Можете да зададете някои параметри на сесията в config.php (проверете двата примера отдолу). Можете да разкоментирате/добавите необходимата част в config.php. Вижте Yii документация за други настройки.

  Ако трябва да актуализирате настройките на сесията, за да имате множество екземпляри на LimeSurvey, работещи на един и същи сървър, проверете дали не трябва да актуализирате настройките на заявката за crsf бисквитка.


Използвайте сесии, базирани на таблици

LimeSurvey може да използва сесии, базирани на таблици, намирате коментирана част в генерирания файл по подразбиране config.php. За да използвате сесия, базирана на таблици, премахнете // преди всеки ред.

'session' => масив (
 'class' => 'application.core.web.DbHttpSession',
 'connectionID' => 'db',
 'sessionTableName' => '{{sessions} }',
 ),

Template:Предупреждение

Актуализация на други сесии

Ако използвате SSL ('https') за вашата инсталация на LimeSurvey, добавянето на следните редове към вашия config.php ще увеличи сигурността на сесията:

 // Задайте бисквитката чрез SSL
 'session' => array (
 'cookieParams' => array(
 'secure' => true, // използва SSL за бисквитки
 'httponly' => true // Бисквитките не могат да се използват от други протоколи - експериментални
 ),
 ),

Ако искате да коригирате домейна за бисквитка, използвайте следния синтаксис в config.php:

 // Задайте домейна за cookie
 'session' => array (
 'cookieParams' => array(
 'domain' => '.example.org',
 ),
 ),

Ако имате множество инсталации на един и същ сървър, може да бъде по-бързо и лесно да зададете различно име на сесия за всеки екземпляр на LimeSurvey. Това може да е необходимо за IE11 при някои условия (вижте проблем 12083)

 // Задайте името на сесията
 'session' => масив (
 'sessionName' => "LimeSurveyN1",
 ),

Настройки на заявката

Настройките на заявката са важни, но настройките по подразбиране вече са оптимизирани за използване на LimeSurvey. За да прочетете повече за тях, вижте Yii документация.

Например, конфигурацията на настройките на заявката на LimeSurvey може да бъде променена по следния начин (на ваш собствен риск) :

 // Деактивирайте CSRF защитата
 'request' => array(
 'enableCsrfValidation'=>false, 
 ),
 // Налагане на определена URL база 
 'request' => array(
 'hostInfo' => 'http://www.example.org/' 
 ),
 // Задайте името на домейна на бисквитката и пътя за CSRF защита, пътят се използва, ако имате различен екземпляр на същия домейн
 'request' => array(
 'csrfCookie' => array( 
 'domain' => '.example.com',
 'path' => '/limesurvey/',
 ) 
 ),

Ако трябва да актуализирате само URL адреса за токен имейли, задайте publicurl във вашия файл config.php.


Разрешаване на използване на сесия и Csrf валидиране в iFrame (New in 3.24.3 )

След като разрешите вграждане на Iframe, трябва да актуализирате част от конфигурацията. Внимание, дори и с всички настройки: разрешаването на формуляр в iframe може да се повреди в някои браузъри. Тези настройки бяха тествани с Firefox 81.0.2 и Chromium 85.0.4183.121.

  Attention, even with all settings : allow form in iframe can broke on some browser or with user specific settings. This settings was tested with Firefox 81.0.2 to 115 and Chromium 85.0.4183.121 to 119, and119 Edge with default settings. No support on this feature, only community support.


Разрешаване на стартиране на сесия в iframe

Сесията трябва да е защитена (валиден https), само httponly и същия сайт към None. Всички настройки трябва да бъдат зададени на малки букви.

'session' => array (
 'sessionName'=>'LS-VBXZZORFJZCAKGYI',
 // Разкоментирайте следните редове, ако имате нужда от базирани на таблици сесии.
 // Забележка: Базираните на таблици сесии са в момента не се поддържа на MSSQL сървър.
 // 'class' => 'application.core.web.DbHttpSession',
 // 'connectionID' => 'db',
 // 'sessionTableName' = > '{{sessions}}',
 'cookieParams' => array(
 'secure' => true,
 'httponly' => true,
 'samesite' => 'Няма' ,
 ),
 ),

Разрешаване на csrf бисквитка в iframe

Същото като сесията: трябва да е защитено и същият сайт да е зададен на Няма. Целият масив трябва да бъде добавен на същото ниво като сесията.

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

URL настройки

  Ако трябва да актуализирате само URL адреса за токена и други имейли, задайте publicurl във вашия файл config.php.


За да промените настройките на URL по подразбиране, актуализирайте urlManager:

 // Използвайте кратък URL
 'urlManager' => array(
 'urlFormat' => 'path',
 'showScriptName' => false,
 ),


Можете също така да добавите .html след идентификатора на анкетата по следния начин:

 // Използвайте кратък 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(
 /* Друг компонент тук 'db' например */
 'log' => array(
 'routes' => array(
 'fileError' => array(
 'class' => 'CFileLogRoute',
 'levels' => 'предупреждение, грешка',
 'except' => 'exception.CHttpException .404',
 ),
 ),
 ),
 /* Друг компонент тук 'urlManager' например */
 ),
 /* Финална част (с ' runtimePath' 'config' например) */
);
 Hint: Файлът се записва по подразбиране в <code>limesurvey/tmp/runtime/application.log</code> , който се намира в основната папка на LimeSurvey.
  Yii използва път за изпълнение. По подразбиране регистрационните файлове са достъпни в мрежата. Те могат да съдържат много информация от вашия сървър. По-добре е да използвате директория, която не може да бъде достъпна през мрежата. Можете да го зададете в маршрути или като актуализирате Runtime path.

.

Път на изпълнение

Пътят по време на изпълнение трябва да бъде четлива и записвана директория за „уеб потребителя“. Пътят по време на изпълнение обаче съдържа файлове с потенциална информация за сигурност, които се намират в зоната за публичен уеб достъп. LimeSurvey събира тези файлове във временната директория на основната директория на LimeSurvey. За да елиминирате достъпа до такива важни данни, можете да зададете пътя на изпълнение извън публичния уеб достъп, като редактирате съответните редове във файла /application/config/config.php:

return array(
 'components' => array(
 []
 'runtimePath'=>'/var/limesurvey/runtime/',
 'config'=>array( 
 []
 )
 )
)

Общи настройки

  • 'sitename: Дава име на вашия сайт за проучване. Това име ще се появи в прегледа на списъка с анкети и в административния колонтитул. Стойността по подразбиране е „LimeSurvey“ и може да бъде заменена в диалоговия прозорец глобални настройки или редактирана в config.php.
  • 'siteadminemail:' Това е имейл адресът по подразбиране на администратора на сайта и се използва за системни съобщения и опции за контакт. Тази настройка се използва само като стойност по подразбиране и може да бъде заменена в диалоговия прозорец глобални настройки.
  • 'siteadminbounce:' Това е имейл адресът, на който ще се изпращат върнатите имейли. Тази настройка се използва само като стойност по подразбиране и може да бъде заменена от диалоговия прозорец глобални настройки.
  • siteadminname:'' Истинското име на администратора на сайта. Тази настройка се използва само като стойност по подразбиране и може да бъде заменена в диалоговия прозорец глобални настройки.
  • 'proxy_host_name:' Това е името на хоста на вашия прокси сървър (има да бъде споменат, ако сте зад прокси и искате да актуализирате LimeSurvey с помощта на ComfortUpdate).
  • 'proxy_host_port:' Това е портът на вашия прокси сървър (трябва да бъде споменати, ако сте зад прокси и искате да актуализирате LimeSurvey с помощта на ComfortUpdate).

Сигурност

  • 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.
  • filterxsshtml:'' Тази настройка позволява филтрирането на подозрителни html тагове, намиращи се в анкети, групи и текстове за въпроси и отговори в административния интерфейс. Оставете това на 'false' само ако имате абсолютно доверие на потребителите, които сте създали за администриране на LimeSurvey и ако искате да позволите на тези потребители да могат да използват Javascript, Flash филми и т.н. Супер администраторите никога не филтрират HTML . Стойността по подразбиране може да бъде заменена в диалоговия прозорец глобални настройки или редактирана в config.php.
  • 'demoMode:' Ако тази опция е зададена на 'true' в config.php , тогава LimeSurvey ще премине в демо режим. Демонстрационният режим променя следните неща:
    • Деактивира данните на администраторския потребител и промяната на паролата;
    • Деактивира качването на файлове в редактора на шаблони;
    • Деактивира изпращането на имейл покани и напомняния;!N !** Деактивира създаването на дъмп на база данни;
    • Деактивира възможността за промяна на следните глобални настройки: име на сайта, език по подразбиране, режим на HTML редактор по подразбиране, XSS филтър.
  • ''forcedsuperadmin:' Масив от потребителски идентификатор с всички права върху всички LimeSurvey. Тези настройки могат да се актуализират само във файла config.php. Правата на този потребител не могат да се редактират в глобални разрешения за потребител дори от друг принуден супер администратор. По подразбиране: потребител с тези права е потребител с id: 1. Първият потребител, създаден точно след инсталацията.
  • force_ssl:' принуждава LimeSurvey да работи през HTTPS или да блокира HTTPS. Вижте Force HTTPS в GUI за администриране на глобални настройки.
  • ssl_emergency_override:' Тази настройка принудително изключва SSL. Ако сте включили HTTPS/SSL в глобалните настройки, но вашият сървър не е активирал HTTPS, единственият начин да го изключите е като промените директно стойност в базата данни. Това ви позволява принудително да изключите HTTPS, докато променяте глобалните настройки за Force Secure. Това винаги трябва да е false, освен в спешни случаи, когато го промените на true, докато не отстраните проблема. Тази настройка може да бъде зададена само чрез файла config.php.
  • ssl_disable_alert:' Деактивирайте известието за супер-администратор за непринуден SSL, ако наистина не можете или не искате да принудите ssl. Тази настройка може да бъде зададена само чрез файла config.php.

Ресурси

  • 'sessionlifetime: Определя времето в секунди, след което изтича сесията на анкетата. Прилага се само ако използвате сесии на база данни. Ако все пак използвате сесии на база данни, променете параметъра в config.php или заменете стойността по подразбиране от глобални настройки диалоговия прозорец.
  • memorylimit:'' Това определя колко памет LimeSurvey може да има достъп. „128 MB“ е препоръчителният минимум (MB=мегабайт). Ако получавате грешки при изчакване или имате проблеми с генерирането на статистика или експортирането на файлове, увеличете това ограничение до „256 MB“ или по-високо. Ако вашият уеб сървър е задал по-висок лимит в config.php, тази настройка ще бъде игнорирана.
Моля, имайте предвид, че такива локални настройки винаги могат да бъдат отменени от промените, направени в диалога за глобални настройки'.

За да увеличите лимита на паметта до 128M, можете също да опитате да добавите:

  • memory_limit = 128M към главния php.ini файл на вашия сървър (препоръчва се, ако имате достъп)
  • memory_limit = 128M към php.ini файл в коренът на LimeSurvey
  • php_value memory_limit 128M във файл .htaccess в корена на LimeSurvey
  • 'max_execution_time:' Задайте броя секунди, в които е разрешено да се изпълнява скрипт. Ако това се достигне, скриптът връща фатална грешка. За да му бъде позволено да експортира данни и статистика от големи проучвания, LimeSurvey се опитва да го зададе по подразбиране на 1200 секунди. Можете да зададете по-голямо или по-ниско време, ако е необходимо. Достъпно само чрез php конфигурационен файл.

Appearance

  • 'dropdownthreshold (Obsolete since 2.50): Когато "R" е избрано за $dropdowns , администраторът има право да зададе максимален брой опции, които ще се показват като радио бутони , преди да конвертирате обратно в падащ списък. Ако има въпрос, който има голям брой опции, показването на всички наведнъж като радио бутони може да изглежда тромаво и може да стане контраинтуитивно за потребителите. Задаването на това на максимум, да речем, 25 (което е по подразбиране) означава, че големите списъци са по-лесни за използване от администраторите за участника в проучването.
  • 'repeatheadings:' С типа въпрос Array, често ще имате много подвъпроси, които - когато се показват на екрана - заемат повече от една страница. Тази настройка ви позволява да решите колко подвъпроси да бъдат показани, преди да повторите информацията в заглавието на въпроса. Добра настройка за това е около 15. Ако изобщо не искате заглавията да се повтарят, задайте това на 0. Тази настройка се отменя в диалоговия прозорец глобални настройки (New in 2.05 ) .
  • 'minrepeatheadings: Минималният брой оставащи подвъпроси, които са необходими, преди да се повторят заглавията във въпросите за масива. Стойността по подразбиране е 3 и може да се редактира в config.php.
  • defaulttemplate: Тази настройка определя темата по подразбиране, използвана за 'публичния списък' с анкети. Тази настройка може да бъде заменена в глобални настройки или редактирана в config.php.
  • 'defaulthtmleditormode:' Задава режима по подразбиране за интегрирания HTML редактор. Тази настройка може да бъде заменена в диалоговия прозорец глобални настройки или редактирана в config.php. Валидните настройки са:
    • 'inline' - Вградена замяна на полета от HTML редактор. Бавен, но удобен и лесен за използване;
    • „изскачащ прозорец“ – Добавя икона, която стартира HTML редактора в изскачащ прозорец, ако е необходимо. По-бързо, но HTML кодът се показва във формуляра;
    • 'няма'- Няма HTML редактор;
  • 'column_style:' Определя как се изобразяват колоните за отговорите на анкетата, когато се използва показване_колони. Може да се редактира във файла config.php. Валидните настройки са:
    • 'css' - използва един от различните CSS методи за създаване на колони (вижте таблицата със стилове на шаблона за подробности);
    • 'ul' - колоните се изобразяват като множество плаващи неподредени списъци (по подразбиране);
    • 'table' - използва оформление, базирано на конвенционални таблици;
    • NULL - забранява използването на колони.

Език и време

  • defaultlang: Това трябва да бъде зададено на езика по подразбиране, който да се използва във вашите административни скриптове, както и настройката по подразбиране за език в списъка с обществени проучвания. Тази настройка може да бъде заменена в диалоговия прозорец глобални настройки или редактирана в config.php.
  • timeadjust:'' Ако вашият уеб сървър е в различна часова зона от мястото, където вашите анкети ще се базират, поставете разликата между вашия сървър и вашата домашна часова зона тук. Например, живея в Австралия, но използвам американски уеб сървър. Уеб сървърът е 14 часа зад моята местна часова зона. Така че моята настройка тук е "14". С други думи, той добавя 14 часа към времето на уеб сървърите. Тази настройка е особено важна, когато анкетите отбелязват отговорите във времето. Тази настройка може да бъде заменена в диалоговия прозорец глобални настройки или редактирана в config.php.

Поведение на анкетата

  • 'deletenonvalues: Използвайте тази функция с повишено внимание. По подразбиране (стойност 1) неподходящите въпроси са NULL в базата данни. Това гарантира, че данните във вашата база данни са вътрешно съгласувани. Въпреки това, има редки случаи, в които може да искате да задържите неподходящи стойности, в който случай можете да зададете стойността на 0. Например, вие питате човек от мъжки пол за пола му и той случайно казва „жена“ и след това отговаря някаква жена - специфични въпроси (въпроси, които са обусловени от женски пол, така че са подходящи само за жени). След това той осъзнава грешката си, прави резервно копие, задава пола на „мъжки“ и продължава с анкетата. Сега специфичните за жените въпроси са без значение. Ако $deletenonvalues==1 , тези неподходящи стойности ще бъдат изчистени (NULLed) в базата данни. Ако $deletenonvalues==0 , неговите грешни отговори няма да бъдат изтрити, така че те все още ще присъстват в базата данни, когато я анализирате.
  • shownoanswer: Когато бутон за избор/изберете тип въпрос, който съдържа отговори с възможност за редактиране (т.е.: Списък, въпроси с масив) не е задължителен и 'shownoanswer' е зададено на 1, допълнителен 'Без отговор' се показва запис - така че участниците да могат да изберат да не отговарят на въпроса. Някои хора предпочитат това да не е налично. Тази настройка може да бъде заменена от диалоговия прозорец глобални настройки или редактирана в config.php. Валидни стойности са:
    • '0': No;
    • '1': Да;
    • '2': Администраторът на анкетата може да избира.
  • printanswershonorsconditions: Тази настройка определя дали функцията printanswers ще показва записи от въпроси, които са били скрити от разклоняване на условия (По подразбиране: 1 = скриване на отговорите от въпроси, скрити от условия).
  • ' hide_groupdescr_allinone:' Тази настройка е подходяща за проучвания "всичко в едно", използващи условия. Когато това е зададено на „вярно“, името и описанието на групата са скрити, ако всички въпроси в групата са скрити. Стойността по подразбиране е 'true' - скрива името и описанието на групата, когато всички въпроси в групата са скрити от условия. Може да се редактира в config.php.
  • 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 заявки, изпълнени за скрипта в долната част на всяка страница. Много полезно за оптимизиране на броя на заявките. За да го активирате, променете стойността по подразбиране на '1' от файла config.php.
  • use_asset_manager: По подразбиране: режимът за отстраняване на грешки деактивира диспечера на активи, можете да ви позволите да използвате диспечера на активи с разрешен режим на отстраняване на грешки.

В случай, че срещнете грешка в приложението, силно препоръчваме да активирате настройката за отстраняване на грешки, за да получите по-подробна грешка, която можете да изпратите с доклада за грешка:

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

Ако работите върху плъгин и се нуждаете от бърз начин за изхвърляне на променливи на екрана: можете да използвате функцията traceVar. Ако е зададено отстраняване на грешки: тази функция използва CWebLogRoute, за да бъде показана на HTML страница. Използване traceVar($MyVariable)

Настройки за имейл

Всички настройки отдолу могат да бъдат заменени в диалоговия прозорец глобални настройки.

  • ''emailmethod: Това определя как се изпращат имейл съобщенията. Налични са следните опции:
    • 'mail:' използва вътрешен PHP имейл;
    • 'sendmail:' използва sendmail имейл;
    • 'smtp:' използва SMTP препредаване. Използвайте тази настройка, когато изпълнявате LimeSurvey на хост, който не е вашият мейл сървър.
  • 'emailsmtphost: Ако използвате 'smtp' като $emailmethod , тогава трябва да поставите вашия SMTP сървър тук. Ако използвате Google Mail, може да се наложи да добавите номера на порта като $emailsmtphost = 'smtp.gmail.com:465'.
  • emailsmtpuser: Ако вашият SMTP сървър се нуждае от удостоверяване, задайте това на вашия потребителско име, в противен случай трябва да е празно.
  • emailsmtppassword: Ако вашият SMTP-сървър се нуждае от удостоверяване, задайте това на вашата парола, в противен случай трябва да е празно.
  • emailsmtpssl: Задайте това на 'ssl' или 'tls' за използване на SSL/TLS за SMTP връзка.
  • maxemails: Когато изпращате покани или напомняния на участниците в проучването, тази настройка се използва, за да определи колко имейла могат да бъдат изпратени в един куп. Различните уеб сървъри имат различен капацитет за имейли и ако вашият скрипт отнема твърде много време, за да изпрати куп имейли, скриптът може да изтече и да причини грешки. Повечето уеб сървъри могат да изпратят 100 имейла наведнъж в рамките на ограничението от 30 секунди по подразбиране за PHP скрипт. Ако получавате грешки при изчакване на скрипта, когато изпращате голям брой имейли, намалете броя в тази настройка. Щракването върху бутона „изпращане на имейл покана“ от лентата с инструменти за управление на токени (а не върху бутона, разположен вдясно на всеки токен) изпраща<maxemails> брой покани, след което показва списък с адресите на получателите и предупреждение, че „има повече чакащи имейли, отколкото могат да бъдат изпратени в една група. Продължете да изпращате имейли, като щракнете по-долу. Все още има ### имейла за изпращане. и предоставя „бутон за продължаване“, за да продължите със следващата група. Т.е. потребителят определя кога да изпрати следващата партида, след като всяка партида бъде изпратена по имейл. Не е необходимо да чакате с активен екран. Администраторът може да излезе и да се върне по-късно, за да изпрати следващата група покани.

Преглед на статистики и отговори

  • filterout_incomplete_answers: Контролирайте поведението по подразбиране за филтриране на непълни отговори при разглеждане или анализиране на отговорите. За дискусия относно непълните отговори вижте нашата уики за резултати от проучване за сърфиране. Тъй като тези записи могат да повредят статистиката, е дадена опция за включване или изключване на този филтър в няколко GUI форми. Параметърът може да се редактира в config.php. Налични са следните опции:
    • 'show': Позволява ви да визуализирате както пълни, така и непълни отговори;
    • 'filter': Показва само пълни отговори;
    • 'incomplete': Показване само непълни отговори.
  • strip_query_from_referer_url': Тази настройка определя дали URL адресът за препращане запазва параметъра или не. Стойността по подразбиране е „false“ (в този случай URL адресът на референта запазва всички параметри). Като алтернатива, тази стойност може да бъде зададена на „истина“ и частта от параметъра на препоръчания URL адрес ще бъде премахната.
  • 'showaggregateddata:', когато е активирана, се показват допълнителни статистически стойности, като средно аритметично и стандартно отклонение показано. Освен това данните се обобщават, за да се получи по-бърз преглед. Например, резултатите от скала 1+2 и 4+5 се добавят, за да имат общо класиране като "добър" (1/2), "среден" (3) и "лош" (4/5). Това засяга само типовете въпроси "A" (масив от 5 точки) и "5" (избор от 5 точки).
  • Настройки за експортиране на PDF: Тази функция активира експортиране на PDF за анкети за печат и за печат на отговори. Функцията за експортиране на PDF е напълно експериментална и резултатът далеч не е перфектен. За съжаление, в момента не може да бъде предоставена поддръжка - ако искате да помогнете за отстраняването му, моля, свържете се с нас.
    • 'usepdfexport': Задайте '0', за да деактивирате, и '1', за да активирате;
    • 'pdfdefaultfont': Той представлява шрифта по подразбиране, който ще се използва от функцията за експортиране на pdf. Стойността по подразбиране е „автоматично“. За да го промените, трябва да го зададете на един от PDF основните шрифтове.
    • 'alternatepdffontfile': Това е масив с езикови ключове и съответния им шрифт. Шрифтът по подразбиране за всеки език може да бъде заменен във файла config.php;
    • 'pdffontsize': показва размера на шрифта за нормални текстове; За заглавието на анкетата е<pdffontsize> +4, докато за заглавието на групата е<pdffontsize> +2. Може да се редактира във файла config.php или от диалоговия прозорец [Глобални настройки|глобални настройки]];
    • 'notsupportlanguages': включва списък с езиците, за които не е намерен PDF шрифт. Списъкът включва амхарски ('am'), сингалски ('si') и тайландски ('th') и може да бъде намерен във файла config-defaults.php;
    • 'pdforientation': Set ' L' за пейзаж или 'P' за портретен формат. Може да се редактира от файла config.php.
  • Graph setting
    • 'chartfontfile': Задава името на файла с шрифт, който се използва за създаване на статистически диаграми. Файлът трябва да се намира в директорията с шрифтове, разположена в основната папка на LimeSurvey. Може да се редактира във файла config.php;
    • 'alternatechartfontfile': Това е масив с езикови ключове и съответния им шрифт. Може да се редактира във файла config.php.
  • showsgqacode: Тази настройка се използва при функцията за проучване за печат и по подразбиране е 'false'. Ако зададете showgqacode = 'true';, идентификаторите на всеки въпрос - и отговор, ако е приложим - ще бъдат показани. Тези идентификатори съответстват на заглавието на колоната в таблицата Lime_survey_12345, която съдържа данните за отговорите за определено проучване. Тези идентификатори могат да се използват за кодова книга за ръчни заявки към база данни.

LDAP настройки

Тъй като това е обширна тема, ние преместихме LDAP настройките на друга страница.

Удостоверяване

Започвайки с LimeSurvey 2.05, удостоверяването ще се извършва от добавки. В резултат на това информацията по-долу може да е остаряла. Вижте уикито на добавките за най-актуална информация.

Делегиране на удостоверяване към уеб сървъра

Системните администратори може да поискат техните администратори на анкети да бъдат удостоверени срещу централна система за удостоверяване (Active Directory, openLdap, Radius, ...), вместо да използват вътрешната база данни на LimeSurvey. Лесен начин да направите това е да настроите софтуера на вашия уеб сървър да използва тази външна система за удостоверяване и след това да поискате от LimeSurvey да се довери на самоличността на потребителя, отчетена от уеб сървъра. За да активирате тази функция, трябва:

  • да зададете auth_webserver на 'true' в config.php;
  • да разрешите удостоверяване от страната на уеб сървъра.

Моля, имайте предвид, че:

  • LimeSurvey след това ще заобиколи собствения си процес на удостоверяване (като използва името за влизане, докладвано от уеб сървъра, без да иска парола);
  • това може да замени само системата за удостоверяване на LimeSurvey GUI, „не системата за покани за анкета“ (интерфейс за участници).

Делегиране на удостоверяване без автоматично импортиране на потребител

Моля, имайте предвид, че делегирането на удостоверяване не заобикаля системата за оторизация на LimeSurvey по подразбиране – което означава, че дори и да не се налага да управлявате пароли в LimeSurvey, пак трябва да дефинирате потребителите в базата данни на LimeSurvey и да им присвоите правилния набор от права, за да им позволите достъп до административния панел.

След това на потребител се предоставя достъп до LimeSurvey, ако и само ако:

  • той е бил удостоверен на уеб сървъра;
  • неговото име за вход е дефинирано като потребител в потребителската база данни на LimeSurvey (след това на потребителя се предоставя привилегии на потребителя, дефиниран в потребителската база данни на LimeSurvey).

Делегиране на удостоверяване с автоматично импортиране на потребител

Когато управлявате огромна потребителска база данни, понякога е по-лесно автоматично да импортирате потребители в базата данни на LimeSurvey:

  • 'auth_webserver_autocreate_user: Ако е зададено на 'true', LimeSurvey ще се опита автоматично да импортира потребители, удостоверени от уеб сървъра, но все още не е в неговата потребителска база данни.
  • auth_webserver_autocreate_profile: Масив, описващ профила по подразбиране, който ще бъде присвоен на потребителя, включително пълното (фалшиво) име, имейл и привилегии.

Ако искате да персонализирате потребителския профил, така че да съответства на влезлия потребител, ще трябва да разработите проста функция, наречена hook_get_autouserprofile - с тази функция можете да извличате от централна база данни с потребителски акаунти (за например от LDAP директория) истинското пълно име, имена и имейл на конкретен потребител. Можете дори да персонализирате неговите привилегии в системата въз основа на групите, които са му разпределени във външната база данни.

Функцията hook_get_auth_webserver_profile приема потребителското име за вход като единствен аргумент и може да върне:

  • False или празен масив - в този случай на потребителя е отказан достъп до LimeSurvey;
  • масив, съдържащ всички общи записи в потребителския профил, както е описано в $WebserverAuth_autouserprofile
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
     ... from groups defined in your backend set $user_admin_status_frombackend_0_or_1
     return Array(
                     'full_name' => "$user_name_from_backend",
                     'email' => "$user_email_from_backend",
                     'lang' => '$user_lang_from_backend',
                     'htmleditormode' => 'inline',
                     'templatelist' => 'default,basic,MyOrgTemplate',
                     'create_survey' => 1,
                     'create_user' => 0,
                     'delete_user' => 0,
                     'superadmin' => $user_admin_status_frombackend_0_or_1,
                     'configurator' =>0,
                     'manage_template' => 0,
                     'manage_label' => 0);
}

     // If user should be denied access, return an empty array

     // return Array();
  Опционалната функция 'hook_get_auth_webserver_profile' е само за напреднали потребители! За повече подробности, моля, прочетете коментарите от файла config-defaults.php.


Съпоставяне на потребителско име

В случай, че някои потребители имат външно потребителско име, което е различно от тяхното потребителско име в LimeSurvey, може да ви е полезно да използвате съпоставяне на потребителско име. Това се прави в LimeSurvey с помощта на параметъра auth_webserver_user_map. Например, представете си, че нямате дефинирано потребителско име „admin“ във вашата външна база данни за удостоверяване. След това, за да влезете в LimeSurvey като администратор, ще трябва да съпоставите вашето външно потребителско име (нека го наречем „моето име“) към администраторското име за вход в LimeSurvey. Съответната настройка е:

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

След успешно удостоверяване с потребителско име 'myname' и парола за уеб сървър, вие ще бъдете директно упълномощени да използвате LimeSurvey като потребител 'admin'.

Това има сериозни последици за сигурността, така че го използвайте внимателно. Освен това защитете своя config.php от достъп за запис от уеб сървъра.

Използвайте еднократни пароли

Потребителят може да отвори страницата за вход в LimeSurvey на default.com/limesurvey/admin и да въведе потребителското име и еднократната парола, които преди това са били записани в таблицата с потребители (колона one_time_pw) от външно приложение.

Тази настройка трябва да бъде включена във файла config.php, за да се даде възможност за използване на еднократни пароли (по подразбиране = false).

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

Повече информация можете да намерите в секция „Управление на потребители“.


Настройки за криптиране (New in 4.0.0 )

  Внимание : Веднъж зададени, ключовете за криптиране никога не трябва да се променят, в противен случай всички криптирани данни могат да бъдат загубени!


Template:Забележка

Вижте шифроване на данни за подробности относно тази функция.

  • 'encryptionkeypair'
  • encryptionpublickey
  • 'encryptionsecretkey'

Разширени настройки на url

  • 'publicurl:' Това трябва да бъде настроено на URL местоположението на вашите 'публични скриптове'. Публичните скриптове са тези, които се намират в папката "limesurvey" (или каквото име сте дали на директорията, в която се съхраняват всички останали скриптове и директории). Тази настройка е налична в config.php и се използва, когато LimeSurvey се нуждае от абсолютен url (например когато се изпращат имейли с токени).
  • 'homeurl:' Това трябва да бъде зададено към URL местоположението на вашите административни скриптове. Те се намират в папката /limesurvey/admin. Това трябва да бъде зададено на местоположението на WEB URL адреса - например, http://www.example.com/limesurvey/html/admin. Не добавяйте наклонена черта в края към този запис. Настройката по подразбиране в config.php се опитва да открие името на вашия сървър автоматично, като използва настройка на променлива на php - {$_SERVER [ 'SERVER_NAME']} <code>{$_SERVER [ 'SERVER_NAME']}</code> {$_SERVER [ 'SERVER_NAME']} . В повечето случаи можете да оставите това и просто да промените остатъка от този низ, за да съответства на името на директорията, в която сте поставили скриптовете на LimeSurvey.
  • tempurl: Това трябва да бъде задайте на URL местоположението на вашата директория "/limesurvey/tmp" - или на директория, в която бихте искали LimeSurvey да използва за обслужване на временни файлове.
  • uploadurl: Това трябва да бъде зададено на URL местоположението на вашата директория "/limesurvey/upload" - или на директория, в която бихте искали LimeSurvey да използва за обслужване на качени файлове. Това ви позволява да зададете качени файлове на друг домейн с URL адреси.

Разширени настройки на пътя

  • 'homedir: Това трябва да бъде зададено на местоположението на физическия диск на вашите административни скриптове - например "/home/usr/htdocs/limesurvey/admin". Не добавяйте наклонена черта в края към този запис. Настройката по подразбиране в config.php се опитва да открие основния път по подразбиране на всичките ви документи, използвайки настройката на променливата на php {$_SERVER [ 'DOCUMENT_ROOT']} <code>{$_SERVER [ 'DOCUMENT_ROOT']}</code> {$_SERVER [ 'DOCUMENT_ROOT']} . В повечето случаи можете да оставите това и просто да промените остатъка от този низ, за да съответства на името на директорията, в която сте поставили скриптовете на LimeSurvey.
  • 'publicdir:' Това трябва да бъде зададено на местоположението на физическия диск на вашите 'публични скриптове'.
  • 'tempdir: Това трябва да бъде зададено на местоположението на физическия диск на вашата директория /limesurvey/tmp, така че скриптът да може да чете и записва файлове.
  • 'uploaddir:' Това трябва да бъде зададено на местоположението на физическия диск на вашата директория /limesurvey/upload, така че скриптът да може да чете и записва файлове.
  • sCKEditorURL:'' url на скрипта fckeditor.
  • fckediteexpandtoolbar: определя дали лентата с инструменти на fckeditor трябва да се отваря по подразбиране.
  • 'pdfexportdir:' Това е директорията с tcpdf.php разширението tcpdf.php.
  • pdffonts: Това е директорията за TCPDF шрифтовете.

Други разширени настройки

Качване на файлове

  • 'allowedthemeuploads:' Типове файлове, разрешени за качване в редактора на теми
  • 'allowedresourceuploads:' Типове файлове, разрешени за качване в секциите с ресурси и с HTML редактора
  • allowedfileuploads (New in 4.0.0 ) Глобално ограничение за типа файл за качване
  • magic_database: (New in 3.17.17 ) Позволява да се използва различен MIME база данни за finfo_open. Може да се актуализира само във файла config.php. Пример: /usr/share/misc/magic.mgc за базиран на redhat linux.
  • magic_file: (New in 3.17.17 ) Позволява да се използва различен файл за получаване на масива от разширение по mime тип от включен. Трябва да е PHP файл, който връща масив. Може да се актуализира само във файла config.php.

Актуализация

  • 'актуализиран:' Тази настройка е във version.php. Може да бъде вярно или невярно. Ако зададете true : когато супер администратор влезе в системата : LimeSurvey проверява дали има налична актуализация и ви показва предупреждение. Ако е зададено на false: не се извършва проверка и не можете да използвате ComfortUpdate.