Actions

オプション設定

From LimeSurvey Manual

Revision as of 10:00, 7 July 2018 by Bravehorse (talk | contribs) (Created page with "=外観= *'''dropdownthreshold'''{{ObsoleteIn|2.50}}: <code>$dropdowns</code>に"R"が選択されている場合、管理者はラジオボタンとして表示されるオ...")

以下のセクションでは、LimeSurveyのGUI(グラフィカルユーザーインターフェイス)によって変更できない設定を編集したい人を対象に説明します。LimeSurveyのルートディレクトリからの変更はすべて自己責任で行ってください。ただ、問題が生じ、さらなるガイダンスが必要な場合は、ディスカッションフォーラムIRCチャンネルに参加して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', // ここでLimeSurveyの既定の設定を更新します。
    )

Yii設定

LimeSurveyは、application/config/config.phpファイルに独自の設定パラメータを持つYiiフレームワークを使用します。LimeSurveyの設定は、Yii設定を介してアクセスすることもできます。

Yii固有の設定はcomponents配列に設定されています。

    'components' => array(
        'db' => array(
            ....
        ),
        'Specific settings'=>array(
            ....
        ),
    ),
Yiiフレームワークの詳細については、次のリンクを参照してください。

データベース設定

データベース設定は、LimeSurveyを初めてインストールするときにインストーラファイルによってconfig.phpに書き込まれます。必要に応じて、config.phpファイルのこの部分を更新することができます。これはあなた自身の責任で行ってください。 Yiiのドキュメントも参照してください。LimeSurveyは、mysql、pgsql、dblib、mssql、sqlsrvのみをサポートしています。

セッション設定

config.phpにいくつかのセッションパラメータを設定することができます(以下の2つの例を確認してください)。config.phpに必要な部分をコメントアウトしたり追加したりすることができます。その他の設定については、Yiiのドキュメントを参照してください。

LimeSurveyにSSL('https')を使用する場合は、config.phpに次の行を追加すると、セッションのセキュリティが向上します。

        // SSL経由でcookieを設定
        'session' => array (
            'cookieParams' => array(
                    'secure' => true, // cookieにSSLを使用する
                    'httponly' => true // cookieは他のプロトコルで使用できない(実験的)
                ),
            ),

Cookieのドメインを修正する場合は、config.phpで次の構文を使用します。

        // cookieのドメインを指定
        'session' => array (
            'cookieParams' => array(
                    'domain' => '.example.org',
                ),
            ),

同じサーバーに複数のインストールしている場合は、LimeSurveyのインスタンスごとに異なるセッション名を設定する方が簡単です。これは、IE11においていくつかの条件で必要となることがあります(issue 12083を参照)。

        // Set the name of the session
        'session' => array (
            'sessionName' => "LimeSurveyN1",
            ),

リクエストの設定

リクエストの設定は重要ですが、デフォルト設定はLimeSurveyの使用に合わせて既に最適化されています。詳細については、Yiiドキュメントを参照してください。

たとえば、LimeSurveyリクエスト設定の設定は、次のように変更することができます(自己責任で行ってください)。

        // CSRF保護を無効にする
        'request' => array(
            'enableCsrfValidation'=>false,    
            ),
        // 特定のURLベースを強制する
        'request' => array(
            'hostInfo' => 'http://www.example.org/'  
            ),
        // CSRF保護のためのCookieドメイン名とパスを設定します。パスは同じドメインに別のインスタンスがある場合に使います。
        'request' => array(
            'csrfCookie' => array( 
                'domain' => '.example.com',
                'path' => '/limesurvey/',
            )
        ),

トークン電子メールのURLのみを更新する必要がある場合は、config.phpファイルでpublicurlを設定してください。

URL設定

既定のURL設定を変更するには、urlManagerを更新します。

       // 短いURLを使う
		'urlManager' => array(
			'urlFormat' => 'path',
			'showScriptName' => false,
		),

