OSDN Git Service

Now PukiWiki version is "1.5.2"
[pukiwiki/pukiwiki.git] / pukiwiki.ini.php
index 98e0805..0075c5f 100644 (file)
 <?php
-/////////////////////////////////////////////////
-// PukiWiki - Yet another WikiWikiWeb clone.
-//
-// $Id: pukiwiki.ini.php,v 1.95 2004/11/23 02:01:29 henoheno Exp $
+// PukiWiki - Yet another WikiWikiWeb clone
+// pukiwiki.ini.php
+// Copyright
+//   2002-2016 PukiWiki Development Team
+//   2001-2002 Originally written by yu-ji
+// License: GPL v2 or (at your option) any later version
 //
-// PukiWiki setting file
+// PukiWiki main setting file
+
+/////////////////////////////////////////////////
+// Functionality settings
+
+// PKWK_OPTIMISE - Ignore verbose but understandable checking and warning
+//   If you end testing this PukiWiki, set '1'.
+//   If you feel in trouble about this PukiWiki, set '0'.
+if (! defined('PKWK_OPTIMISE'))
+       define('PKWK_OPTIMISE', 0);
 
 /////////////////////////////////////////////////
-// ½é´üÀßÄê (ʸ»ú¥¨¥ó¥³¡¼¥É¡¢¸À¸ì)
+// Security settings
 
-// Internal Language ('en' or 'ja')
-define('LANG', 'ja');  // For internal message encoding
+// PKWK_READONLY - Prohibits editing and maintain via WWW
+//   NOTE: Counter-related functions will work now (counter, attach count, etc)
+if (! defined('PKWK_READONLY'))
+       define('PKWK_READONLY', 0); // 0 or 1
 
-// UI Language (Language for buttons, menus,  etc)
-if (! defined('UI_LANG'))
-       define('UI_LANG', 'ja');        // 'en' or 'ja'
+// PKWK_SAFE_MODE - Prohibits some unsafe(but compatible) functions 
+if (! defined('PKWK_SAFE_MODE'))
+       define('PKWK_SAFE_MODE', 0);
+
+// PKWK_DISABLE_INLINE_IMAGE_FROM_URI - Disallow using inline-image-tag for URIs
+//   Inline-image-tag for URIs may allow leakage of Wiki readers' information
+//   (in short, 'Web bug') or external malicious CGI (looks like an image's URL)
+//   attack to Wiki readers, but easy way to show images.
+if (! defined('PKWK_DISABLE_INLINE_IMAGE_FROM_URI'))
+       define('PKWK_DISABLE_INLINE_IMAGE_FROM_URI', 0);
+
+// PKWK_QUERY_STRING_MAX
+//   Max length of GET method, prohibits some worm attack ASAP
+//   NOTE: Keep (page-name + attach-file-name) <= PKWK_QUERY_STRING_MAX
+define('PKWK_QUERY_STRING_MAX', 640); // Bytes, 0 = OFF
 
 /////////////////////////////////////////////////
-// ¥Ç¥£¥ì¥¯¥È¥ê»ØÄ꠺Ǹå¤Ë / ¤¬É¬Íנ°À­¤Ï 777
+// Experimental features
 
-// ¥Ç¡¼¥¿³ÊǼ¥Ç¥£¥ì¥¯¥È¥ê
-define('DATA_DIR',      DATA_HOME . 'wiki/');  // ºÇ¿·¤Î¥Ç¡¼¥¿
-define('DIFF_DIR',      DATA_HOME . 'diff/');  // º¹Ê¬¥Õ¥¡¥¤¥ë
-define('BACKUP_DIR',    DATA_HOME . 'backup/');        // ¥Ð¥Ã¥¯¥¢¥Ã¥×
-define('CACHE_DIR',     DATA_HOME . 'cache/'); // ¥­¥ã¥Ã¥·¥å
-define('UPLOAD_DIR',    DATA_HOME . 'attach/');        // ÅºÉÕ¥Õ¥¡¥¤¥ë
-define('COUNTER_DIR',   DATA_HOME . 'counter/');       // ¥«¥¦¥ó¥¿
-define('TRACKBACK_DIR', DATA_HOME . 'trackback/');     // TrackBack
-define('PLUGIN_DIR',    DATA_HOME . 'plugin/'); // ¥×¥é¥°¥¤¥ó¥Õ¥¡¥¤¥ë
+// Multiline plugin hack (See BugTrack2/84)
+// EXAMPLE(with a known BUG):
+//   #plugin(args1,args2,...,argsN){{
+//   argsN+1
+//   argsN+1
+//   #memo(foo)
+//   argsN+1
+//   }}
+//   #memo(This makes '#memo(foo)' to this)
+define('PKWKEXP_DISABLE_MULTILINE_PLUGIN_HACK', 1); // 1 = Disabled
 
 /////////////////////////////////////////////////
-// ¥Ç¥£¥ì¥¯¥È¥ê»ØÄ꠺Ǹå¤Ë / ¤¬É¬Í×
-//
-//  PukiWikiËÜÂΤòWeb¥Ö¥é¥¦¥¶¤«¤é¥¢¥¯¥»¥¹¤Ç¤­¤Ê¤¤
-//  ¾ì½ê¤ËÀßÃÖ¤¹¤ë¤È¤­¤Ï¡¢°Ê²¼¤Î¥Ç¥£¥ì¥¯¥È¥ê¤Ë¤¢¤ë
-//  ¥Õ¥¡¥¤¥ë¤Î°ìÉô¤ò Web¥Ö¥é¥¦¥¶¤«¤é¥¢¥¯¥»¥¹¤Ç¤­¤ë
-//  ¾ì½ê¤ËÀßÃÖ¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
-//  (̵¤¯¤È¤âÆ°ºî¤Ï¤·¤Þ¤¹¤¬¡¢¾¯¡¹Ì£µ¤¤Ê¤¯¤Ê¤ë¤Ç¤·¤ç¤¦)
+// Language / Encoding settings
+
+// LANG - Internal content encoding ('en', 'ja', or ...)
+define('LANG', 'ja');
+
+// UI_LANG - Content encoding for buttons, menus,  etc
+define('UI_LANG', LANG); // 'en' for Internationalized wikisite
 
