Actions

Optional settings/ja: Difference between revisions

From LimeSurvey Manual

(Updating to match new version of source page)
(Created page with "{{Alert|注意:iframeを許可するいかなる設定を行っても、ブラウザーまたはユーザーの設定により動作しない場合があります。この設定は、Firefox 81.0.2から115、Chromium 85.0.4183.121から119、Edge 119の既定の設定でテストされています。'''この機能はサポート外で、コミュニティサポートのみとなります。'''}}")
 
(173 intermediate revisions by 3 users not shown)
Line 2: Line 2:
__TOC__
__TOC__


=How to modify optional settings=
以下のセクションでは、LimeSurveyのGUI(グラフィカルユーザーインターフェイス)によって変更できない設定を編集したい人を対象に説明します。LimeSurveyのルートディレクトリからの変更はすべて自己責任で行ってください。ただ、問題が生じ、さらなるガイダンスが必要な場合は、[https://www.limesurvey.org/forum ディスカッションフォーラム]や[irc://irc.freenode.net/limesurvey|IRC IRCチャンネル]に参加してLimeSurveyコミュニティの助けを借りてください。


The optional settings can only be found in the file /application/config/config-defaults.php of a standard installation - some of them are only used for first installation, some of them overriden in [[Global settings]].
<span id="Introduction"></span>
=はじめに=


{{Alert|If you want to change these settings please do not change it in config-defaults.php but copy the particular setting/line over to /application/config/config.php in <nowiki>'config'=>array()</nowiki> and change it there.}}
設定を変更するには、オプションの設定を編集する必要があります。これらは、LimeSurveyのルートディレクトリーにある、/application/config/'''config-defaults.php'''にあります。標準インストールの既定の設定は、config-defaults.phpにあります。[[Global settings/ja|グローバル設定]]ダイアログを使用して上書きできるものもありますが、そうでないものは手動で編集する必要があります。 
All settings in config.php overwrite the default values from config-defaults.php and some of these settings get overridden in the Global settings dialog{{NewIn|1.87}} . This way it is much easier to upgrade your installation at a later time!


To update/add the LimeSurvey settings in /application/config/config.php you have to update the config array:
{{Alert|これらの設定を変更したい場合は、config-defaults.phpで変更せず、該当の設定/行を/application/config/'''config.php'''の<nowiki>'config'=>array( )</nowiki>の中にコピーし、そこで変更します。config.phpファイルから新たに変更/導入されたすべての設定は、config-defaults.phpの既定値よりも優先されます。}}
 
アップグレードが行われると、config-defaults.php設定だけが変更されます。したがって、config.phpファイルを編集すると、カスタマイズした設定が保存されます。
 
/application/'''config/config.php'''にあるLimeSurvey設定を更新/追加するには、config配列を更新します。
<syntaxhighlight lang="php" enclose="pre">
<syntaxhighlight lang="php" enclose="pre">
     'config'=>array(
     'config'=>array(
         'debug'=>0,
         'debug'=>0,
         'debugsql'=>0,
         'debugsql'=>0,
         'LimeSurveySetting'=>'New value',
         'LimeSurveySetting'=>'New value', // ここでLimeSurveyの既定の設定を更新します。
     )
     )
</syntaxhighlight>
</syntaxhighlight>


=Yii settings=
<span id="Yii_settings"></span>
LimeSurvey uses the Yii framework and Yii has its own configuration parameters in the application/config/config.php file. You can access some specific configuration settings of LimeSurvey also via the Yii configuration.
=Yii設定=


The Yii-specific settings are set in the components array:
LimeSurveyは、application/config/'''config.php'''ファイルに独自の設定パラメータを持つYiiフレームワークを使用します。LimeSurveyの設定は、Yii設定を介してアクセスすることもできます。
 
config.php配列はconfig全体にマージされるので、config.phpファイル内のYiiパラメータを置き換えることができます。
 
Yii固有の設定はcomponents配列に設定されています。
<syntaxhighlight lang="php" enclose="pre">
<syntaxhighlight lang="php" enclose="pre">
     'components' => array(
     'components' => array(
Line 33: Line 41:
</syntaxhighlight>
</syntaxhighlight>


==Database settings==
{{Note|Yiiフレームワークの詳細については、[http://www.yiiframework.com/doc-2.0/guide-index.html 次のリンク]を参照してください。}}
The database settings are written by the installer to the config.php file when you install LimeSurvey for the first time. If needed you can update this part of the config. Please remember that you do this at your own risk.
 
See also the [[http://www.yiiframework.com/doc/blog/1.1/en/prototype.database#establishing-database-connection Yii documentation]], and please remember that LimeSurvey supports only the database types mysql,pgsql,dblib,mssql, and sqlsrv.
==データベース設定==
データベース設定は、LimeSurveyを初めてインストールするときにインストーラファイルによってconfig.phpに書き込まれます。必要に応じて、config.phpファイルのこの部分を更新することができます。これはあなた自身の責任で行ってください。
[http://www.yiiframework.com/doc/blog/1.1/en/prototype.database#establishing-database-connection Yiiのドキュメント]も参照してください。LimeSurveyは、mysql、pgsql、dblib、mssql、sqlsrvのみをサポートしています。
 
<span id="Session_settings"></span>
==セッション設定==


==Session settings==
config.phpにいくつかのセッションパラメータを設定することができます(以下の2つの例を確認してください)。config.phpに必要な部分をコメントアウトしたり追加したりすることができます。その他の設定については、[http://www.yiiframework.com/doc/api/1.1/CHttpSession Yiiのドキュメント]を参照してください。
You can set some session parameters in config.php, the first example is the session in the database. You can uncomment/add the part needed in config.php. See [[http://www.yiiframework.com/doc/api/1.1/CHttpSession Yii Documentation]] for other settings.


If you use SSL ('https') for your LimeSurvey installation adding the following lines to your config.php will increase session security:
{{Alert|同じサーバー上で複数のLimeSurveyインスタンスを実行するようにセッション設定を修正する必要がある場合は、crsf cookieの[[Optional_settings/ja#.E3.83.AA.E3.82.AF.E3.82.A8.E3.82.B9.E3.83.88.E3.81.AE.E8.A8.AD.E5.AE.9A|リクエスト設定]]を修正する必要がないかどうかを確認してください。}}
<syntaxhighlight lang="php" enclose="pre">        // Set the cookie via SSL
 
<span id="Use_table-based_sessions"></span>
===テーブルベースのセッションを使用する===
 
LimeSurveyはテーブルベースのセッションを使うことができます。テーブルベースのセッションを使用するには、既定のconfig.phpファイルでコメント部分を見つけ、各行の前にある//を削除します。
 
<syntaxhighlight lang="php" enclose="pre">
        'session' => array (
            'class' => 'application.core.web.DbHttpSession',
            'connectionID' => 'db',
            'sessionTableName' => '{{sessions}}',
        ),
</syntaxhighlight>
 
{{Alert|テーブルベースのセッションは現在のところ、MSSQLサーバーではサポートされていません。}}
 
<span id="Other_sessions_update"></span>
===その他のセッションに関する修正===
 
LimeSurveyにSSL('https')を使用する場合は、config.phpに次の行を追加すると、セッションのセキュリティが向上します。
<syntaxhighlight lang="php" enclose="pre">        // SSL経由でcookieを設定
         'session' => array (
         'session' => array (
             'cookieParams' => array(
             'cookieParams' => array(
                     'secure' => true, // use SSL for cookies
                     'secure' => true, // cookieにSSLを使用する
                     'httponly' => true // Cookies may not be used by other protocols - experimental
                     'httponly' => true // cookieは他のプロトコルで使用できない(実験的)
                 ),
                 ),
             ),
             ),
</syntaxhighlight>
</syntaxhighlight>


If you want to fix the domain for a cookie use this in config.php:
Cookieのドメインを修正する場合は、config.phpで次の構文を使用します。
<syntaxhighlight lang="php" enclose="pre">        // Set the domain for cookie
<syntaxhighlight lang="php" enclose="pre">        // cookieのドメインを指定
         'session' => array (
         'session' => array (
             'cookieParams' => array(
             'cookieParams' => array(
Line 59: Line 91:
</syntaxhighlight>
</syntaxhighlight>


==Request settings==
同じサーバーに複数のインストールしている場合は、LimeSurveyのインスタンスごとに異なるセッション名を設定する方が簡単です。これは、IE11においていくつかの条件で必要となることがあります([https://bugs.limesurvey.org/view.php?id=12083#c42892 issue 12083]を参照)。
The request settings are important, but the default settings are already optimized for LimeSurvey usage. See [http://www.yiiframework.com/doc/api/1.1/CHttpRequest Yii Documentation] for more information.
<syntaxhighlight lang="php" enclose="pre">        // Set the name of the session
        'session' => array (
            'sessionName' => "LimeSurveyN1",
            ),
</syntaxhighlight>
 
==リクエストの設定==
リクエストの設定は重要ですが、デフォルト設定はLimeSurveyの使用に合わせて既に最適化されています。詳細については、[http://www.yiiframework.com/doc/api/1.1/CHttpRequest Yiiドキュメント]を参照してください。


Some example you can modify in your LimeSurvey configuration:<sup>At your own risk</sup> :
たとえば、LimeSurveyリクエスト設定の設定は、次のように変更することができます(自己責任で行ってください)。
<syntaxhighlight lang="php" enclose="pre">        // Disable CSRF protection
<syntaxhighlight lang="php" enclose="pre">        // CSRF保護を無効にする
         'request' => array(
         'request' => array(
             'enableCsrfValidation'=>false,     
             'enableCsrfValidation'=>false,     
             ),
             ),
</syntaxhighlight>
</syntaxhighlight>
<syntaxhighlight lang="php" enclose="pre">        // Enforce a certain base URL
<syntaxhighlight lang="php" enclose="pre">        // 特定のURLベースを強制する
         'request' => array(
         'request' => array(
             'hostInfo' => 'http://www.example.org/'   
             'hostInfo' => 'http://www.example.org/'   
             ),
             ),
</syntaxhighlight>
</syntaxhighlight>
<syntaxhighlight lang="php" enclose="pre">        // Set the cookie domain name for CSRF protection
<syntaxhighlight lang="php" enclose="pre">        // CSRF保護のためのCookieドメイン名とパスを設定します。パスは同じドメインに別のインスタンスがある場合に使います。
         'request' => array(
         'request' => array(
             'csrfCookie' => array( 'domain' => '.example.com' )
             'csrfCookie' => array(  
                'domain' => '.example.com',
                'path' => '/limesurvey/',
            )
         ),
         ),
</syntaxhighlight>
</syntaxhighlight>


If you need updating only the url for token email : you can set your [[Optional_settings#Advanced_Path_Settings|publicurl]] in your config.php file.
トークン電子メールのURLのみを更新する必要がある場合は、config.phpファイルで[[Optional_settings/ja#Advanced_path_settings|publicurl]]を設定してください。
 
 
<span id="Allow_usage_of_session_and_Csrf_Validation_in_iFrame_{{NewIn|v=3.24.3}}"></span>
==iFrameでセッションとCsrf検証の使用を許可する {{NewIn/ja|v=3.24.3}}==
 
[[Global_settings/ja#.E3.82.BB.E3.82.AD.E3.83.A5.E3.83.AA.E3.83.86.E3.82.A3|Iframeの組込]]を許可した場合、いくつかの構成部分を更新する必要があります。
 
{{Alert|注意:iframeを許可するいかなる設定を行っても、ブラウザーまたはユーザーの設定により動作しない場合があります。この設定は、Firefox 81.0.2から115、Chromium 85.0.4183.121から119、Edge 119の既定の設定でテストされています。'''この機能はサポート外で、コミュニティサポートのみとなります。'''}}
 
<span id="Allow_session_start_in_iframe"></span>
=== iframeでのセッション開始を許可する===
 
sessionはsecure(有効なhttps)、httponlyとし、samesiteは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' => 'None',
),
),
</syntaxhighlight>
 
<span id="Allow_csrf_cookie_in_iframe"></span>
=== iframeでcsrf cookieを許可する===


==URL settings==
sessionと同様、secureとし、sameSiteはNoneにします。配列はsessionと同じレベルに追加する必要があります。
To have the same behaviour like the old 'Fancy URL' feature , you can update the urlManager
 
<syntaxhighlight lang="php" enclose="pre"> 'request' => array(
'enableCsrfValidation'=>true,
'csrfCookie' => array(
'sameSite' => 'None',
'secure' => true,
),
),
</syntaxhighlight>
 
<span id="URL_settings"></span>
==URL設定==
 
{{Alert|トークンやその他のメールのURLのみを更新する必要がある場合は、config.phpファイルの[[Optional_settings/ja#.E9.AB.98.E5.BA.A6.E3.81.AAURL.E8.A8.AD.E5.AE.9A|publicurl]]を設定します。}}
 
既定のURL設定を変更するには、urlManagerを更新します。
<syntaxhighlight lang="php" enclose="pre">      // Use short URL
<syntaxhighlight lang="php" enclose="pre">      // Use short URL
'urlManager' => array(
'urlManager' => array(
Line 89: Line 177:
),
),
</syntaxhighlight>
</syntaxhighlight>
Adding .html after the survey id
 
 
アンケートIDの後に次のように.htmlを追加することもできます。
<syntaxhighlight lang="php" enclose="pre">      // Use short URL
<syntaxhighlight lang="php" enclose="pre">      // Use short URL
'urlManager' => array(
'urlManager' => array(
Line 99: Line 189:
),
),
</syntaxhighlight>
</syntaxhighlight>
Find more information in the [http://www.yiiframework.com/doc/guide/1.1/en/topics.url Yii documentation].
詳細は、[http://www.yiiframework.com/doc/guide/1.1/en/topics.url Yiiのドキュメント]を参照してください。


<span id="Logging_settings"></span>
==ロギング設定==
Yiiは、ログを生成するさまざまなソリューションを提供します。詳細については、[http://www.yiiframework.com/doc/guide/1.1/en/topics.logging ロギングについて]をチェックしてください。LimeSurveyは、既定で'1'または'2'を使用しています。これにより、すべてのウェブユーザーがログを参照できます。あなたはYiiを使って自分の設定を直接作成することができます。
たとえば、ファイル内のエラーと警告を記録する簡単な方法は次のとおりです。
<syntaxhighlight lang="php" enclose="pre">
return array(
'components' => array(
/* 'db'など他のコンポーネント部分 */
'log' => array(
'routes' => array(
'fileError' => array(
'class' => 'CFileLogRoute',
'levels' => 'warning, error',
'except' => 'exception.CHttpException.404',
),
),
),
/* 'urlManager'など他のコンポーネント部分 */
),
/* 最終パート('runtimePath'や'config'など) */
);
</syntaxhighlight>
{{Hint|Text=ファイルは既定で<code><nowiki>limesurvey/tmp/runtime/application.log</nowiki></code>に保存されています。これはLimeSurveyのルートフォルダにあります。}}
{{Alert|Yiiはランタイムパスを使用します。既定では、ログにはウェブからアクセスできます。ログにはサーバーからの多くの情報を含んでいるかもしれません。ウェブ経由でアクセスできないディレクトリを使用する方がよいでしょう。ルートで設定するか、[[Optional settings/ja#Yii settings#Runtime path|ランタイムパス]]を更新して設定できます。}}.
<span id="Runtime_path"></span>
==ランタイムパス==
[http://www.yiiframework.com/doc/guide/1.1/en/basics.convention#directory ランタイムパス]は、"webユーザー"が読み書きできるディレクトリでなければなりません。ただし、ランタイムパスには、公開ウェブアクセス領域にある潜在的なセキュリティ情報を持つファイルが含まれています。LimeSurveyは、これらのファイルをLimeSurveyルートディレクトリのtempディレクトリに収集します。このような重要なデータへのアクセスを排除するために、/application/config/config.phpファイルの各行を編集することで、外部からウェブでアクセスできない場所にランタイムパスを設定することができます。
<syntaxhighlight lang="php" enclose="pre">
return array(
  'components' => array(
    […]
    'runtimePath'=>'/var/limesurvey/runtime/',
    'config'=>array(
    […]
    )
  )
)
</syntaxhighlight>
<span id="General_settings"></span>
=全体設定=
=全体設定=


*'''sitename''': Give your survey site a name. This name will appear in the survey list overview and in the administration header. This setting is used only as default value and overridden in the [[Global settings]] dialog {{NewIn|1.87}}.
*'''sitename''': アンケートサイトつける名前です。この名前は、アンケートリストの概要と管理画面のヘッダーに表示されます。既定値は'LimeSurvey'で、[[Global settings/ja|グローバル設定]]ダイアログで上書きするか、config.phpで編集することができます。
*'''siteadminemail:''' This is the default email address of the site administrator and used for system messages and contact options. This setting is used only as default value and overridden by the [[Global settings]] dialog {{NewIn|1.87}}.
*'''siteadminemail:''' サイト管理者の既定の電子メールアドレスで、システムメッセージと連絡先オプションに使用されます。この設定は既定値としてのみ使用され、[[Global settings/ja|グローバル設定]]ダイアログで上書きできます。
*'''siteadminbounce:''' This is the email address where bounced emails will be sent to. This setting is used only as default value and overridden by the [[Global settings]] dialog {{NewIn|1.87}}.
*'''siteadminbounce:''' これは、バウンスされた電子メールの宛先となる電子メールアドレスです。この設定は既定値としてのみ使用され、[[Global settings/ja|グローバル設定]]ダイアログで上書きできます。
*'''siteadminname:''' The real name of the site administrator. This setting is used only as default value and overridden in the [[Global settings]] dialog) {{NewIn|1.87}}.
*'''siteadminname:''' サイト管理者の実際の名前です。この設定は既定値としてのみ使用され、[[Global settings/ja|グローバル設定]]ダイアログで上書きできます。
*'''proxy_host_name:''' This is the host name of your proxy server (if you are behind a proxy and want to update LimeSurvey using ComfortUpdate) {{NewIn|2.05}}.
*'''proxy_host_name:''' プロキシサーバーのホスト名です(サーバーがプロキシの背後にあり、LimeSurveyを[[ComfortUpdate/ja|ComfortUpdate]]を使用して更新したい場合にこれを設定する必要があります)。
*'''proxy_host_port:''' This is the port of your proxy server (if you are behind a proxy and want to update LimeSurvey  using ComfortUpdate) {{NewIn|2.05}}.
*'''proxy_host_port:''' プロキシサーバーのポート番号です(サーバーがプロキシの背後にあり、LimeSurveyを[[ComfortUpdate/ja|ComfortUpdate]]を使用して更新したい場合にこれを設定する必要があります)。


= Security=
<span id="Security"></span>
= セキュリティ=


* '''maxLoginAttempt''': If the user enters password incorrectly this is the number of attempts before the users is locked out by IP address.  
* '''maxLoginAttempt''': ユーザーがパスワードを入力する際の、IPアドレスをブロックまたはロックアウトするまでの試行回数です。既定値は3で、config.phpから変更できます。
* '''timeOutTime''': If the user enters password incorrectly for  <maxLoginAttempt> set the lock out time (in seconds).
* '''timeOutTime''': ユーザーがパスワードを誤って入力し<maxLoginAttempt>に対してに達した場合、<timeOutTime>秒間ロックアウトされます。既定値は10分で、config.phpから変更できます。
* '''surveyPreview_require_Auth''': true by default. If you set this to false any person can test your survey using the survey URL - without logging in to the administration and without having to activate the survey first. This setting is a default value and can be overridden in the [[Global settings]] dialog {{NewIn|1.87}}.
* '''maxLoginAttemptParticipants''': 参加者が、有効なトークンを入力しなかった場合に、参加者のIPアドレスがブロック/ロックアウトされるまでの試行回数。既定値は3であり、config.phpで変更できます。
* '''usercontrolSameGroupPolicy''' :  Set to true by default. By default non-admin users defined in the LimeSurvey management interface will only be able to see users they create or users that belongs to at least one same group. This setting is a default value and can be overridden in the [[Global settings]] dialog.
* '''timeOutParticipants''': 参加者が<maxLoginAttemptParticipants>で指定した回数分正しくないトークンを入力した場合、その参加者は<timeOutParticipants>秒の間、ロックアウトされます。既定値は10分であり、config.phpで変更できます。
*'''filterxsshtml:''' This setting enables filtering of suspicious html tags in survey, group, questions and answer texts in the administration interface. Only leave this to 'false' if you absolutely trust the users you created for the administration of  LimeSurvey and if you want to allow these users to be able to use Javascript, Flash Movies, etc. <span class="warning">Super admin never have their HTML filtered</span>.  This setting is a default value and can be overridden in the [[Global settings]] dialog {{NewIn|1.87}}.
* '''surveyPreview_require_Auth''': 既定ではtrueに設定されます。これを'false'に設定すると、アンケートパネルにログインしなくても、またアンケートを有効にしなくても、アンケート用URLを使用してアンケートをテストすることができます。この設定は、[[Global settings/ja|全体設定]]ダイアログで上書きするか、config.phpで編集することができます。
*'''demoModeOnly:''' If this option is set to true, then LimeSurvey will go into demo mode. The demo mode changes the following things:
* '''usercontrolSameGroupPolicy''': 既定値はtrueです。LimeSurvey管理インターフェースで定義した管理者でないユーザーは、自身が作成したユーザー、もしくは、少なくとも1つの同じグループに所属する場合にのみ、他のユーザーを見ることができます。この設定は、[[Global settings/ja|全体設定]]ダイアログで上書きするか、config.phpで編集することができます。
** Disables changing of the admin user's details and password
*'''filterxsshtml:''' この設定では、アンケート/グループ/質問、回答テキストの中にある不審なHTMLタグと管理インターフェイスの回答テキストにフィルタをかけることができます。LimeSurveyの管理者として作成したユーザーを完全に信頼できる場合で、JavascriptやFlashムービーなどをそのユーザーに許可する場合にのみ'false'にします。<span class="warning">スーパー管理者のHTMLはフィルタリングされません。</span>この設定は、[[Global settings/ja|全体設定]]ダイアログで上書きするか、config.phpで編集することができます。
** Disables uploading files on the template editor
*'''demoMode:''' config.phpでこのオプションが 'true'に設定されている場合、LimeSurveyはデモモードになります。デモモードでは以下の変更が行われます。
** Disables sending email invitations and reminders
** 管理者の詳細とパスワードの変更を無効にします。
** Disables doing a database dump
** テンプレートエディタでのファイルのアップロードを無効にします。
** Disables the ability to modify the following global settings: Site name, Default language, Default Htmleditor Mode, XSS filter
** 電子メールの招待状やリマインダの送信を無効にします。
** データベースダンプの作成を無効にします。
** サイト名、デフォルト言語、デフォルトHTMLエディタモード、XSSフィルタに関する全体設定の変更を無効にします。
*'''forcedsuperadmin:''' すべてのLimeSurveyに対するすべての権限を持つユーザーIDの配列。この設定はconfig.phpファイルでのみ更新できます。ユーザーの権限は、他のスーパー管理者であっても[[Manage_users/ja#Set_global_permissions_for_a_user|ユーザーのグローバル権限]]は編集できません。既定では、この権限を持つユーザーのidは1です。インストール後に最初に作成されるユーザーです。
*'''force_ssl:''' LimeSurveyを強制的にHTTPSを介して実行するか、HTTPSをブロックするかを設定します。全体設定管理GUIの[https://manual.limesurvey.org/Global_settings/ja#.E3.82.BB.E3.82.AD.E3.83.A5.E3.83.AA.E3.83.86.E3.82.A3 HTTPSを強制]を参照してください。
*'''ssl_emergency_override:'''この設定はSSLを強制的にオフにします。全体設定でHTTPS/SSLがオンの状態で、サーバーでHTTPSが有効になっていない場合、SSLをオフにするには、データベースの値を直接変更するしかありません。これにより、全体設定でForce Secureに変更していても、HTTPSを強制的にオフにできます。これは、問題を修正するまでtrueに変更する緊急の場合を除き、常にfalseでなければなりません。この設定は、config.phpファイルを介してのみ設定できます。
*'''ssl_disable_alert:''' SSLを強制できない、または強制したくない場合は、SSLを強制しない旨のスーパー管理者への警告を無効にします。この設定は、config.phpファイルを介してのみ設定できます。


= Resources=
= リソース=
*'''sessionlifetime:''' Defines the time in seconds after which a survey session expires. It applies only if you are using database sessions. This setting is overridden in the [[Global settings]] dialog) {{NewIn|1.87}}.
*'''sessionlifetime:''' アンケートセッションが終了するまでの時間を秒単位で定義します。これは、データベースセッションを使用している場合にのみ適用されます。データベースセッションを使用する場合は、config.phpのパラメータを変更するか、[[Global settings/ja|全体設定]]ダイアログから既定値を上書きしてください。
*'''memorylimit:''' This sets how much memory LimeSurvey can access. '128M' is the minimum (M=Megabyte) recommended. If you receive time out errors or have problems generating statistics or exporting files raise this limit to '256M' or higher. If your webserver has set a higher limit then this setting will be ignored.
*'''memorylimit:''' LimeSurveyがアクセスできるメモリー量を指定します。少なくとも'128MB'(MB =メガバイト)以上が推奨です。タイムアウトエラーが発生したり、統計の生成やファイルのエクスポートに問題がある場合は、この制限を'256MB'以上にしてください。ウェブサーバーがconfig.phpに上限を設定している場合、この設定は無視されます。


<div class="warningbox">Please mind that such local settings by an application can always be overruled by global server settings.</div>
<div class="warningbox">'''このようなローカル設定は、全体設定ダイアログで行われた変更によって常に無効になる可能性があることに注意してください。'''</div>


To increase the memory limit to 128M you could also try adding:
メモリの上限を128Mに増やすには、以下を追加することもできます。
*memory_limit = 128M to your server's main php.ini file (recommended, if you have access)
*memory_limit = 128M(サーバーのメインのphp.iniファイル。アクセス権がある場合におすすめします。)
*memory_limit = 128M to a php.ini file in the LimeSurvey root
*memory_limit = 128M (LimeSurveyルートのphp.iniファイル。)
*php_value memory_limit 128M in a .htaccess file in the LimeSurvey root
*php_value memory_limit 128M (LimeSurveyルートの.htaccessファイル。)


=Appearance=
*'''max_execution_time:''' スクリプトの実行が許可される秒数を設定します。これに達すると、スクリプトは'致命的エラー'を返します。巨大なアンケートデータと統計情報をエクスポートするため、LimeSurveyでは既定で1200秒に設定してあります。必要に応じて、より大きな時間またはより短い時間を設定することができます。PHPの設定ファイルからのみアクセスできます。
*'''lwcdropdowns:'''{{ObsoleteIn|2.0}} This can be set to either "L" or "R". Setting it to "R" will result in 'List with Comment' questions being displayed as radio buttons, whereas "L" will result in 'List with Comment' questions being displayed in a 'dropdown' list box .
*'''dropdownthreshold:''''{{ObsoleteIn|2.50}} When you have selected "R" for $dropdowns, this allows you to set a maximum number of options that will display as radio buttons, before converting back to a dropdown list. If you have a question that has a large number of options, displaying them all as radio buttons can look unweildy, and be counter-intuitive to users. Setting this to a maximum of, say 25 (which is the default) means that large lists are easier for the survey participant to use.
*'''repeatheadings:''' With the Array type question, often you'll have a lot of subquestions, which - when displayed on screen - take up more than one page. This setting lets you decide how many subquestions should be displayed before repeating the header information for the question. A good setting for this is around 15. If you don't want the headings to repeat at all, set this to 0. This setting is overridden in the [[Global settings]] dialog) {{NewIn|2.05}}.
*'''minrepeatheadings:''' The minimum number of remaining subquestions that are required before repeating the headings in Array questions.
*'''defaulttemplate:''' This setting specifys the default theme used for the 'public list' of surveys. This setting is overridden in the [[Global settings]] dialog) {{NewIn|1.87}}.
*'''defaulthtmleditormode:''' Sets the default mode for integrated HTML editor. This setting is overridden in the [[Global settings]] dialog) {{NewIn|1.87}}. Valid settings are:
** ''inline'': Inline replacement of fields by an HTML editor. Slow but convenient and user friendly
** ''popup'': Adds an icon that runs the HTML editor in a popup if needed. Faster, but HTML code is displayed in the form.
** ''none'': No HTML editor
*'''column_style:''' Defines how columns are rendered for survey answers when using [[QS:Display_columns|display_columns]]. Valid settings are:
** 'css' using one of the various CSS only methods for creating columns (see template style sheet for details).
** 'ul' using multiple floated unordered lists. (default)
** 'table' using conventional tables based layout.
** NULL disable the use of columns


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


=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.  Say you ask the 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.
*'''defaultlang:''' これは、管理スクリプトで使用される既定の言語、公開アンケートリストの既定の言語として設定する必要があります。この設定は、[[Global settings/ja|全体設定]]ダイアログで上書きするか、config.phpで編集することができます。
*'''shownoanswer:''' When a question of a radio button/select type that contains editable answers (ie: 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 is overridden in the [[Global settings]] dialog) {{NewIn|1.87}}. Valid values are:
*'''timeadjust:''' ウェブサーバーがアンケートの対象となる場所と異なるタイムゾーンにある場合は、サーバーとホームタイムゾーンの差をここに入力します。たとえば、オーストラリアに住んでいるとして、米国のウェブサーバーを使用しているとします。ウェブサーバーは、現地時間から14時間遅れています。この場合の設定は"14"です。この設定は、アンケートの回答にタイムスタンプを付ける場合に特に重要です。この設定は、[[Global settings/ja|全体設定]]ダイアログで上書きするか、config.phpで編集することができます。
**0 = no ,
**1 = yes ,
**2 = 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:'''{{NewIn|1.85}} 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. (Default: true  - hide group name and description when all conditions in the group are hidden by conditions)
*'''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. That means every little notice, warning or error with 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. (Default: 0)
*'''deletenonvalues:''' この機能は慎重に使用してください。既定値(1)にすると、表示条件に合致しない質問はデータベースにNULLが格納されます。これにより、データベースのデータの内部的な一貫性が保証されます。ただし、表示条件に合致しない場合の関連値、つまり0を保持したい場合があります。たとえば、男性に性別を問い合せ、誤って'女性'と答えてから、女性向けの質問(女性であることを前提とした質問で、女性の場合のみ表示されます)に答えたとします。回答者は間違いに気づき、前に戻って性別を'男性'に変え、アンケートを継続します。このとき、女性向けの質問は表示条件に合致しないことになります。<code>$deletenonvalues==1</code>となっている場合、値がクリアされデータベースにはNULLが格納されます。<code>$deletenonvalues==0</code>の場合、間違った答えは削除されず、分析の際にデータベースに残ったままになります。
*'''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 optimizing the number of queries
*'''shownoanswer:''' 編集可能な回答(すなわち、リスト、配列の質問)を含むラジオボタン/選択タイプの質問が回答必須ではなく、 'shownoanswer'が1に設定されている場合、追加で'回答なし'の項目が表示され、回答者が回答しないことを選択することができます。これを利用できないようにしたいと考えることもあるでしょう。この設定は、[[Global settings/ja|全体設定]]ダイアログで上書きするか、config.phpで編集することができます。有効な値は次のとおりです。
**'0': いいえ
**'1': はい
**'2': アンケート管理者が選択できる
*'''printanswershonorsconditions:''' 回答印刷機能で、条件分岐によって隠された質問のエントリーを表示するかどうかを定義します(既定値は1で、条件により隠された質問の回答を非表示にします)。
*'''hide_groupdescr_allinone:''' この設定は、条件を使用したオールインワンアンケートに関係します。これを'true'に設定すると、グループ内のすべての質問が非表示になっていると、グループ名と説明が非表示になります。既定値は'true'で、グループ内のすべての質問が条件によって非表示となる場合、グループ名と説明も非表示になります。config.phpで編集することができます。
*'''showpopups:'''  必須または条件付きの質問に正しく答えられなかった場合にポップアップメッセージを表示します。
**  '2' = テーマオプションで決める(既定)
** '1'=ポップアップメッセージを表示する
** '0'=ページにメッセージを表示する
** '-1'=メッセージを一切表示しない(この場合、回答が必須であることを示すヒントが表示されます)


If you experience an error in the application, we strongly recommend to acivate the debug setting so you usually get some more detailed error that you can submit with the bug report:
<span id="Numerical_question_type_behavior"></span>
==数値の質問タイプの動作==
 
*'''bFixNumAuto:''' 数値フィールドを自動的にフィルタリングして、すべての非数値を削除できます。既定では有効になっていますが、グローバルに無効にすることができます。この設定は、コアテーマオプションの''Fix automatically numeric value(数値を自動的に修正する)''に関連しています。''はい''に対しては有効、''式のみ''と''いいえ''に対しては無効となります。
*'''bNumRealValue:''' 式マネージャーで使用される数値フィールドを、修正するかどうかを設定できます。既定では修正するように設定されています。数値型の質問NUMERICについて、無効(0)に設定すると、{NUMERIC}に不正な文字が含まれる場合、<nowiki>''</nowiki>が送信されます。有効(1)に設定すると、{NUMERIC}に入力された文字が送信されます。この設定は、コアテーマオプションの''Fix automatically numeric value(数値を自動的に修正する)''に関連しています。''はい''に対しては有効、''式のみ''と''いいえ''に対しては無効となります。
 
=開発とデバッグ=
*'''デバッグ:''' この設定では、PHPエラー報告をE_ALLに設定します。これは、スクリプトに関連する通知、警告、またはエラーが小さなものでもすべて表示されることを意味します。この設定は、何らかの理由でアプリケーションをデバッグしようとしている場合にのみ '1'に切り替える必要があります。開発者の場合は、'2'に切り替えます。パスの開示につながる可能性があるため、本番環境では'1'または '2'にしないでください。既定値は '0'で、config.phpで編集することができます。
*'''debugsql:''' 各ページの下部のスクリプトに対して実行されたすべてのSQL問い合わせを表示する場合に、この設定をアクティブにします。クエリ数の最適化に非常に便利です。有効にするには、config.phpファイルで既定値から'1'に変更します。
*'''use_asset_manager:''' 既定では、デバッグモードではアセットマネージャーは無効ですが、この設定によりデバッグモードでもアセットマネージャーを使用することができます。
 
アプリケーションでエラーが発生した場合は、バグレポートで提出できる詳細なエラーを取得するため、デバッグ設定を有効にすることを強くお勧めします。


<syntaxhighlight lang="php" enclose="pre">
<syntaxhighlight lang="php" enclose="pre">
Line 178: Line 333:
</syntaxhighlight>
</syntaxhighlight>


= Email Settings=
プラグインで作業をしていて、変数を画面上に素早くダンプするために、traceVar関数を使うことができます。デバッグが設定されている場合は、CWebLogRouteを使ってHTMLページに表示します。使用方法: <code>traceVar($MyVariable)</code>


Note: All these settings in this section are overridden in the [[Global settings]] dialog{{NewIn|1.87}}.
<span id="Email_settings"></span>
*'''emailmethod:'''  This determines how E-mail messages are being sent. The following options are available:
=メール設定=
**'''mail:''' use internal PHP mailer
**'''sendmail:''' use sendmail mailer
**'''smtp:'''use 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 on the token control toolbar, (not the button on the right of each token), sends the maxemails number of invitations, then displays a list of the addresses sent to 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 off and come back at a later time to send the next batch of invites.


= Statistics and Response Browsing=
下のすべての設定は、[[Global settings/ja|全体設定]]ダイアログで上書きすることができます。
*'''usejpgraph:''' {{ObsoleteIn|1.8}} The [http://www.aditus.nu/jpgraph/ JPGraph-library] lets you display the results of your survey in the statistics part of LimeSurvey  in bar- and pie charts. If you have a correctly configured jpgraph class set up on your server, you can turn this feature on or off (1=on, 0=off). Please have a look, every version of PHP needs another version of JPGraph! This feature is currently in development, so expect a few weird outcomes.
*'''emailmethod:'' 電子メールメッセージの送信方法を決定します。次のオプションを使用できます。
*'''jpgraphdir:''' {{ObsoleteIn|1.8}} The physical disk location of the jpgraph class scripts. This setting is only required if $usejpgraph is equal to 1.
**'mail:' 内部のPHPメーラーを使用します。
*'''jpgraphfont:''' {{ObsoleteIn|1.8}} The font to use with graphs. A failsafe setting would be "FF_FONT1"
**'sendmail:' sendmailメーラーを使用します。
*'''embedded:'''{{ObsoleteIn|2.0}} If you want to integrate LimeSurvey into another page then you can turn off sending HTML headers by using this setting and point instead to the header method of a custom function. This is a dirty hack but should work for a quick integration.
**'smtp:' SMTPリレーを使用します。メールサーバーではないホストでLimeSurveyを実行している場合は、この設定を使用します。
*'''filterout_incomplete_answers:''' Control the default behaviour of  filtering incomplete answers when browsing or analyzing responses. For a discussion on incomplete Responses see [[Browsing survey results]]. Since these records can corrupt the statistics, an option is given to switch this filter on or off in several GUI forms. This parameter config.php is just the default state for the incomplete answer filter. The following options are available:
*'''emailsmtphost:'' <code>$emailmethod</code>として'smtp'を使用する場合、ここにSMTPサーバを設定する必要があります。Googleメールを使用している場合は、ポート番号をふかし$emailsmtphost = 'smtp.gmail.com:465'のようにします。
**''show'': Show both complete and incomplete answers
*''emailsmtpuser:'' SMTPサーバーが認証を必要とする場合は、ここにユーザー名を設定します。それ以外の場合は空白にする必要があります。
**''filter'': Show only complete answers
*''emailsmtppassword:'' SMTPサーバーで認証が必要な場合は、パスワードを設定します。それ以外の場合は空白にする必要があります。
**''incomplete'': Show only incomplete answers
*''emailsmtpssl:'' SMTP接続にSSL/TLSを使用するには、'ssl'または 'tls'と設定します。
*'''strip_query_from_referer_url''': This setting determine if the referrer URL saves parameter or not. Default value is "false" (in this case referrer URL saves all parameter). Alternatively this value can be set to "true" and the parameter part of the referrer URL will be removed.
*''maxemails:'' アンケート参加者に招待状またはリマインダを送信するとき、管理者が1回で送信できる電子メールの数を設定します。ウェブサーバーによってメールの容量が異なるため、送信に時間がかかりすぎてメールが届かない場合は、タイムアウトしてエラーが発生する可能性があります。ウェブサーバーによってメールの容量が異なるため、送信に時間がかかりすぎてメールが届かない場合は、タイムアウトしてエラーが発生する可能性があります。大量の電子メールを送信するときにスクリプトタイムアウトエラーが発生した場合は、この設定値を減らしてください。トークンの右側にあるトークンコントロールツールバーにある'案内メールを送付'ボタン(トークンの右にあるボタンではありません)をクリックすると、'maxemails'の招待状が送信され、メール送信済のアドレスのリストが表示され、''"1つのバッチで送信できるよりも多くの電子メールが保留中です。以下をクリックしてメールを送信します。あとXXX通の送信メールがあります。"''という警告が表示され、次のバッチを進めるための"続行ボタン"が表示されます。ユーザーは、一括で電子メールで送信された後、次のバッチをいつ送信するかを決定します。この画面がアクティブな状態で待つ必要はありません。管理者はログオフして後で戻り、次の招待状を送信することができます。
*'''showaggregateddata:''' {{NewIn|1.8}} When activated there are additional values like arithmetic mean and standard deviation at statistics. Furthermore data is aggregated to get a faster overview e.g. 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:''' {{NewIn|1.85}} This feature activates PDF export for printable survey and Print Answers. The PDF export is totally experimental. The output is mostly ugly. At this point no support can be given - if you want to help to fix it please get in touch with us.
**usepdfexport: Set 0 to disable; 1 to enable
**pdfdefaultfont: Default font for the pdf Export
**alternatepdffontfile: an array with key for language and specific font for this language can be replaced or just updated .
**pdffontsize: Fontsize for normal text; Surveytitle is +4; grouptitle is +2
**notsupportlanguages = array('zh-Hant-TW','zh-Hant-HK','zh-Hans','ja','th');
**pdforientation: Set L for Landscape or P for portrait format
*'"Graph setting"'
** chartfontfile : Font file to be used : must be in the server font directory or in ./fot directory
** alternatechartfontfile : an array with key for language and specific font for this language can be replaced or just updated .
*'''showsgqacode:''' {{NewIn|1.91}} This setting is used at the printable survey feature and defaults to ''false''. If you set ''showsgqacode = true;'' the IDs for 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]]=
= 統計と回答の閲覧=
*'''filterout_incomplete_answers:''' 回答を閲覧したり解析したりするときに、未完了の回答をフィルタする既定の動作を制御します。未完了の回答についての議論は、[[Responses & statistics/ja#.E5.9B.9E.E7.AD.94.E6.A6.82.E8.A6.81|アンケート結果閲覧に関するウィキ]]を参照してください。これらのレコードは統計情報を破損する可能性があるため、このフィルタをいくつかのGUIフォームでオンまたはオフに切り替えられるようになっています。パラメーターはconfig.phpで編集できます。次のオプションを使用できます。
**'show': 完了した回答と未完了の回答の両方を表示することができます。
**'filter': 完了した回答のみ表示します。
**'incomplete': 未完了の回答のみ表示します。
*'''strip_query_from_referer_url''': この設定は、参照元URLのパラメーター部分を破棄するかどうかを決定するものです。既定値は'false'です(この場合、リファラーURLはすべてのパラメータを保存します)。一方、この値を'true'に設定して、リファラーURLのパラメータ部分を削除することもできます。
*'''showaggregateddata:''' 有効にすると、算術平均や標準偏差などの追加の統計値が表示されます。データをさらに集約し、より迅速に概要を確認することもできます。たとえば、得点が1と2、4と5となった結果は、"良い"(1と2)、"平均"(3)、"悪い"(4と5)のような一般的なランキングとなるように集約されます。これは質問タイプ"A"(5点尺度配列)と"5"(5点尺度)にのみ当てはまります。
* '''PDFエクスポート設定:''' この機能は、印刷可能なアンケートのPDFエクスポートと回答の印刷を有効にします。PDFエクスポート機能は実験的なものであり、出力は完全ではありません。残念ながら、現時点でサポートは提供されていません。修正を手助けしたい場合は、私たちに連絡してください。
**'usepdfexport': 無効にするには'0'、有効にするには'1'とします。
**'pdfdefaultfont': PDFエクスポート機能で使用される既定のフォントを指定します。既定値は'auto'です。これを変更するには、[https://tcpdf.org/docs/fonts/ PDF core fonts]の1つに設定する必要があります。
**'alternatepdffontfile': 言語キーと対応するフォントを持つ配列です。各言語の既定のフォントは、config.phpファイルで置き換えることができます。
**'pdffontsize': 通常のテキストのフォントサイズを表示します。アンケートのタイトルは<pdffontsize>+4、グループタイトルは<pdffontsize>+2です。config.phpファイルまたは[[Global settings/ja|全般設定]]ダイアログで編集できます。
**'notsupportlanguages': PDFフォントが見つからない言語のリストが含まれています。このリストには、アムハラ語('am')、シンハラ語('si')、タイ語('th')が含まれており、config-defaults.phpファイルにあります。
**'pdforientation': 横置きの場合は'L'、縦置きの場合は'P'を設定します。これはconfig.phpファイルから編集できます。
*'''グラフ設定'''
**'chartfontfile': 統計グラフの作成に使用されるフォントファイル名を設定します。このファイルは、LimeSurveyのルートフォルダにあるfontsディレクトリに配置する必要があります。これはconfig.phpファイルで編集できます。
**'alternatechartfontfile': 言語キーと対応するフォントを持つ配列です。これはconfig.phpファイルで編集できます。
*'''showsgqacode:''' この設定は印刷可能なアンケート機能で使用され、既定値は'false'です。showsgqacode = 'true'と設定すると、各質問のIDと、回答(該当する場合)が表示されます。このIDは、アンケートの回答データを保持するLime_survey_12345表の列見出しと一致します。IDは、手動によるデータベースクエリーのコードブックに使用できます。


As this is an extensive topic we have moved [[LDAP settings]] to [[LDAP settings|another page.]]
<span id="LDAP_settings"></span>
= [[LDAP settings/ja|LDAP設定]]=


= Authentication=
これは広範なトピックであるため、 LDAP設定は[[LDAP settings/ja|別のページ]]に移動しました。


Starting with LimeSurvey 2.05 authentication will be handled by plugins. Because of this the information below might be outdated. See [[Plugins]] for most up to date information.
<span id="Authentication"></span>
= 認証=


== Delegate Authentication to the Webserver==
LimeSurvey 2.05以降、認証はプラグインによって処理されます。その結果、以下の情報が古くなっている可能性があります。最新情報については、[[Plugins/ja|プラグインのウィキ]]を参照してください。


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 Webserver software to use this external authentication system, and then ask LimeSurvey to trust the user identity reported by the webserver. In order to enable this feature you have to:
<span id="Authentication_delegation_to_the_webserver"></span>
* set '''auth_webserver''' to true in config.php
== ウェブサーバーへの認証委任==
* enable authentication at the webserver side


Please note that:
システム管理者は、アンケート管理者の認証を内部のLimeSurveyデータベースを使用するのではなく、セントラル認証システム(Active Directory、openLdap、Radius、...)にさせたい場合があります。これを簡単に行うには、この外部認証システムを使用するようにウェブサーバーソフトウェアを設定し、ウェブサーバーが報告したユーザーIDを信頼するようLimeSurveyに設定します。この機能を有効にするには、次の操作が必要です。
* LimeSurvey will then bypass its own authentication process (by using the login name reported by the webserver without asking for a password)
* config.phpで'''auth_webserver''''true'に設定します。
* this can only replace the LimeSurvey GUI authentication system, '''not the survey invitation system''' (participant interface)
* ウェブサーバー側からの認証を有効にします。


== Authentication Delegation with no automatic user import==
以下の点に注意してください。
* LimeSurveyは、(パスワードを要求せず、ウェブサーバーから報告されたログイン名を使用して)独自の認証プロセスをバイパスします。
* これは、'''アンケートに招待する仕組み(参加者インターフェイス) ではなく'''、単にLimeSurveyのGUI認証システムを置き換えるものです。


Please note however than <u>by default Authentication Delegation doesn't bypass the LimeSurvey authorization system</u>: this means 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 survey resources.
<span id="Authentication_delegation_with_no_automatic_user_import"></span>
== 自動ユーザーインポートを使用しない認証委任==


A user is then granted access to LimeSurvey if and only if:
<u>既定では、認証委任はLimeSurvey認証システムをバイパスしません。</u>つまり、LimeSurveyでパスワードを管理する必要がなくても、LimeSurveyデータベースでユーザーを定義し、管理パネルにアクセスさせるために適切な権限セットを割り当てる必要があります。
* he has been authenticated to the webserver
* 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==
LimeSurveyへのアクセスが許可されるのは、次の場合のみです。
* ウェブサーバーに認証されている。
* ログイン名がLimeSurveyユーザーデータベースのユーザーとして定義されている(LimeSurveyユーザーデータベースで定義されたユーザー権限がユーザーに与えられている)。


When managing huge user database, it is sometimes easier to auto-import user in the LimeSurvey database.
<span id="Authentication_delegation_with_automatic_user_import"></span>
*'''auth_webserver_autocreate_user''': if set to true LimeSurvey will try to autoimport users authenticated by the webserver 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 fake First and Last name, email, 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 an LDAP directory), the true First&Last; names and email of a particular user. You can even customize his privileges on the system based on his groups on the external DB.
膨大なユーザーデータベースを管理する場合、LimeSurveyデータベースにユーザーを自動インポートする方が簡単な場合があります。
*'''auth_webserver_autocreate_user''': 'true'に設定されている場合、LimeSurveyはウェブサーバーによって認証されたユーザーが、ユーザーデータベースに存在しない場合、自動インポートします。
*'''auth_webserver_autocreate_profile''': 名前、電子メール、権限など、ユーザーに割り当てられる既定のプロファイルを記述する配列。


The '''hook_get_auth_webserver_profile''' function takes the user login name as the only argument and can return:
ログインしたユーザーと一致するようにユーザープロファイルをカスタマイズする場合は、'''hook_get_autouserprofile'''という簡単な関数を開発する必要があります。この関数を使用すると、中央ユーザーアカウントデータベース(LDAPディレクトリーなど)からユーザーの実名、名前、電子メールを取得することができます。外部データベースに割り当てられたグループに基づいて、システムの権限をカスタマイズすることもできます。
* 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'''
'''hook_get_auth_webserver_profile'''関数は、ユーザーのログイン名を唯一の引数として受け取り、次の値を返します。
<syntaxhighlight lang="php" enclose="div">function hook_get_auth_webserver_profile($user_name)
* Falseまたは空の配列 - この場合、ユーザーはLimeSurveyへのアクセスが拒否されます。
* <code>$WebserverAuth_autouserprofile</code>に記述されているすべての共通のuserprofileエントリーを含む配列
<syntaxhighlight lang="php">function hook_get_auth_webserver_profile($user_name)
{
{
     // Retrieve user's data from your database backend (for instance LDAP) here
     // Retrieve user's data from your database backend (for instance LDAP) here
Line 276: Line 435:


     // return Array();</syntaxhighlight>
     // return Array();</syntaxhighlight>
== User name mapping==
{{Alert|'hook_get_auth_webserver_profile'機能は高度なユーザー向けです。詳細については、config-defaults.phpファイルのコメントを読んでください。}}
 
<span id="User_name_mapping"></span>
== ユーザー名のマッピング==
 
LimeSurveyのユーザー名とは異なる外部ユーザー名を持つユーザーがいる場合は、ユーザー名のマッピングを使用すると便利です。 LimeSurveyでは、 '''auth_webserver_user_map'''パラメータを使用して実現します。たとえば、外部認証データベースに'admin'ユーザー名が定義されていないとします。adminとしてLimeSurveyにログインするには、LimeSurveyのログイン名adminに外部ユーザー名(仮に'myname'とします)をマップする必要があります。このための設定は次のとおりです。
 
<syntaxhighlight lang="php">'config'=>array(
...
'auth_webserver_user_map' => array ('myname' => 'admin');
)</syntaxhighlight>
'myname'ログインとウェブサーバーのパスワードで認証が成功すると、LimeSurveyを'admin'ユーザーとして直接使用する権限が与えられます。
 
これには重大なセキュリティ上の影響がありますので、注意して使用してください。 また、ウェブサーバーによる書き込みができないようconfig.phpを保護してください。
 
<span id="Use_one-time_passwords"></span>
==ワンタイムパスワードを使用する==
 
ユーザーはdefault.com/limesurvey/adminにあるLimeSurveyのログインページを開き、ユーザー名とワンタイムパスワード(以前は、外部アプリケーションによって、ユーザーテーブルの''column one_time_pw''に書き込まれていた)を入力できます。
 
ワンタイムパスワードを使用するには、config.phpでこの設定を有効にする必要があります(既定値はfalse)。
<syntaxhighlight lang="php" enclose="pre">
    'config'=>array(
        'debug'=>0,
        'debugsql'=>0,
        'use_one_time_passwords'=>true,
    )
</syntaxhighlight>
 
詳細については、[[Manage users/ja#.E3.83.AF.E3.83.B3.E3.82.BF.E3.82.A4.E3.83.A0.E3.83.91.E3.82.B9.E3.83.AF.E3.83.BC.E3.83.89.E3.82.92.E4.BD.BF.E7.94.A8.E3.81.99.E3.82.8B|"ユーザの管理"セクション]]を参照してください。
 
 
<span id="Encryption_settings_{{NewIn|4.0.0}}"></span>
= 暗号化設定 {{NewIn/ja|4.0.0}} =
 
{{Alert|title=注意|text=一旦設定したら、暗号キーは変更しないでください。変更すると、暗号化データがすべて失われてしまいます。}}
 
{{Note|更新またはインストールをする際に、LimeSurveyはこのパラメーターを生成し、<code>application/config/security.php</code>ファイルにセットされます。この設定をsecurity.phpに残すか、必要に応じ、config.phpに移すこともできます。}}
 
この機能の詳細は、[[data encryption/ja|データ暗号化]]を参照してください。
 
*'''encryptionkeypair'''
*'''encryptionpublickey'''
*'''encryptionsecretkey'''
 
<span id="Advanced_url_settings"></span>
=高度なURL設定=


In case 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' username defined in your external authentication database. Then in order to login to LimeSurvey as admin, you'll have to map your external username let's call it 'myname' to the admin login name ine LimeSurvey. The corresponding setup is :
*'''publicurl:''' これは、'公開スクリプト'のURLを設定します。公開スクリプトは、"limesurvey"フォルダー(または、他のすべてのスクリプトやディレクトリーが入っているディレクトリーにつけた名前)にあるものです。'''この設定は、config.phpで利用でき、LimeSurveyが絶対URLを必要とするときに使用します(例えば、トークンメールを送信するときなど)。'''
*'''homeurl:''' これは、管理用スクリプトのURLを設定します。これらは、/limesurvey/adminフォルダーにあります。ここにはhttp://www.example.com/limesurvey/html/admin のように、WEBのURLを設定してください。この項目には、末尾にスラッシュを付けないでください。config.phpの既定の設定では、<code>{$_SERVER<nowiki>[</nowiki>'SERVER_NAME']}</code>というphp変数の設定を使って、サーバー名を自動的に検出しようとします。'''ほとんどの場合、このままにしておき、残りの文字列をLimeSurveyスクリプトを置いたディレクトリー名に合わせて変更すればよいでしょう。'''
*'''tempurl:''' これは、"/limesurvey/tmp"ディレクトリー、またはLimeSurveyが一時的なファイルを提供するために使用したいディレクトリーのURLを設定します。
*'''uploadurl:''' これは、"/limesurvey/upload"ディレクトリー、またはLimeSurveyがアップロードされたファイルを提供するのに使用するディレクトリーのURLを設定します。これにより、アップロードファイルを別のURLドメインに設定することができます。


<syntaxhighlight lang="php" enclose="div">$config['auth_webserver_user_map'] = Array ('myname' => 'admin');</syntaxhighlight>
<span id="Advanced_path_settings"></span>
After a successful authentication with the 'myname' login and password to the webserver, you'll be directly authorized to use LimeSurvey as the 'admin' user.
= 高度なパス設定=


This obviously has serious security implications, so use it with care, and please protect your config.php from write access by the web server.
*'''homedir:''' これは、管理用スクリプトの物理的なディスクの場所を設定してください(例:"/home/usr/htdocs/limesurvey/admin")。このエントリーには、末尾にスラッシュを付けないでください。config.phpの既定の設定では、php変数の設定<code>{$_SERVER<nowiki>[</nowiki>'DOCUMENT_ROOT']}</code>を使って、すべてのドキュメントの既定ののルートパスを検出しようとします。ほとんどの場合、このままにしておき、残りの文字列をLimeSurveyスクリプトを置いたディレクトリー名に合わせて変更すればよいでしょう。
*'''publicdir:''' これは、'公開スクリプト'の物理的なディスクの場所を設定します。
*'''tempdir:''' スクリプトがファイルを読み書きできるよう、/limesurvey/tmpディレクトリーの物理的なディスクの場所を設定します。
*'''uploaddir:''' スクリプトがファイルを読み書きできるよう、/limesurvey/uploadディレクトリーの物理的なディスクの場所を設定します。
*'''sCKEditorURL:''' fckeditorスクリプトのURLです。
*'''fckeditexpandtoolbar:''' 既定でfckeditorのツールバーを開くかどうかを定義します。
*'''pdfexportdir:''' tcpdf.php extensiontcpdf.phpのあるディレクトリーです。
*'''pdffonts:''' TCPDFフォントのディレクトリーです。


== Use one time passwords==
<span id="Other_advanced_settings"></span>
=その他の詳細設定=


{{NewIn|1.81}} A user can open the LimeSurvey login at /limesurvey/admin and pass username and a one time password which was previously written into the users table (column one_time_pw) by an external application.
<span id="Upload_files"></span>
==ファイルのアップロード==


This setting has to be turned on ('''use_one_time_passwords''' => true) to enable the usage of one time passwords (default = false). More information can be found at [[Manage users#Use one-time passwords|"Manage Users"]].
*'''allowedthemeuploads:''' テーマエディターでアップロードできるファイルタイプ
*'''allowedresourcesuploads:''' リソースセクション及びHTMLエディターでアップロードできるファイルタイプ
*'''allowedfileuploads''' {{NewIn/ja|4.0.0}} アップロードするファイルタイプのグローバルな制限
*'''magic_database:''' {{NewIn/ja|3.17.17}} [https://www.php.net/manual/en/function.finfo-open.php finfo_open]に別のMIMEデータベースの使用を許可します。 config.phpファイルでのみ更新できます。例: redhatベースのlinuxの場合<code>/usr/share/misc/magic.mgc</code> for redhat based linux.
*'''magic_file:''' {{NewIn/ja|3.17.17}} [https://github.com/LimeSurvey/LimeSurvey/blob/master/application/core/utils/fileExtensions.php 標準のファイル]とは別のファイルを使用して、MIMEタイプごとの拡張子の配列を取得することができます。配列を返すPHPファイルである必要があります。config.phpファイルでのみ更新できます。


= Advanced Path Settings=
<span id="Update"></span>
==アップデート==


*'''homeurl:''' This should be set to the URL location of your administration scripts. These are the scripts 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<nowiki>[</nowiki>'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.
*'''updatable:''' この設定はversion.phpにあります。trueかfalseに設定できます。trueに設定した場合、スーパー管理者ユーザーがログインしたとき、LimeSurveyはアップデートが利用可能かどうかを確認して警告を表示します。falseに設定した場合、チェックは行われず、ComfortUpdateを使用できません。
*'''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 is used when sending token email.'''
*'''tempurl:''' This should be set to the URL location of your "/limesurvey/tmp" directory - or a directory 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 installed initially. You may, however, prefer to move these images to another location and if so 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<nowiki>[</nowiki>'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:''' Directory with the tcpdf.php extensiontcpdf.php
*'''pdffonts:''' Directory for the TCPDF fonts

Latest revision as of 00:38, 13 April 2024

以下のセクションでは、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設定を介してアクセスすることもできます。

config.php配列はconfig全体にマージされるので、config.phpファイル内の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インスタンスを実行するようにセッション設定を修正する必要がある場合は、crsf cookieのリクエスト設定を修正する必要がないかどうかを確認してください。


テーブルベースのセッションを使用する

LimeSurveyはテーブルベースのセッションを使うことができます。テーブルベースのセッションを使用するには、既定のconfig.phpファイルでコメント部分を見つけ、各行の前にある//を削除します。

        'session' => array (
            'class' => 'application.core.web.DbHttpSession',
            'connectionID' => 'db',
            'sessionTableName' => '{{sessions}}',
        ),
  テーブルベースのセッションは現在のところ、MSSQLサーバーではサポートされていません。


その他のセッションに関する修正

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を設定してください。


<span id="Allow_usage_of_session_and_Csrf_Validation_in_iFrame_ (New in 3.24.3 )">

iFrameでセッションとCsrf検証の使用を許可する (3.24.3 から追加)

Iframeの組込を許可した場合、いくつかの構成部分を更新する必要があります。

  注意:iframeを許可するいかなる設定を行っても、ブラウザーまたはユーザーの設定により動作しない場合があります。この設定は、Firefox 81.0.2から115、Chromium 85.0.4183.121から119、Edge 119の既定の設定でテストされています。この機能はサポート外で、コミュニティサポートのみとなります。


iframeでのセッション開始を許可する

sessionはsecure(有効なhttps)、httponlyとし、samesiteはNoneにする必要があります。すべての設定はすべて小文字にする必要があります。

 		 'session' => array (
			'sessionName'=>'LS-VBXZZORFJZCAKGYI',
			// テーブルベースのセッションが必要な場合は、以下の行をコメントアウトします。
			// 注意: テーブルベースのセッションはMSSQLサーバーでは現在サポートされていません。
			// 'class' => 'application.core.web.DbHttpSession',
			// 'connectionID' => 'db',
			// 'sessionTableName' => '{{sessions}}',
			'cookieParams' => array(
				'secure' => true,
				'httponly' => true,
				'samesite' => 'None',
			),
		 ),

iframeでcsrf cookieを許可する

sessionと同様、secureとし、sameSiteはNoneにします。配列はsessionと同じレベルに追加する必要があります。

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

URL設定

  トークンやその他のメールのURLのみを更新する必要がある場合は、config.phpファイルのpublicurlを設定します。


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

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


アンケートIDの後に次のように.htmlを追加することもできます。

       // Use short URL
		'urlManager' => array(
			'urlFormat' => 'path',
			'rules' => array (
			    '<sid:\d+>' => array('survey/index','urlSuffix'=>'.html','matchValue'=>true),
			 ),
			'showScriptName' => false,
		),

詳細は、Yiiのドキュメントを参照してください。

ロギング設定

Yiiは、ログを生成するさまざまなソリューションを提供します。詳細については、ロギングについてをチェックしてください。LimeSurveyは、既定で'1'または'2'を使用しています。これにより、すべてのウェブユーザーがログを参照できます。あなたはYiiを使って自分の設定を直接作成することができます。

たとえば、ファイル内のエラーと警告を記録する簡単な方法は次のとおりです。

return array(
	'components' => array(
		/* '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から変更できます。
  • maxLoginAttemptParticipants: 参加者が、有効なトークンを入力しなかった場合に、参加者のIPアドレスがブロック/ロックアウトされるまでの試行回数。既定値は3であり、config.phpで変更できます。
  • timeOutParticipants: 参加者が<maxLoginAttemptParticipants>で指定した回数分正しくないトークンを入力した場合、その参加者は<timeOutParticipants>秒の間、ロックアウトされます。既定値は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フィルタに関する全体設定の変更を無効にします。
  • forcedsuperadmin: すべてのLimeSurveyに対するすべての権限を持つユーザーIDの配列。この設定はconfig.phpファイルでのみ更新できます。ユーザーの権限は、他のスーパー管理者であってもユーザーのグローバル権限は編集できません。既定では、この権限を持つユーザーのidは1です。インストール後に最初に作成されるユーザーです。
  • force_ssl: LimeSurveyを強制的にHTTPSを介して実行するか、HTTPSをブロックするかを設定します。全体設定管理GUIのHTTPSを強制を参照してください。
  • ssl_emergency_override:この設定はSSLを強制的にオフにします。全体設定でHTTPS/SSLがオンの状態で、サーバーでHTTPSが有効になっていない場合、SSLをオフにするには、データベースの値を直接変更するしかありません。これにより、全体設定でForce Secureに変更していても、HTTPSを強制的にオフにできます。これは、問題を修正するまでtrueに変更する緊急の場合を除き、常にfalseでなければなりません。この設定は、config.phpファイルを介してのみ設定できます。
  • ssl_disable_alert: SSLを強制できない、または強制したくない場合は、SSLを強制しない旨のスーパー管理者への警告を無効にします。この設定は、config.phpファイルを介してのみ設定できます。

リソース

  • 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 - 列の使用を無効にします。

言語と時間

  • defaultlang: これは、管理スクリプトで使用される既定の言語、公開アンケートリストの既定の言語として設定する必要があります。この設定は、全体設定ダイアログで上書きするか、config.phpで編集することができます。
  • timeadjust: ウェブサーバーがアンケートの対象となる場所と異なるタイムゾーンにある場合は、サーバーとホームタイムゾーンの差をここに入力します。たとえば、オーストラリアに住んでいるとして、米国のウェブサーバーを使用しているとします。ウェブサーバーは、現地時間から14時間遅れています。この場合の設定は"14"です。この設定は、アンケートの回答にタイムスタンプを付ける場合に特に重要です。この設定は、全体設定ダイアログで上書きするか、config.phpで編集することができます。

アンケートの動作

  • deletenonvalues: この機能は慎重に使用してください。既定値(1)にすると、表示条件に合致しない質問はデータベースにNULLが格納されます。これにより、データベースのデータの内部的な一貫性が保証されます。ただし、表示条件に合致しない場合の関連値、つまり0を保持したい場合があります。たとえば、男性に性別を問い合せ、誤って'女性'と答えてから、女性向けの質問(女性であることを前提とした質問で、女性の場合のみ表示されます)に答えたとします。回答者は間違いに気づき、前に戻って性別を'男性'に変え、アンケートを継続します。このとき、女性向けの質問は表示条件に合致しないことになります。$deletenonvalues==1となっている場合、値がクリアされデータベースにはNULLが格納されます。$deletenonvalues==0の場合、間違った答えは削除されず、分析の際にデータベースに残ったままになります。
  • shownoanswer: 編集可能な回答(すなわち、リスト、配列の質問)を含むラジオボタン/選択タイプの質問が回答必須ではなく、 'shownoanswer'が1に設定されている場合、追加で'回答なし'の項目が表示され、回答者が回答しないことを選択することができます。これを利用できないようにしたいと考えることもあるでしょう。この設定は、全体設定ダイアログで上書きするか、config.phpで編集することができます。有効な値は次のとおりです。
    • '0': いいえ
    • '1': はい
    • '2': アンケート管理者が選択できる
  • printanswershonorsconditions: 回答印刷機能で、条件分岐によって隠された質問のエントリーを表示するかどうかを定義します(既定値は1で、条件により隠された質問の回答を非表示にします)。
  • hide_groupdescr_allinone: この設定は、条件を使用したオールインワンアンケートに関係します。これを'true'に設定すると、グループ内のすべての質問が非表示になっていると、グループ名と説明が非表示になります。既定値は'true'で、グループ内のすべての質問が条件によって非表示となる場合、グループ名と説明も非表示になります。config.phpで編集することができます。
  • showpopups:  必須または条件付きの質問に正しく答えられなかった場合にポップアップメッセージを表示します。
    • '2' = テーマオプションで決める(既定)
    • '1'=ポップアップメッセージを表示する
    • '0'=ページにメッセージを表示する
    • '-1'=メッセージを一切表示しない(この場合、回答が必須であることを示すヒントが表示されます)

数値の質問タイプの動作

  • bFixNumAuto: 数値フィールドを自動的にフィルタリングして、すべての非数値を削除できます。既定では有効になっていますが、グローバルに無効にすることができます。この設定は、コアテーマオプションのFix automatically numeric value(数値を自動的に修正する)に関連しています。はいに対しては有効、式のみいいえに対しては無効となります。
  • bNumRealValue: 式マネージャーで使用される数値フィールドを、修正するかどうかを設定できます。既定では修正するように設定されています。数値型の質問NUMERICについて、無効(0)に設定すると、{NUMERIC}に不正な文字が含まれる場合、''が送信されます。有効(1)に設定すると、{NUMERIC}に入力された文字が送信されます。この設定は、コアテーマオプションのFix automatically numeric value(数値を自動的に修正する)に関連しています。はいに対しては有効、式のみいいえに対しては無効となります。

開発とデバッグ

  • デバッグ: この設定では、PHPエラー報告をE_ALLに設定します。これは、スクリプトに関連する通知、警告、またはエラーが小さなものでもすべて表示されることを意味します。この設定は、何らかの理由でアプリケーションをデバッグしようとしている場合にのみ '1'に切り替える必要があります。開発者の場合は、'2'に切り替えます。パスの開示につながる可能性があるため、本番環境では'1'または '2'にしないでください。既定値は '0'で、config.phpで編集することができます。
  • debugsql: 各ページの下部のスクリプトに対して実行されたすべてのSQL問い合わせを表示する場合に、この設定をアクティブにします。クエリ数の最適化に非常に便利です。有効にするには、config.phpファイルで既定値から'1'に変更します。
  • use_asset_manager: 既定では、デバッグモードではアセットマネージャーは無効ですが、この設定によりデバッグモードでもアセットマネージャーを使用することができます。

アプリケーションでエラーが発生した場合は、バグレポートで提出できる詳細なエラーを取得するため、デバッグ設定を有効にすることを強くお勧めします。

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

プラグインで作業をしていて、変数を画面上に素早くダンプするために、traceVar関数を使うことができます。デバッグが設定されている場合は、CWebLogRouteを使ってHTMLページに表示します。使用方法: traceVar($MyVariable)

メール設定

下のすべての設定は、全体設定ダイアログで上書きすることができます。

  • 'emailmethod: 電子メールメッセージの送信方法を決定します。次のオプションを使用できます。
    • 'mail:' 内部のPHPメーラーを使用します。
    • 'sendmail:' sendmailメーラーを使用します。
    • 'smtp:' SMTPリレーを使用します。メールサーバーではないホストでLimeSurveyを実行している場合は、この設定を使用します。
  • 'emailsmtphost: $emailmethodとして'smtp'を使用する場合、ここにSMTPサーバを設定する必要があります。Googleメールを使用している場合は、ポート番号をふかし$emailsmtphost = 'smtp.gmail.com:465'のようにします。
  • emailsmtpuser: SMTPサーバーが認証を必要とする場合は、ここにユーザー名を設定します。それ以外の場合は空白にする必要があります。
  • emailsmtppassword: SMTPサーバーで認証が必要な場合は、パスワードを設定します。それ以外の場合は空白にする必要があります。
  • emailsmtpssl: SMTP接続にSSL/TLSを使用するには、'ssl'または 'tls'と設定します。
  • maxemails: アンケート参加者に招待状またはリマインダを送信するとき、管理者が1回で送信できる電子メールの数を設定します。ウェブサーバーによってメールの容量が異なるため、送信に時間がかかりすぎてメールが届かない場合は、タイムアウトしてエラーが発生する可能性があります。ウェブサーバーによってメールの容量が異なるため、送信に時間がかかりすぎてメールが届かない場合は、タイムアウトしてエラーが発生する可能性があります。大量の電子メールを送信するときにスクリプトタイムアウトエラーが発生した場合は、この設定値を減らしてください。トークンの右側にあるトークンコントロールツールバーにある'案内メールを送付'ボタン(トークンの右にあるボタンではありません)をクリックすると、'maxemails'の招待状が送信され、メール送信済のアドレスのリストが表示され、"1つのバッチで送信できるよりも多くの電子メールが保留中です。以下をクリックしてメールを送信します。あとXXX通の送信メールがあります。"という警告が表示され、次のバッチを進めるための"続行ボタン"が表示されます。ユーザーは、一括で電子メールで送信された後、次のバッチをいつ送信するかを決定します。この画面がアクティブな状態で待つ必要はありません。管理者はログオフして後で戻り、次の招待状を送信することができます。

統計と回答の閲覧

  • filterout_incomplete_answers: 回答を閲覧したり解析したりするときに、未完了の回答をフィルタする既定の動作を制御します。未完了の回答についての議論は、アンケート結果閲覧に関するウィキを参照してください。これらのレコードは統計情報を破損する可能性があるため、このフィルタをいくつかのGUIフォームでオンまたはオフに切り替えられるようになっています。パラメーターはconfig.phpで編集できます。次のオプションを使用できます。
    • 'show': 完了した回答と未完了の回答の両方を表示することができます。
    • 'filter': 完了した回答のみ表示します。
    • 'incomplete': 未完了の回答のみ表示します。
  • strip_query_from_referer_url: この設定は、参照元URLのパラメーター部分を破棄するかどうかを決定するものです。既定値は'false'です(この場合、リファラーURLはすべてのパラメータを保存します)。一方、この値を'true'に設定して、リファラーURLのパラメータ部分を削除することもできます。
  • showaggregateddata: 有効にすると、算術平均や標準偏差などの追加の統計値が表示されます。データをさらに集約し、より迅速に概要を確認することもできます。たとえば、得点が1と2、4と5となった結果は、"良い"(1と2)、"平均"(3)、"悪い"(4と5)のような一般的なランキングとなるように集約されます。これは質問タイプ"A"(5点尺度配列)と"5"(5点尺度)にのみ当てはまります。
  • PDFエクスポート設定: この機能は、印刷可能なアンケートのPDFエクスポートと回答の印刷を有効にします。PDFエクスポート機能は実験的なものであり、出力は完全ではありません。残念ながら、現時点でサポートは提供されていません。修正を手助けしたい場合は、私たちに連絡してください。
    • 'usepdfexport': 無効にするには'0'、有効にするには'1'とします。
    • 'pdfdefaultfont': PDFエクスポート機能で使用される既定のフォントを指定します。既定値は'auto'です。これを変更するには、PDF core fontsの1つに設定する必要があります。
    • 'alternatepdffontfile': 言語キーと対応するフォントを持つ配列です。各言語の既定のフォントは、config.phpファイルで置き換えることができます。
    • 'pdffontsize': 通常のテキストのフォントサイズを表示します。アンケートのタイトルは<pdffontsize>+4、グループタイトルは<pdffontsize>+2です。config.phpファイルまたは全般設定ダイアログで編集できます。
    • 'notsupportlanguages': PDFフォントが見つからない言語のリストが含まれています。このリストには、アムハラ語('am')、シンハラ語('si')、タイ語('th')が含まれており、config-defaults.phpファイルにあります。
    • 'pdforientation': 横置きの場合は'L'、縦置きの場合は'P'を設定します。これはconfig.phpファイルから編集できます。
  • グラフ設定
    • 'chartfontfile': 統計グラフの作成に使用されるフォントファイル名を設定します。このファイルは、LimeSurveyのルートフォルダにあるfontsディレクトリに配置する必要があります。これはconfig.phpファイルで編集できます。
    • 'alternatechartfontfile': 言語キーと対応するフォントを持つ配列です。これはconfig.phpファイルで編集できます。
  • showsgqacode: この設定は印刷可能なアンケート機能で使用され、既定値は'false'です。showsgqacode = 'true'と設定すると、各質問のIDと、回答(該当する場合)が表示されます。このIDは、アンケートの回答データを保持するLime_survey_12345表の列見出しと一致します。IDは、手動によるデータベースクエリーのコードブックに使用できます。

LDAP設定

これは広範なトピックであるため、 LDAP設定は別のページに移動しました。

認証

LimeSurvey 2.05以降、認証はプラグインによって処理されます。その結果、以下の情報が古くなっている可能性があります。最新情報については、プラグインのウィキを参照してください。

ウェブサーバーへの認証委任

システム管理者は、アンケート管理者の認証を内部のLimeSurveyデータベースを使用するのではなく、セントラル認証システム(Active Directory、openLdap、Radius、...)にさせたい場合があります。これを簡単に行うには、この外部認証システムを使用するようにウェブサーバーソフトウェアを設定し、ウェブサーバーが報告したユーザーIDを信頼するようLimeSurveyに設定します。この機能を有効にするには、次の操作が必要です。

  • config.phpでauth_webserverを 'true'に設定します。
  • ウェブサーバー側からの認証を有効にします。

以下の点に注意してください。

  • 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に記述されているすべての共通のuserprofileエントリーを含む配列
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'ユーザー名が定義されていないとします。adminとしてLimeSurveyにログインするには、LimeSurveyのログイン名adminに外部ユーザー名(仮に'myname'とします)をマップする必要があります。このための設定は次のとおりです。

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

'myname'ログインとウェブサーバーのパスワードで認証が成功すると、LimeSurveyを'admin'ユーザーとして直接使用する権限が与えられます。

これには重大なセキュリティ上の影響がありますので、注意して使用してください。 また、ウェブサーバーによる書き込みができないようconfig.phpを保護してください。

ワンタイムパスワードを使用する

ユーザーはdefault.com/limesurvey/adminにあるLimeSurveyのログインページを開き、ユーザー名とワンタイムパスワード(以前は、外部アプリケーションによって、ユーザーテーブルのcolumn one_time_pwに書き込まれていた)を入力できます。

ワンタイムパスワードを使用するには、config.phpでこの設定を有効にする必要があります(既定値はfalse)。

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

詳細については、"ユーザの管理"セクションを参照してください。


<span id="Encryption_settings_ (New in 4.0.0 )">

暗号化設定 (4.0.0 から追加)

  注意 : 一旦設定したら、暗号キーは変更しないでください。変更すると、暗号化データがすべて失われてしまいます。


更新またはインストールをする際に、LimeSurveyはこのパラメーターを生成し、application/config/security.phpファイルにセットされます。この設定をsecurity.phpに残すか、必要に応じ、config.phpに移すこともできます。

この機能の詳細は、データ暗号化を参照してください。

  • encryptionkeypair
  • encryptionpublickey
  • encryptionsecretkey

高度なURL設定

  • publicurl: これは、'公開スクリプト'のURLを設定します。公開スクリプトは、"limesurvey"フォルダー(または、他のすべてのスクリプトやディレクトリーが入っているディレクトリーにつけた名前)にあるものです。この設定は、config.phpで利用でき、LimeSurveyが絶対URLを必要とするときに使用します(例えば、トークンメールを送信するときなど)。
  • homeurl: これは、管理用スクリプトのURLを設定します。これらは、/limesurvey/adminフォルダーにあります。ここにはhttp://www.example.com/limesurvey/html/admin のように、WEBのURLを設定してください。この項目には、末尾にスラッシュを付けないでください。config.phpの既定の設定では、{$_SERVER['SERVER_NAME']}というphp変数の設定を使って、サーバー名を自動的に検出しようとします。ほとんどの場合、このままにしておき、残りの文字列をLimeSurveyスクリプトを置いたディレクトリー名に合わせて変更すればよいでしょう。
  • tempurl: これは、"/limesurvey/tmp"ディレクトリー、またはLimeSurveyが一時的なファイルを提供するために使用したいディレクトリーのURLを設定します。
  • uploadurl: これは、"/limesurvey/upload"ディレクトリー、またはLimeSurveyがアップロードされたファイルを提供するのに使用するディレクトリーのURLを設定します。これにより、アップロードファイルを別のURLドメインに設定することができます。

高度なパス設定

  • homedir: これは、管理用スクリプトの物理的なディスクの場所を設定してください(例:"/home/usr/htdocs/limesurvey/admin")。このエントリーには、末尾にスラッシュを付けないでください。config.phpの既定の設定では、php変数の設定{$_SERVER['DOCUMENT_ROOT']}を使って、すべてのドキュメントの既定ののルートパスを検出しようとします。ほとんどの場合、このままにしておき、残りの文字列をLimeSurveyスクリプトを置いたディレクトリー名に合わせて変更すればよいでしょう。
  • publicdir: これは、'公開スクリプト'の物理的なディスクの場所を設定します。
  • tempdir: スクリプトがファイルを読み書きできるよう、/limesurvey/tmpディレクトリーの物理的なディスクの場所を設定します。
  • uploaddir: スクリプトがファイルを読み書きできるよう、/limesurvey/uploadディレクトリーの物理的なディスクの場所を設定します。
  • sCKEditorURL: fckeditorスクリプトのURLです。
  • fckeditexpandtoolbar: 既定でfckeditorのツールバーを開くかどうかを定義します。
  • pdfexportdir: tcpdf.php extensiontcpdf.phpのあるディレクトリーです。
  • pdffonts: TCPDFフォントのディレクトリーです。

その他の詳細設定

ファイルのアップロード

  • allowedthemeuploads: テーマエディターでアップロードできるファイルタイプ
  • allowedresourcesuploads: リソースセクション及びHTMLエディターでアップロードできるファイルタイプ
  • allowedfileuploads (4.0.0 から追加) アップロードするファイルタイプのグローバルな制限
  • magic_database: (3.17.17 から追加) finfo_openに別のMIMEデータベースの使用を許可します。 config.phpファイルでのみ更新できます。例: redhatベースのlinuxの場合/usr/share/misc/magic.mgc for redhat based linux.
  • magic_file: (3.17.17 から追加) 標準のファイルとは別のファイルを使用して、MIMEタイプごとの拡張子の配列を取得することができます。配列を返すPHPファイルである必要があります。config.phpファイルでのみ更新できます。

アップデート

  • updatable: この設定はversion.phpにあります。trueかfalseに設定できます。trueに設定した場合、スーパー管理者ユーザーがログインしたとき、LimeSurveyはアップデートが利用可能かどうかを確認して警告を表示します。falseに設定した場合、チェックは行われず、ComfortUpdateを使用できません。