アンケートIDの後に次のように.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' => 'warning, error',
					'except' => 'exception.CHttpException.404',
				),
			),
		),
		/* 'urlManager'など他のコンポーネント部分 */
	),
	/* 最終パート('runtimePath'や'config'など) */
);
 Hint: ファイルは既定でlimesurvey/tmp/runtime/application.logに保存されています。これはLimeSurveyのルートフォルダにあります。
  Yiiはランタイムパスを使用します。既定では、ログにはウェブからアクセスできます。ログにはサーバーからの多くの情報を含んでいるかもしれません。ウェブ経由でアクセスできないディレクトリを使用する方がよいでしょう。ルートで設定するか、ランタイムパスを更新して設定できます。

.

ランタイムパス

ランタイムパスは、"webユーザー"が読み書きできるディレクトリでなければなりません。ただし、ランタイムパスには、公開ウェブアクセス領域にある潜在的なセキュリティ情報を持つファイルが含まれています。LimeSurveyは、これらのファイルをLimeSurveyルートディレクトリのtempディレクトリに収集します。このような重要なデータへのアクセスを排除するために、/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から変更できます。
  • surveyPreview_require_Auth: 既定ではtrueに設定されます。これを'false'に設定すると、アンケートパネルにログインしなくても、またアンケートを有効にしなくても、アンケート用URLを使用してアンケートをテストすることができます。この設定は、全体設定ダイアログで上書きするか、config.phpで編集することができます。
  • usercontrolSameGroupPolicy: 既定値はtrueです。LimeSurvey管理インターフェースで定義した管理者でないユーザーは、自身が作成したユーザー、もしくは、少なくとも1つの同じグループに所属する場合にのみ、他のユーザーを見ることができます。この設定は、全体設定ダイアログで上書きするか、config.phpで編集することができます。
  • filterxsshtml: この設定では、アンケート/グループ/質問、回答テキストの中にある不審なHTMLタグと管理インターフェイスの回答テキストにフィルタをかけることができます。LimeSurveyの管理者として作成したユーザーを完全に信頼できる場合で、JavascriptやFlashムービーなどをそのユーザーに許可する場合にのみ'false'にします。スーパー管理者のHTMLはフィルタリングされません。この設定は、全体設定ダイアログで上書きするか、config.phpで編集することができます。
  • demoMode: config.phpでこのオプションが 'true'に設定されている場合、LimeSurveyはデモモードになります。デモモードでは以下の変更が行われます。
    • 管理者の詳細とパスワードの変更を無効にします。
    • テンプレートエディタでのファイルのアップロードを無効にします。
    • 電子メールの招待状やリマインダの送信を無効にします。
    • データベースダンプの作成を無効にします。
    • サイト名、デフォルト言語、デフォルトHTMLエディタモード、XSSフィルタに関する全体設定の変更を無効にします。

リソース

  • sessionlifetime: アンケートセッションが終了するまでの時間を秒単位で定義します。これは、データベースセッションを使用している場合にのみ適用されます。データベースセッションを使用する場合は、config.phpのパラメータを変更するか、全体設定ダイアログから既定値を上書きしてください。
  • memorylimit: LimeSurveyがアクセスできるメモリー量を指定します。少なくとも'128MB'(MB =メガバイト)以上が推奨です。タイムアウトエラーが発生したり、統計の生成やファイルのエクスポートに問題がある場合は、この制限を'256MB'以上にしてください。ウェブサーバーがconfig.phpに上限を設定している場合、この設定は無視されます。
このようなローカル設定は、全体設定ダイアログで行われた変更によって常に無効になる可能性があることに注意してください。

メモリの上限を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の設定ファイルからのみアクセスできます。