-// ¥¹¥­¥ó/¥¹¥¿¥¤¥ë¥·¡¼¥È¥Õ¥¡¥¤¥ë³ÊǼ¥Ç¥£¥ì¥¯¥È¥ê
+/////////////////////////////////////////////////
+// Directory settings I (ended with '/', permission '777')
+
+// You may hide these directories (from web browsers)
+// by setting DATA_HOME at index.php.
+
+define('DATA_DIR',      DATA_HOME . 'wiki/'     ); // Latest wiki texts
+define('DIFF_DIR',      DATA_HOME . 'diff/'     ); // Latest diffs
+define('BACKUP_DIR',    DATA_HOME . 'backup/'   ); // Backups
+define('CACHE_DIR',     DATA_HOME . 'cache/'    ); // Some sort of caches
+define('UPLOAD_DIR',    DATA_HOME . 'attach/'   ); // Attached files and logs
+define('COUNTER_DIR',   DATA_HOME . 'counter/'  ); // Counter plugin's counts
+define('PLUGIN_DIR',    DATA_HOME . 'plugin/'   ); // Plugin directory
+
+/////////////////////////////////////////////////
+// Directory settings II (ended with '/')
+
+// Skins / Stylesheets
 define('SKIN_DIR', 'skin/');
-//  ¤³¤Î¥Ç¥£¥ì¥¯¥È¥ê°Ê²¼¤Î¥¹¥­¥ó¥Õ¥¡¥¤¥ë (*.php) ¤Ï
-//  PukiWikiËÜÂΦ(DATA_HOME/SKIN_DIR) ¤ËɬÍפǤ¹¤¬¡¢
-//  CSS¥Õ¥¡¥¤¥ë(*.css) ¤ª¤è¤ÓJavaScript¥Õ¥¡¥¤¥ë( *.js)
-//  ¤ÏWeb¥Ö¥é¥¦¥¶¤«¤é¸«¤¨¤ë¾ì½ê(./SKIN_DIR)¤ËÇÛÃÖ
-//  ¤·¤Æ²¼¤µ¤¤
+// Skin files (SKIN_DIR/*.skin.php) are needed at
+// ./DATAHOME/SKIN_DIR from index.php, but
+// CSSs(*.css) and JavaScripts(*.js) are needed at
+// ./SKIN_DIR from index.php.
 
-// ²èÁü¥Õ¥¡¥¤¥ë³ÊǼ¥Ç¥£¥ì¥¯¥È¥ê
+// Static image files
 define('IMAGE_DIR', 'image/');
-//  ¤³¤Î¥Ç¥£¥ì¥¯¥È¥ê°Ê²¼¤ÎÁ´¤Æ¤Î¥Õ¥¡¥¤¥ë¤Ï
-//  Web¥Ö¥é¥¦¥¶¤«¤é¸«¤¨¤ë¾ì½ê(./IMAGE_DIR)¤ËÇÛÃÖ
-//  ¤·¤Æ²¼¤µ¤¤
-
+// Keep this directory shown via web browsers like
+// ./IMAGE_DIR from index.php.
 
 /////////////////////////////////////////////////
-// ¥í¡¼¥«¥ë»þ´Ö
-define('ZONE','JST');
-define('ZONETIME',9 * 3600); // JST = GMT+9
+// Local time setting
+
+switch (LANG) { // or specifiy one
+case 'ja':
+       define('ZONE', 'JST');
+       define('ZONETIME', 9 * 3600); // JST = GMT + 9
+       break;
+default  :
+       define('ZONE', 'GMT');
+       define('ZONETIME', 0);
+       break;
+}
 
 /////////////////////////////////////////////////
-// ¥Û¡¼¥à¥Ú¡¼¥¸¤Î¥¿¥¤¥È¥ë(½¤Àµ¤·¤Æ¤¯¤À¤µ¤¤)
-// * RSS ¤Ë½ÐÎϤ¹¤ë¥Á¥ã¥ó¥Í¥ë̾¤ò·ó¤Í¤ë
+// Title of your Wikisite (Name this)
+// Also used as RSS feed's channel name etc
 $page_title = 'PukiWiki';
 
-// index.php ¤Ê¤É¤ËÊѹ¹¤·¤¿¾ì¹ç¤Î¥¹¥¯¥ê¥×¥È̾¤ÎÀßÄê
-// ¤È¤¯¤ËÀßÄꤷ¤Ê¤¯¤Æ¤âÌäÂê¤Ê¤·
+// Specify PukiWiki URL (default: auto)
 //$script = 'http://example.com/pukiwiki/';
 
-// ÊÔ½¸¼Ô¤Î̾Á°(½¤Àµ¤·¤Æ¤¯¤À¤µ¤¤)
+// Shorten $script: Cut its file name (default: not cut)
+//$script_directory_index = 'index.php';
+
+// Site admin's name (CHANGE THIS)
 $modifier = 'anonymous';
 
-// ÊÔ½¸¼Ô¤Î¥Û¡¼¥à¥Ú¡¼¥¸(½¤Àµ¤·¤Æ¤¯¤À¤µ¤¤)
+// Site admin's Web page (CHANGE THIS)
 $modifierlink = 'http://pukiwiki.example.com/';
 
-// ¥Ç¥Õ¥©¥ë¥È¤Î¥Ú¡¼¥¸Ì¾
-$defaultpage  = 'FrontPage';   // ¥È¥Ã¥×¥Ú¡¼¥¸ (¥Ú¡¼¥¸¤ò»ØÄꤷ¤Ê¤¤¤È¤­)
-$whatsnew     = 'RecentChanges';       // ¹¹¿·ÍúÎò
-$whatsdeleted = 'RecentDeleted';       // ºï½üÍúÎò
-$interwiki    = 'InterWikiName';       // InterWikiName ¤Î°ìÍ÷¤ò½ñ¤¯¥Ú¡¼¥¸
-$menubar      = 'MenuBar';     // ¥á¥Ë¥å¡¼¤È¤·¤Æɽ¼¨¤µ¤»¤ëÆâÍƤò½ñ¤¯¥Ú¡¼¥¸
+// Default page name
+$defaultpage  = 'FrontPage';     // Top / Default page
+$whatsnew     = 'RecentChanges'; // Modified page list
+$whatsdeleted = 'RecentDeleted'; // Removeed page list
+$interwiki    = 'InterWikiName'; // Set InterWiki definition here
+$menubar      = 'MenuBar';       // Menu
 
 /////////////////////////////////////////////////
-// XHTML version
-// skinÆâ¤ÇDTDÀë¸À¤òÀÚ¤êÂؤ¨¤ë¤Î¤Ë»ÈÍÑ¡£paint.inc.phpÂкö
-$html_transitional = FALSE; // FALSE:XHTML 1.1, TRUE:XHTML 1.0 Transitional
+// Change default Document Type Definition
 
-/////////////////////////////////////////////////
+// Some web browser's bug, and / or Java apprets may needs not-Strict DTD.
+// Some plugin (e.g. paint) set this PKWK_DTD_XHTML_1_0_TRANSITIONAL.
 
-// Allow using JavaScript
-//   JavaScript¤ò»ÈÍѤ¹¤ë¥×¥é¥°¥¤¥ó¤Ê¤É¤Î
-//   µ¡Ç½¤òÍÞÀ©¤·¤Þ¤¹
-define('PKWK_ALLOW_JAVASCRIPT', 0);    // 0 or 1
+//$pkwk_dtd = PKWK_DTD_XHTML_1_1; // Default
+//$pkwk_dtd = PKWK_DTD_XHTML_1_0_STRICT;
+//$pkwk_dtd = PKWK_DTD_XHTML_1_0_TRANSITIONAL;
+//$pkwk_dtd = PKWK_DTD_HTML_4_01_STRICT;
+//$pkwk_dtd = PKWK_DTD_HTML_4_01_TRANSITIONAL;
 
 /////////////////////////////////////////////////
-// TrackBackµ¡Ç½¤ò»ÈÍѤ¹¤ë
-$trackback = 0;
+// Always output "nofollow,noindex" attribute
 
-// Show trackbacks with an another window
-$trackback_javascript = 0;
+$nofollow = 0; // 1 = Try hiding from search engines
 
 /////////////////////////////////////////////////
-// Refererµ¡Ç½¤ò»ÈÍѤ¹¤ë
-$referer = 0;
+
+// PKWK_ALLOW_JAVASCRIPT - Must be 1 only for compatibility
+define('PKWK_ALLOW_JAVASCRIPT', 1);
 
 /////////////////////////////////////////////////
-// WikiName¤ò *̵¸ú¤Ë* ¤¹¤ë
+// _Disable_ WikiName auto-linking
 $nowikiname = 0;
 
 /////////////////////////////////////////////////
-// AutoLink¤òÍ­¸ú¤Ë¤¹¤ë¾ì¹ç¤Ï¡¢AutoLinkÂоݤȤʤë
-// ¥Ú¡¼¥¸Ì¾¤ÎºÇû¥Ð¥¤¥È¿ô¤ò»ØÄê
-// AutoLink¤ò̵¸ú¤Ë¤¹¤ë¾ì¹ç¤Ï0
-$autolink = 0;
+// AutoLink feature
+
+// AutoLink minimum length of page name
+$autolink = 0; // Bytes, 0 = OFF (try 8)
 
 /////////////////////////////////////////////////
-// Åà·ëµ¡Ç½¤òÍ­¸ú¤Ë¤¹¤ë
+// Enable Freeze / Unfreeze feature
 $function_freeze = 1;
 
 /////////////////////////////////////////////////
-// ´ÉÍý¼Ô¥Ñ¥¹¥ï¡¼¥É
+// Allow to use 'Do not change timestamp' checkbox
+// (0:Disable, 1:For everyone,  2:Only for the administrator)
+$notimeupdate = 1;
 
-// °Ê²¼¤Ï md5('pass') ¤Î½ÐÎÏ·ë²Ì¤Ç¤¹
-$adminpass = '1a1dc91c907325c69271ddf0c944bc72';
+/////////////////////////////////////////////////
+// Admin password for this Wikisite
 