外観

  • dropdownthreshold (Obsolete since 2.50): $dropdownsに"R"が選択されている場合、管理者はラジオボタンとして表示されるオプションの最大数を設定してからドロップダウンリストに戻すことができます。多数の選択肢がある質問の場合、ラジオボタンとして一度に表示すると、扱いにくく見え、ユーザーにとってわかりにくくなります。これを多くとも25(既定値)などに設定すると、大きなリストでもアンケート参加者が使いやすいものにすることができます。
  • repeatheadings: 配列質問タイプでは、画面表示の際、複数ページにわたるサブ質問がある場合があります。この設定では、質問のヘッダー情報を繰り返す前に表示するサブ質問の数を決定できます。15程度が程よい設定となります。見出しをまったく繰り返さないようにするには、0に設定します。この設定は、全体設定ダイアログ (2.05 から追加)で上書きされます。
  • minrepeatheadings: 配列の質問で見出しを繰り返す前に必要な残りのサブ質問の最小数。既定値は3で、config.phpで編集できます。
  • defaulttemplate: この設定は、アンケートの'公開リスト'に使用する既定のテーマを指定します。この設定は、全体設定ダイアログで上書きするか、config.phpで編集することができます。
  • defaulthtmleditormode: 統合HTMLエディターのデフォルトモードを設定します。この設定は、全体設定ダイアログで上書きするか、config.phpで編集することができます。有効な設定は次のとおりです。
    • 'inline' - HTMLエディター上でフィールドがインラインで置換されます。動作はゆっくりですが便利で使いやすくなっています。
    • 'popup' - 必要に応じてポップアップでHTMLエディターを実行するアイコンを追加します。より高速ですが、HTMLコードがフォームに表示されます。
    • 'none'- HTMLエディターなし。
  • column_style: display_columnsを使用しているとき、アンケート回答の列の表示方法を定義します。これはconfig.phpファイルで編集できます。有効な設定は次のとおりです。
    • 'css' - さまざまなCSSメソッドの1つを使用して列を作成します(詳細は、テンプレートスタイルシートを参照してください)。
    • 'ul' - 複数の順序のないリストとしてレンダリングされます(既定)。
    • 'table' - 従来のテーブルベースのレイアウトを使用します。
    • NULL - 列の使用を無効にします。

Language & time

  • defaultlang: This should be set to the default language to be used in your administration scripts, and also the default setting for language in the public survey list. This setting can be overridden in the global settings dialog or edited in config.php.
  • timeadjust: If your web server is in a different time zone to the location where your surveys will be based, put the difference between your server and your home time zone here. For example, I live in Australia, but I use a US web server. The web server is 14 hours behind my local time zone. So my setting here is "14". In other words, it adds 14 hours to the web servers time. This setting is particularly important when surveys timestamp the responses. This setting can be overridden in the global settings dialog or edited in config.php.

Survey behavior

  • deletenonvalues: Use this feature with caution. By default (a value of 1), irrelevant questions are NULLed in the database. This ensures that the data in your database is internally consistent. However, there are rare cases where you might want to hold onto irrelevant values, in which case you can set the value to 0. For example, you ask a male person his gender, and he accidentally says 'female' and then answers some female-specific questions (questions that are conditioned on being female, so are only relevant for women). Then, he realizes his mistake, backs up, sets the gender to 'male', and continues with the survey.  Now, the female-specific questions are irrelevant. If $deletenonvalues==1, those irrelevant values will be cleared (NULLed) in the database. If $deletenonvalues==0, his erroneous answers will not be deleted, so they will still be present in the database when you analyze it.
  • shownoanswer: When a radio button/select type question that contains editable answers (i.e.: List, Array questions) is not mandatory and 'shownoanswer' is set to 1, an additional 'No answer' entry is shown - so that participants may choose to not answer the question. Some people prefer this not to be available. This setting can be overridden from the global settings dialog or edited in config.php. Valid values are:
    • '0': No;
    • '1': Yes;
    • '2': The Survey admin can choose.
  • printanswershonorsconditions: This setting determines if the printanswers feature will display entries from questions that were hidden by conditions-branching (Default: 1 = hide answers from questions hidden by conditions).
  • hide_groupdescr_allinone: This setting is relevant for all-in-one surveys using conditions . When this is set to 'true', the group name and description is hidden if all questions in the group are hidden. The default value is 'true' - hides group name and description when all questions in the group are hidden by conditions. It can be edited in config.php.
  • showpopups:  Show popup messages if mandatory or conditional questions have not been answered correctly:
    • '1'=Show popup message (default);
    • '0'=Show message on page instead;
    • '-1'=Do not show the message at all (in this case, users will still see the question-specific tips indicating which questions must be answered).

Development and debugging

  • debug: With this setting, you set the PHP error reporting to E_ALL. This means that every little notice, warning or error related to the script is shown. This setting should be only switched to '1' if you are trying to debug the application for any reason. If you are a developer, switch it to '2'. Don't switch it to '1' or '2' in production since it might cause path disclosure. The default value is '0' and it can be edited in config.php.
  • debugsql: Activate this setting if you want to display all SQL queries executed for the script on the bottom of each page. Very useful for the optimization of the the number of queries. In order to activate it, change the default value to '1' from the config.php file.