-// = Ãí°Õ =
-//
-// ¥Ñ¥¹¥ï¡¼¥É¤òÀßÄꤹ¤ëÊýË¡¤È¤·¤Æ¡¢md5()´Ø¿ô¤ò»È¤¦ÊýË¡¤È¡¢
-// md5()´Ø¿ô¤Î·ë²Ì¤òÊÌÅÓ»»½Ð¤·¤Æ»È¤¦ÊýË¡¤¬¤¢¤ê¤Þ¤¹¡£
-// ¤¢¤Ê¤¿¤¬¥³¥ó¥Ô¥å¡¼¥¿¤ÎÁàºî¤Ë½¼Ê¬´·¤ì¤Æ¤¤¤ë¤Î¤Ç¤¢¤ì¤Ð¡¢
-// ¸å¼Ô¤ò¤ª´«¤á¤·¤Þ¤¹¡£
-//
-// Î㤨¤Ð¥Ñ¥¹¥ï¡¼¥É¤ò¡Öpass¡×¤È¤·¤¿¤¤¾ì¹ç¡¢°Ê²¼¤ÎÍͤ˵­½Ò¤¹¤ë
-// ¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£
-//
-// $adminpass = md5('pass');   // md5() ´Ø¿ô¤ò»È¤¦ÊýË¡
-//
-// ¤¿¤À¤·¡¢¤³¤ÎÊýË¡¤Ç¤Ï¡¢¤³¤Î¥Õ¥¡¥¤¥ë¤òÇÁ¤­¸«¤ë¤³¤È¤¬¤Ç¤­¤ë
-// (¤Ç¤­¤¿) Ã¯¤«¤Ë¡¢¥Ñ¥¹¥ï¡¼¥É¤½¤Î¤â¤Î¤òÃΤé¤ì¤ë¹â¤¤´í¸±À­¤¬
-// ¤¢¤ê¤Þ¤¹¡£¤³¤Î´í¸±À­¤ò²¼¤²¤ë¤¿¤á¤Ë¡¢md5()´Ø¿ô¤Î·ë²Ì¤À¤±¤ò
-// µ­½Ò¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£
-//
-// md5()´Ø¿ô¤Î·ë²Ì(MD5¥Ï¥Ã¥·¥å)¤Ï0¤«¤é9¤Î¿ô»ú¤È¡¢A¤«¤éF¤Þ¤Ç
-// ¤Î±Ñ»ú¤«¤é¤Ê¤ë32ʸ»ú¤Îʸ»úÎó¤Ç¡¢¤³¤Î¾ðÊó¤À¤±¤Ç¤Ï¸µ¤Îʸ»úÎó¤ò
-// ¿ä¬¤¹¤ë¤³¤È¤Ïº¤Æñ¤Ç¤¹¡£
-//
-// MD5¥Ï¥Ã¥·¥å¤Ï¡¢Linux¤äcygwin¤Ç¤¢¤ì¤Ð
-//
-//    $ echo -n 'pass' | md5sum
-//
-// ¤ÎÍͤˤ·¤Æ·×»»¤µ¤»¤ë»ö¤¬¤Ç¤­¤Þ¤¹¡£('-n' ¥ª¥×¥·¥ç¥ó¤ò˺¤ì¤º¤Ë!)
-// FreeBSD¤Ê¤É¤Ç¤Ï md5sum ¤ÎÂå¤ï¤ê¤Ë md5 ¥³¥Þ¥ó¥É¤ò»È¤Ã¤Æ¤¯¤À¤µ¤¤¡£
-//
-// ¤ª´«¤á¤Ç¤­¤Þ¤»¤ó¤¬¡¢PukiWiki¤Îmd5¥³¥Þ¥ó¥É¤Ç¤â»»½Ð¤¬²Äǽ¤Ç¤¹¡£
-//
-// http://<ÀßÃÖ¤·¤¿¾ì½ê>/pukiwiki.php?md5=pass
-//
-// ¤³¤ÎURL¤Ë¥¢¥¯¥»¥¹¤¹¤ë¤³¤È¤Ç¡¢»»½Ð·ë²Ì¤¬É½¼¨¤µ¤ì¤Þ¤¹¡£¤½¤Î
-// ¤«¤ï¤ê¡¢¤¢¤Ê¤¿¤¬¥¿¥¤¥×¤·¤¿¥Ñ¥¹¥ï¡¼¥É¤Ï¥Í¥Ã¥È¥ï¡¼¥¯¤òή¤ì¡¢
-// Ã¯¤Ë¤Ç¤âÇÁ¤­¸«¤¬¤Ç¤­¡¢Web¥µ¡¼¥Ð¡¼¤Î¥í¥°¤Ë¤â»Ä¤Ã¤Æ¤·¤Þ¤¦¡¢
-// ¤È¤¤¤Ã¤¿ÍÍ¡¹¤Ê¥ê¥¹¥¯¤òÉ餦²ÄǽÀ­¤¬¤¢¤ê¤Þ¤¹¡£¤¢¤Ê¤¿¤¬»È¤Ã¤Æ
-// ¤¤¤ë¥³¥ó¥Ô¥å¡¼¥¿¡¢¥µ¡¼¥Ð¡¼¤Þ¤Ç¤Î¥Í¥Ã¥È¥ï¡¼¥¯¡¢¥µ¡¼¥Ð¡¼¤Î
-// ¤É¤³¤«¤¬¿®Íê¤Ç¤­¤Ê¤¤¤Î¤Ç¤¢¤ì¤Ð¡¢¤³¤ÎÊýË¡¤Ï»È¤ï¤Ê¤¤¤Ç²¼¤µ¤¤¡£
+// Default: always fail
+$adminpass = '{x-php-md5}!';
+
+// Sample:
+//$adminpass = 'pass'; // Cleartext
+//$adminpass = '{x-php-md5}1a1dc91c907325c69271ddf0c944bc72'; // PHP md5()  'pass'
+//$adminpass = '{CRYPT}$1$AR.Gk94x$uCe8fUUGMfxAPH83psCZG/';   // LDAP CRYPT 'pass'
+//$adminpass = '{MD5}Gh3JHJBzJcaScd3wyUS8cg==';               // LDAP MD5   'pass'
+//$adminpass = '{SMD5}o7lTdtHFJDqxFOVX09C8QnlmYmZnd2Qx';      // LDAP SMD5  'pass'
 
 /////////////////////////////////////////////////
-// ChaSen, KAKASI ¤Ë¤è¤ë¡¢¥Ú¡¼¥¸Ì¾¤ÎÆɤߤμèÆÀ (0:̵¸ú,1:Í­¸ú)
+// Page-reading feature settings
+// (Automatically creating pronounce datas, for Kanji-included page names,
+//  to show sorted page-list correctly)
+
+// Enable page-reading feature by calling ChaSen or KAKASHI command
+// (1:Enable, 0:Disable)
 $pagereading_enable = 0;
 
-// ChaSen('chasen') or KAKASI('kakasi') or None('none')
+// Specify converter as ChaSen('chasen') or KAKASI('kakasi') or None('none')
 $pagereading_kanji2kana_converter = 'none';
 
-// ChaSen/KAKASI ¤È¤Î¼õ¤±ÅϤ·¤Ë»È¤¦´Á»ú¥³¡¼¥É (UNIX·Ï¤Ï EUC¡¢Win·Ï¤Ï SJIS ¤¬´ðËÜ)
-$pagereading_kanji2kana_encoding = 'EUC';
-//$pagereading_kanji2kana_encoding = 'SJIS';
+// Specify Kanji encoding to pass data between PukiWiki and the converter
+$pagereading_kanji2kana_encoding = 'EUC'; // Default for Unix
+//$pagereading_kanji2kana_encoding = 'SJIS'; // Default for Windows
 
-// ChaSen/KAKASI ¤Î¼Â¹Ô¥Õ¥¡¥¤¥ë (³Æ¼«¤Î´Ä¶­¤Ë¹ç¤ï¤»¤ÆÀßÄê)
+// Absolute path of the converter (ChaSen)
 $pagereading_chasen_path = '/usr/local/bin/chasen';
 //$pagereading_chasen_path = 'c:\progra~1\chasen21\chasen.exe';
 
+// Absolute path of the converter (KAKASI)
 $pagereading_kakasi_path = '/usr/local/bin/kakasi';
 //$pagereading_kakasi_path = 'c:\kakasi\bin\kakasi.exe';
 
-// ¥Ú¡¼¥¸Ì¾Æɤߤò³ÊǼ¤·¤¿¥Ú¡¼¥¸¤Î̾Á°
+// Page name contains pronounce data (written by the converter)
 $pagereading_config_page = ':config/PageReading';
 
-// converter ='none' ¤Î¾ì¹ç¤ÎÆɤ߲¾Ì¾¼­½ñ
+// Page name of default pronouncing dictionary, used when converter = 'none'
 $pagereading_config_dict = ':config/PageReading/dict';
 
+
 /////////////////////////////////////////////////
-// ¥æ¡¼¥¶ÄêµÁ
+// Authentication type
+// AUTH_TYPE_NONE, AUTH_TYPE_FORM, AUTH_TYPE_BASIC, AUTH_TYPE_EXTERNAL, ...
+// $auth_type = AUTH_TYPE_FORM;
+// $auth_external_login_url_base = './exlogin.php';
+
+/////////////////////////////////////////////////
+// LDAP
+$ldap_user_account = 0; // (0: Disabled, 1: Enabled)
+// $ldap_server = 'ldap://ldapserver:389';
+// $ldap_base_dn = 'ou=Users,dc=ldap,dc=example,dc=com';
+// $ldap_bind_dn = 'uid=$login,dc=example,dc=com';
+// $ldap_bind_password = '';
+
+/////////////////////////////////////////////////
+// User prefix that shows its auth provider
+$auth_provider_user_prefix_default = 'default:';
+$auth_provider_user_prefix_ldap = 'ldap:';
+$auth_provider_user_prefix_external = 'external:';
+$auth_provider_user_prefix_saml = 'saml:';
+
+
+/////////////////////////////////////////////////
+// User definition
 $auth_users = array(
-       'foo'   => 'foo_passwd',
-       'bar'   => 'bar_passwd',
-       'hoge'  => 'hoge_passwd',
+       // Username => password
+       'foo'   => 'foo_passwd', // Cleartext
+       'bar'   => '{x-php-md5}f53ae779077e987718cc285b14dfbe86', // PHP md5() 'bar_passwd'
+       'hoge'  => '{SMD5}OzJo/boHwM4q5R+g7LCOx2xGMkFKRVEx',      // LDAP SMD5 'hoge_passwd'
+);
+
+// Group definition
+$auth_groups = array(
+       // Groupname => group members(users)
+       'valid-user' => '', // Reserved 'valid-user' group contains all authenticated users
+       'groupfoobar'   => 'foo,bar',
 );
 
 /////////////////////////////////////////////////
-// Ç§¾ÚÊý¼°¼ïÊÌ
-// 'pagename' : ¥Ú¡¼¥¸Ì¾
-// 'contents' : ¥Ú¡¼¥¸ÆâÍÆ
-$auth_method_type = 'contents';
+// Authentication method
+
+$auth_method_type      = 'pagename';   // By Page name
+//$auth_method_type    = 'contents';   // By Page contents
 
 /////////////////////////////////////////////////
-// ±ÜÍ÷ǧ¾Ú¥Õ¥é¥° (0:ÉÔÍ× 1:ɬÍ×)
+// Read auth (0:Disable, 1:Enable)
 $read_auth = 0;
 
-// ±ÜÍ÷ǧ¾ÚÂоݥѥ¿¡¼¥óÄêµÁ
 $read_auth_pages = array(
-       '/¤Ò¤­¤³¤â¤ë¤Û¤²/'      => 'hoge',
-       '/(¥Í¥¿¥Ð¥ì|¤Í¤¿¤Ð¤ì)/' => 'foo,bar,hoge',
+       // Regex                   Groupname or Username
+       '#PageForAllValidUsers#'        => 'valid-user',
+       '#HogeHoge#'            => 'hoge',
+       '#(NETABARE|NetaBare)#' => 'foo,bar,hoge',
 );
 
 /////////////////////////////////////////////////
-// ÊÔ½¸Ç§¾Ú¥Õ¥é¥° (0:ÉÔÍ× 1:ɬÍ×)
+// Edit auth (0:Disable, 1:Enable)
 $edit_auth = 0;
 
-// ÊÔ½¸Ç§¾ÚÂоݥѥ¿¡¼¥óÄêµÁ
 $edit_auth_pages = array(
-       '/Bar¤Î¸ø³«Æüµ­/'       => 'bar',
-       '/¤Ò¤­¤³¤â¤ë¤Û¤²/'      => 'hoge',
-       '/(¥Í¥¿¥Ð¥ì|¤Í¤¿¤Ð¤ì)/' => 'foo',
+       // Regex                   Username
+       '#BarDiary#'            => 'bar',
+       '#HogeHoge#'            => 'hoge',
+       '#(NETABARE|NetaBare)#' => 'foo,bar,hoge',
 );
 
 /////////////////////////////////////////////////
-// ¸¡º÷ǧ¾Ú¥Õ¥é¥°
-// 0: ±ÜÍ÷¤¬µö²Ä¤µ¤ì¤Æ¤¤¤Ê¤¤¥Ú¡¼¥¸ÆâÍƤ⸡º÷ÂоݤȤ¹¤ë
-// 1: ¸¡º÷»þ¤Î¥í¥°¥¤¥ó¥æ¡¼¥¶¤Ëµö²Ä¤µ¤ì¤¿¥Ú¡¼¥¸¤Î¤ß¸¡º÷ÂоݤȤ¹¤ë
+// Search auth
+// 0: Disabled (Search read-prohibited page contents)
+// 1: Enabled  (Search only permitted pages for the user)
 $search_auth = 0;
 
 /////////////////////////////////////////////////
-// $whatsnew: ¹¹¿·ÍúÎò¤òɽ¼¨¤¹¤ë¤È¤­¤ÎºÇÂç·ï¿ô
-$maxshow = 60;
+// AutoTicketLink
+$ticket_link_sites = array(
+/*
+       array(
+               'key' => 'phpbug',
+               'type' => 'redmine', // type: redmine, jira or git
+               'title' => 'PHP :: Bug #$1',
+               'base_url' => 'https://bugs.php.net/bug.php?id=',
+       ),
+       array(
+               'key' => 'asfjira',
+               'type' => 'jira',
+               'title' => 'ASF JIRA [$1]',
+               'base_url' => 'https://issues.apache.org/jira/browse/',
+       ),
+       array(
+               'key' => 'pukiwiki-commit',
+               'type' => 'git',
+               'title' => 'PukiWiki revision $1',
+               'base_url' => 'https://ja.osdn.net/projects/pukiwiki/scm/git/pukiwiki/commits/',
+       ),
+*/
+);
 