In the case in which you experience an error in the application, we strongly recommend to activate the debug setting in order to get a more detailed error that you can submit with the bug report:

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

Email settings

All the settings from below can be overridden in the global settings dialog.

  • 'emailmethod: This determines how email messages are being sent. The following options are available:
    • 'mail:' it uses internal PHP mailer;
    • 'sendmail:' it uses sendmail mailer;
    • 'smtp:' it uses SMTP relaying. Use this setting when you are running LimeSurvey on a host that is not your mail server.
  • 'emailsmtphost: If you use 'smtp' as $emailmethod, 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'.
  • emailsmtpuser: If your SMTP-server needs authentication then set this to your user name, otherwise it must be blank.
  • emailsmtppassword: If your SMTP-server needs authentication then set this to your password, otherwise it must be blank.
  • emailsmtpssl: Set this to 'ssl' or 'tls' to use SSL/TLS for SMTP connection.
  • 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.

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 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:
    • 'show': Allows you to visualize both complete and incomplete answers;
    • 'filter': It shows only complete answers;
    • 'incomplete': Show only incomplete answers.
  • 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.
  • 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).
  • 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.
    • 'usepdfexport': Set '0' to disable and '1' to enable;
    • '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 PDF core fonts.
    • '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;
    • '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;
    • '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;
    • 'pdforientation': Set 'L' for Landscape or 'P' for portrait format. It can be edited from the config.php file.
  • 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;
    • 'alternatechartfontfile': It's an array with language keys and their corresponding font. It can be edited in the config.php file.
  • 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.

LDAP settings

As this is an extensive topic we have moved LDAP settings to another page.

Authentication

Starting with LimeSurvey 2.05, authentication will be handled by plugins. As a result, the information below might be outdated. See the plugins wiki for most up to date information.

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:

  • set auth_webserver to 'true' in 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);
  • this can only replace the LimeSurvey GUI authentication system, not the survey invitation system (participant interface).

Authentication delegation with no automatic user import

Please note that Authentication Delegation doesn't bypass the LimeSurvey authorization system by default - 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.

A user is then granted access to LimeSurvey if and only if:

  • 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).

Authentication delegation with automatic user import

When managing a huge user database, it is sometimes easier to auto-import users in the LimeSurvey database:

  • 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_profile: An array describing the default profile that will be assigned to the user, including the full (fake) name, email, and privileges.

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.

The hook_get_auth_webserver_profile function takes the user login name as the only argument and can return:

  • False or an empty array - in this case the user is denied access to LimeSurvey;
  • an array containing all common userprofile entries as described in the $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();
  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.


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:

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

After a successful authentication with the 'myname' login and web server password, you'll be directly authorized to use LimeSurvey as the 'admin' user.

This has serious security implications, so use it with care. Also, protect your config.php from write access by the web server.

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.

This setting has to be turned on (config['use_one_time_passwords'] = true;) to enable the usage of one-time passwords (default = false). More information can be found in the "Manage Users" section.

Advanced path settings

  • 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 - {$_SERVER['SERVER_NAME']}. 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.
  • 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 token emails are sent.
  • 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 store temporary files, including uploads. This directory must be set to read & write for your webserver (e.g. chmod 755).
  • imagefiles: By default, you should leave this pointing to the URL location of /limesurvey/admin/images - where the images are initially installed. You may, however, prefer to move these images to another location/ If this is the case, point this to the URL directory where they are stored.
  • 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 {$_SERVER['DOCUMENT_ROOT']}. 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.
  • publicdir: This should be set to the physical disk location of your 'public scripts'.
  • tempdir: This should be set to the physical disk location of your /limesurvey/tmp directory so that the script can read and write files.
  • sCKEditorURL: url of the fckeditor script.
  • fckeditexpandtoolbar: defines if the fckeditor toolbar should be opened by default.
  • pdfexportdir: This is the directory with the tcpdf.php extensiontcpdf.php.
  • pdffonts: This is the directory for the TCPDF fonts.