-// $whatsdeleted: ºï½üÍúÎò¤ÎºÇÂç·ï¿ô(0¤Çµ­Ï¿¤·¤Ê¤¤)
-$maxshow_deleted = 60;
+/////////////////////////////////////////////////
+// Show External Link Cushion Page
+// 0: Disabled
+// 1: Enabled
+$external_link_cushion_page = 0;
+$external_link_cushion = array(
+       // Wait N seconds before jumping to an external site
+       'wait_seconds' => 5,
+       // Internal site domain list
+       'internal_domains' => array(
+               'localhost',
+               // '*.example.com',
+       ),
+       // Don't show extenal link icons on these domains
+       'silent_external_domains' => array(
+               'pukiwiki.osdn.jp',
+               'pukiwiki.example.com',
+       ),
+);
+
+/////////////////////////////////////////////////
+// Show Topicpath title
+// 0: Disabled
+// 1: Enabled
+$topicpath_title = 1;
 
 /////////////////////////////////////////////////
-// ÊÔ½¸¤¹¤ë¤³¤È¤Î¤Ç¤­¤Ê¤¤¥Ú¡¼¥¸¤Î̾Á° , ¤Ç¶èÀÚ¤ë
+// Output HTML meta Referrer Policy
+// Value: '' (default), no-referrer, origin, same-origin, ...
+// Reference: https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Referrer-Policy
+$html_meta_referrer_policy = '';
+
+/////////////////////////////////////////////////
+// Output custom HTTP response headers
+$http_response_custom_headers = array(
+       // 'Strict-Transport-Security: max-age=86400',
+       // 'X-Content-Type-Options: nosniff',
+);
+
+/////////////////////////////////////////////////
+// $whatsnew: Max number of RecentChanges
+$maxshow = 500;
+
+// $whatsdeleted: Max number of RecentDeleted
+// (0 = Disabled)
+$maxshow_deleted = 200;
+
+/////////////////////////////////////////////////
+// Page names can't be edit via PukiWiki
 $cantedit = array( $whatsnew, $whatsdeleted );
 
 /////////////////////////////////////////////////
-// Last-Modified ¥Ø¥Ã¥À¤ò½ÐÎϤ¹¤ë
+// HTTP: Output Last-Modified header
 $lastmod = 0;
 
 /////////////////////////////////////////////////
-// ÆüÉÕ¥Õ¥©¡¼¥Þ¥Ã¥È
+// Date format
 $date_format = 'Y-m-d';
 
-// »þ¹ï¥Õ¥©¡¼¥Þ¥Ã¥È
+// Time format
 $time_format = 'H:i:s';
 
 /////////////////////////////////////////////////
-// RSS ¤Ë½ÐÎϤ¹¤ë¥Ú¡¼¥¸¿ô
+// Max number of RSS feed
 $rss_max = 15;
 
 /////////////////////////////////////////////////
-// ¥Ð¥Ã¥¯¥¢¥Ã¥×¤ò¹Ô¤¦
+// Backup related settings
+
+// Enable backup
 $do_backup = 1;
 
-// ¥Ú¡¼¥¸¤òºï½ü¤·¤¿ºÝ¤Ë¥Ð¥Ã¥¯¥¢¥Ã¥×¤â¤¹¤Ù¤Æºï½ü¤¹¤ë
+// When a page had been removed, remove its backup too?
 $del_backup = 0;
 
-// ¥Ð¥Ã¥¯¥¢¥Ã¥×´Ö³Ö¤ÈÀ¤Âå¿ô
-$cycle  = 3;   // Ä¾Á°¤Î½¤Àµ¤«¤é²¿»þ´Ö·Ð²á¤·¤Æ¤¤¤¿¤é¥Ð¥Ã¥¯¥¢¥Ã¥×¤¹¤ë¤« (0¤Ç¹¹¿·Ëè)
-$maxage = 120; // À¤Âå¿ô
+// Bacukp interval and generation
+$cycle  =   3; // Wait N hours between backup (0 = no wait)
+$maxage = 120; // Stock latest N backups
 
-// NOTE: $cycle x $maxage / 24 = ¥Ç¡¼¥¿¤ò¼º¤¦¤¿¤á¤ËºÇÄã¸ÂɬÍפÊÆü¿ô
+// NOTE: $cycle x $maxage / 24 = Minimum days to lost your data
 //          3   x   120   / 24 = 15
 
-// ¥Ð¥Ã¥¯¥¢¥Ã¥×¤ÎÀ¤Âå¤ò¶èÀÚ¤ëʸ»úÎó
+// Splitter of backup data (NOTE: Too dangerous to change)
 define('PKWK_SPLITTER', '>>>>>>>>>>');
 
 /////////////////////////////////////////////////
-// ¥Ú¡¼¥¸¤Î¹¹¿·»þ¤Ë¥Ð¥Ã¥¯¥°¥é¥ó¥É¤Ç¼Â¹Ô¤¹¤ë¥³¥Þ¥ó¥É(mknmz¤Ê¤É)
-$update_exec = '';
-//$update_exec = '/usr/bin/mknmz --media-type=text/pukiwiki -O /var/lib/namazu/index/ -L ja -c -K /var/www/wiki/';
+// Command execution per update
+
+define('PKWK_UPDATE_EXEC', '');
+
+// Sample: Namazu (Search engine)
+//$target     = '/var/www/wiki/';
+//$mknmz      = '/usr/bin/mknmz';
+//$output_dir = '/var/lib/namazu/index/';
+//define('PKWK_UPDATE_EXEC',
+//     $mknmz . ' --media-type=text/pukiwiki' .
+//     ' -O ' . $output_dir . ' -L ja -c -K ' . $target);
 
 /////////////////////////////////////////////////
-// HTTP¥ê¥¯¥¨¥¹¥È¤Ë¥×¥í¥­¥·¥µ¡¼¥Ð¤ò»ÈÍѤ¹¤ë
+// HTTP proxy setting
+
+// Use HTTP proxy server to get remote data
 $use_proxy = 0;
 
-$proxy_host = 'proxy.example.com'; // proxy¥µ¡¼¥Ð̾
-$proxy_port = 8080; // ¥Ý¡¼¥ÈÈÖ¹æ
+$proxy_host = 'proxy.example.com';
+$proxy_port = 8080;
 
-// Basicǧ¾Ú¤ò¹Ô¤¦
+// Do Basic authentication
 $need_proxy_auth = 0;
-$proxy_auth_user = 'username'; // ¥æ¡¼¥¶¡¼Ì¾
-$proxy_auth_pass = 'password'; // ¥Ñ¥¹¥ï¡¼¥É
+$proxy_auth_user = 'username';
+$proxy_auth_pass = 'password';
 
-// ¥×¥í¥­¥·¥µ¡¼¥Ð¤ò»ÈÍѤ·¤Ê¤¤¥Û¥¹¥È¤Î¥ê¥¹¥È
+// Hosts that proxy server will not be needed
 $no_proxy = array(
        'localhost',    // localhost
        '127.0.0.0/8',  // loopback
@@ -298,80 +436,98 @@ $no_proxy = array(
 );
 
 ////////////////////////////////////////////////
-// ¥á¡¼¥ëÁ÷¿®
+// Mail related settings
+
+// Send mail per update of pages
+$notify = 0;
 
-$notify = 0;   // (1:¥Ú¡¼¥¸¤Î¹¹¿·»þ¤Ë¥á¡¼¥ë¤òÁ÷¿®¤¹¤ë)
-$notify_diff_only = 0; // (1:º¹Ê¬¤À¤±¤òÁ÷¿®¤¹¤ë)
+// Send diff only
+$notify_diff_only = 1;
 
-// SMTP¥µ¡¼¥Ð (Windows ¤Î¤ß, Ä̾ï¤Ï php.ini ¤Ç»ØÄê)
+// SMTP server (Windows only. Usually specified at php.ini)
 $smtp_server = 'localhost';
 
-$notify_to   = 'to@example.com';       // To:¡Ê°¸Àè¡Ë
-$notify_from = 'from@example.com';     // From:¡ÊÁ÷¤ê¼ç¡Ë
+// Mail recipient (To:) and sender (From:)
+$notify_to   = 'to@example.com';       // To:
+$notify_from = 'from@example.com';     // From:
 
-// Subject:¡Ê·ï̾¡Ë $page¤Ë¥Ú¡¼¥¸Ì¾¤¬Æþ¤ê¤Þ¤¹
-$notify_subject = '[pukiwiki] $page';
+// Subject: ($page = Page name wll be replaced)
+$notify_subject = '[PukiWiki] $page';
 
-// ¥á¡¼¥ë¥Ø¥Ã¥À
-$notify_header = "From: $notify_from\r\n" .
-       'X-Mailer: PukiWiki/' .  S_VERSION . ' PHP/' . phpversion();
+// Mail header
+// NOTE: Multiple items must be divided by "\r\n", not "\n".
+$notify_header = '';
 
 /////////////////////////////////////////////////
-// ¥á¡¼¥ëÁ÷¿®: POP / APOP Before SMTP
+// Mail: POP / APOP Before SMTP
 
-// ¥á¡¼¥ëÁ÷¿®Á°¤ËPOP¤Þ¤¿¤ÏAPOP¤Ë¤è¤ëǧ¾Ú¤ò¹Ô¤¦
+// Do POP/APOP authentication before send mail
 $smtp_auth = 0;
 
-$pop_server = 'localhost';     // POP¥µ¡¼¥Ð
-$pop_port   = 110;     // ¥Ý¡¼¥ÈÈÖ¹æ
-$pop_userid = '';      // POP¥æ¡¼¥¶Ì¾
-$pop_passwd = '';      // POP¥Ñ¥¹¥ï¡¼¥É
+$pop_server = 'localhost';
+$pop_port   = 110;
+$pop_userid = '';
+$pop_passwd = '';
 
-// Ç§¾Ú¤Ë APOP ¤òÍøÍѤ¹¤ë¤«¤É¤¦¤« (¢¨¥µ¡¼¥Ð¦¤ÎÂбþ¤¬É¬Í×)
-//   Ì¤ÀßÄê = ¼«Æ° (²Äǽ¤Ç¤¢¤ì¤ÐAPOP¤ò»ÈÍѤ¹¤ë)
-//   1 = APOP¸ÇÄê  (ɬ¤ºAPOP¤ò»ÈÍѤ¹¤ë)
-//   0 = POP¸ÇÄê   (ɬ¤ºPOP¤ò»ÈÍѤ¹¤ë)
+// Use APOP instead of POP (If server uses)
+//   Default = Auto (Use APOP if possible)
+//   1       = Always use APOP
+//   0       = Always use POP
 // $pop_auth_use_apop = 1;
 
 /////////////////////////////////////////////////
-// °ìÍ÷¡¦¹¹¿·°ìÍ÷¤Ë´Þ¤á¤Ê¤¤¥Ú¡¼¥¸Ì¾(Àµµ¬É½¸½¤Ç)
+// Ignore list
+
+// Regex of ignore pages
 $non_list = '^\:';
 
-// $non_list¤òʸ»úÎ󸡺÷¤ÎÂоݥڡ¼¥¸¤È¤¹¤ë¤«
-// 0¤Ë¤¹¤ë¤È¡¢¾åµ­¥Ú¡¼¥¸Ì¾¤¬Ã±¸ì¸¡º÷¤«¤é¤â½ü³°¤µ¤ì¤Þ¤¹¡£
+// Search ignored pages
 $search_non_list = 1;
 
+
+// Page redirect rules
+$page_redirect_rules = array(
+       //'#^FromProject($|(/(.+)$))#' => 'ToProject$1',
+       //'#^FromProject($|(/(.+)$))#' => function($matches) { return 'ToProject' . $matches[1]; },
+);
+
 /////////////////////////////////////////////////
-// ¥Ú¡¼¥¸Ì¾¤Ë½¾¤Ã¤Æ¼«Æ°¤Ç¡¢¿÷·Á¤È¤¹¤ë¥Ú¡¼¥¸¤ÎÆɤ߹þ¤ß
+// Template setting
+
 $auto_template_func = 1;
 $auto_template_rules = array(
        '((.+)\/([^\/]+))' => '\2/template'
 );
 
 /////////////////////////////////////////////////
-// ¸«½Ð¤·¹Ô¤Ë¸ÇÍ­¤Î¥¢¥ó¥«¡¼¤ò¼«Æ°ÁÞÆþ¤¹¤ë
+// Automatically add fixed heading anchor
 $fixed_heading_anchor = 1;
 
 /////////////////////////////////////////////////
-// <pre>¤Î¹ÔƬ¥¹¥Ú¡¼¥¹¤ò¤Ò¤È¤Ä¼è¤ê½ü¤¯
+// Remove the first spaces from Preformatted text
 $preformat_ltrim = 1;
 
 /////////////////////////////////////////////////
-// ²þ¹Ô¤òÈ¿±Ç¤¹¤ë(²þ¹Ô¤ò<br />¤ËÃÖ´¹¤¹¤ë)
+// Convert linebreaks into <br />
 $line_break = 0;
 
 /////////////////////////////////////////////////
-// ¥æ¡¼¥¶¡¼¥¨¡¼¥¸¥§¥ó¥ÈÂбþÀßÄê
+// Use date-time rules (See rules.ini.php)
+$usedatetime = 1;
+
+/////////////////////////////////////////////////
+// Logging updates (0 or 1)
+$logging_updates = 0;
+$logging_updates_log_dir = '/var/log/pukiwiki';
+
+/////////////////////////////////////////////////
+// User-Agent settings
 //
-// ¥ê¥Ã¥Á¥¯¥é¥¤¥¢¥ó¥È¤òÁ°Äó¤È¤·¤¿¥µ¥¤¥È¤ò¹½ÃÛ¤¹¤ë
-// ¤¿¤á¤Ë¡¢·ÈÂÓÅÅÏäʤɤ˰տÞŪ¤ËÈóÂбþ¤È¤·¤¿¤¤¾ì¹ç¡¢
-// ºÇ¸å¤Î¥Ç¥Õ¥©¥ë¥ÈÀßÄê°Ê³°¤Î¹Ô¤òÁ´¤Æºï½ü¤¢¤ë¤¤¤Ï
-// ¥³¥á¥ó¥È¥¢¥¦¥È¤·¤Æ²¼¤µ¤¤¡£
+// If you want to ignore embedded browsers for rich-content-wikisite,
+// remove (or comment-out) all 'keitai' settings.
 //
-// ¥Ç¥¶¥¤¥ó¤ä¥¹¥¿¥¤¥ë¤ò´ÊÁǤÊkeitai¥×¥í¥Õ¥¡¥¤¥ë¤Ë
-// Åý°ì¤·¤¿¤¤»þ¤Ï¡¢¥Ç¥Õ¥©¥ë¥ÈÀßÄê°Ê³°¤Î¹Ô¤òÁ´¤Æºï½ü
-// ¤¢¤ë¤¤¤Ï¥³¥á¥ó¥È¥¢¥¦¥È¤·¤¿¸å¤Ë¡¢¥Ç¥Õ¥©¥ë¥ÈÀßÄê¤ò
-// 'profile'=>'keitai' ¤È½¤Àµ¤·¤Æ²¼¤µ¤¤¡£
+// If you want to to ignore desktop-PC browsers for simple wikisite,
+// copy keitai.ini.php to default.ini.php and customize it.
 
 $agents = array(
 // pattern: A regular-expression that matches device(browser)'s name and version
@@ -404,12 +560,12 @@ $agents = array(
        array('pattern'=>'#\b(AVE-Front)/([0-9\.]+)#',  'profile'=>'keitai'), // The same?
 
        // NTT-DoCoMo, i-mode (embeded Compact NetFront) and FOMA (embedded NetFront) phones
-       // Sample: "DoCoMo/1.0/F501i", "DoCoMo/1.0/N504i/c10/TB/serXXXX" // c°Ê¹ß¤Ï²ÄÊÑ
-       // Sample: "DoCoMo/2.0 MST_v_SH2101V(c100;TB;W22H12;serXXXX;iccxxxx)" // ()¤ÎÃæ¤Ï²ÄÊÑ
+       // Sample: "DoCoMo/1.0/F501i", "DoCoMo/1.0/N504i/c10/TB/serXXXX" // c以降は可変
+       // Sample: "DoCoMo/2.0 MST_v_SH2101V(c100;TB;W22H12;serXXXX;iccxxxx)" // ()の中は可変
        array('pattern'=>'#^(DoCoMo)/([0-9\.]+)#',      'profile'=>'keitai'),
 
        // Vodafone's embedded browser
-       // Sample: "J-PHONE/2.0/J-T03"  // 2.0¤Ï"¥Ö¥é¥¦¥¶¤Î"¥Ð¡¼¥¸¥ç¥ó
+       // Sample: "J-PHONE/2.0/J-T03"  // 2.0は"ブラウザの"バージョン
        // Sample: "J-PHONE/4.0/J-SH51/SNxxxx SH/0001a Profile/MIDP-1.0 Configuration/CLDC-1.0 Ext-Profile/JSCL-1.1.0"
        array('pattern'=>'#^(J-PHONE)/([0-9\.]+)#',     'profile'=>'keitai'),
 
@@ -419,11 +575,11 @@ $agents = array(
 
        // Opera, dressing up as other embedded browsers
        // Sample: "Mozilla/3.0(DDIPOCKET;KYOCERA/AH-K3001V/1.4.1.67.000000/0.1/C100) Opera 7.0" (Like CNF at 'keitai'-mode)
-       array('pattern'=>'#\bDDIPOCKET\b.+\b(Opera) ([0-9\.]+)\b#',     'profile'=>'keitai'),
+       array('pattern'=>'#\b(?:DDIPOCKET|WILLCOM)\b.+\b(Opera) ([0-9\.]+)\b#', 'profile'=>'keitai'),
 
        // Planetweb http://www.planetweb.com/
        // Sample: "Mozilla/3.0 (Planetweb/v1.07 Build 141; SPS JP)" ("EGBROWSER", Web browser for PlayStation 2)
-       array('pattern'=>'#\b(Planet[Ww]eb)/[a-z]?([0-9\.]+)#', 'profile'=>'keitai'),
+       array('pattern'=>'#\b(Planetweb)/v([0-9\.]+)#', 'profile'=>'keitai'),
 
        // DreamPassport, Web browser for SEGA DreamCast
        // Sample: "Mozilla/3.0 (DreamPassport/3.0)"
@@ -467,4 +623,3 @@ $agents = array(
 
        array('pattern'=>'#^#', 'profile'=>'default'),  // Sentinel
 );
-?>