Index: trunk/phase3/includes/DefaultSettings.php |
— | — | @@ -1,5 +1,6 @@ |
2 | 2 | <?php |
3 | 3 | /** |
| 4 | + * @file |
4 | 5 | * |
5 | 6 | * NEVER EDIT THIS FILE |
6 | 7 | * |
— | — | @@ -14,23 +15,24 @@ |
15 | 16 | * |
16 | 17 | * Documentation is in the source and on: |
17 | 18 | * http://www.mediawiki.org/wiki/Manual:Configuration_settings |
18 | | - * |
19 | 19 | */ |
20 | 20 | |
21 | | -# This is not a valid entry point, perform no further processing unless MEDIAWIKI is defined |
| 21 | +/** |
| 22 | + * @cond file_level_code |
| 23 | + * This is not a valid entry point, perform no further processing unless MEDIAWIKI is defined |
| 24 | + */ |
22 | 25 | if( !defined( 'MEDIAWIKI' ) ) { |
23 | 26 | echo "This file is part of MediaWiki and is not a valid entry point\n"; |
24 | 27 | die( 1 ); |
25 | 28 | } |
26 | 29 | |
27 | | -/** |
28 | | - * Create a site configuration object |
29 | | - * Not used for much in a default install |
30 | | - */ |
| 30 | + |
| 31 | +# Create a site configuration object. Not used for much in a default install |
31 | 32 | if ( !defined( 'MW_PHP4' ) ) { |
32 | 33 | require_once( "$IP/includes/SiteConfiguration.php" ); |
33 | 34 | $wgConf = new SiteConfiguration; |
34 | 35 | } |
| 36 | +/** @endcond */ |
35 | 37 | |
36 | 38 | /** MediaWiki version number */ |
37 | 39 | $wgVersion = '1.17alpha'; |
— | — | @@ -38,27 +40,21 @@ |
39 | 41 | /** Name of the site. It must be changed in LocalSettings.php */ |
40 | 42 | $wgSitename = 'MediaWiki'; |
41 | 43 | |
42 | | -/** |
43 | | - * Name of the project namespace. If left set to false, $wgSitename will be |
44 | | - * used instead. |
45 | | - */ |
46 | | -$wgMetaNamespace = false; |
47 | | - |
48 | | -/** |
49 | | - * Name of the project talk namespace. |
| 44 | +/** |
| 45 | + * URL of the server. It will be automatically built including https mode. |
50 | 46 | * |
51 | | - * Normally you can ignore this and it will be something like |
52 | | - * $wgMetaNamespace . "_talk". In some languages, you may want to set this |
53 | | - * manually for grammatical reasons. It is currently only respected by those |
54 | | - * languages where it might be relevant and where no automatic grammar converter |
55 | | - * exists. |
| 47 | + * Example: |
| 48 | + * <code> |
| 49 | + * $wgServer = http://example.com |
| 50 | + * </code> |
| 51 | + * |
| 52 | + * This is usually detected correctly by MediaWiki. If MediaWiki detects the |
| 53 | + * wrong server, it will redirect incorrectly after you save a page. In that |
| 54 | + * case, set this variable to fix it. |
56 | 55 | */ |
57 | | -$wgMetaNamespaceTalk = false; |
58 | | - |
59 | | - |
60 | | -/** URL of the server. It will be automatically built including https mode */ |
61 | 56 | $wgServer = ''; |
62 | 57 | |
| 58 | +/** @cond file_level_code */ |
63 | 59 | if( isset( $_SERVER['SERVER_NAME'] ) ) { |
64 | 60 | $wgServerName = $_SERVER['SERVER_NAME']; |
65 | 61 | } elseif( isset( $_SERVER['HOSTNAME'] ) ) { |
— | — | @@ -71,7 +67,6 @@ |
72 | 68 | $wgServerName = 'localhost'; |
73 | 69 | } |
74 | 70 | |
75 | | -# check if server use https: |
76 | 71 | $wgProto = (isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] == 'on') ? 'https' : 'http'; |
77 | 72 | |
78 | 73 | $wgServer = $wgProto.'://' . $wgServerName; |
— | — | @@ -83,11 +78,16 @@ |
84 | 79 | |
85 | 80 | $wgServer .= ":" . $_SERVER['SERVER_PORT']; |
86 | 81 | } |
| 82 | +/** @endcond */ |
87 | 83 | |
| 84 | +/************************************************************************//** |
| 85 | + * @name Script path settings |
| 86 | + * @{ |
| 87 | + */ |
88 | 88 | |
89 | 89 | /** |
90 | 90 | * The path we should point to. |
91 | | - * It might be a virtual path in case with use apache mod_rewrite for example |
| 91 | + * It might be a virtual path in case with use apache mod_rewrite for example. |
92 | 92 | * |
93 | 93 | * This *needs* to be set correctly. |
94 | 94 | * |
— | — | @@ -117,86 +117,195 @@ |
118 | 118 | ( strpos( php_sapi_name(), 'apache2filter' ) === false ) && |
119 | 119 | ( strpos( php_sapi_name(), 'isapi' ) === false ); |
120 | 120 | |
| 121 | +/** |
| 122 | + * The extension to append to script names by default. This can either be .php |
| 123 | + * or .php5. |
| 124 | + * |
| 125 | + * Some hosting providers use PHP 4 for *.php files, and PHP 5 for *.php5. This |
| 126 | + * variable is provided to support those providers. |
| 127 | + */ |
| 128 | +$wgScriptExtension = '.php'; |
121 | 129 | |
122 | | -/**@{ |
123 | | - * Script users will request to get articles |
124 | | - * ATTN: Old installations used wiki.phtml and redirect.phtml - make sure that |
125 | | - * LocalSettings.php is correctly set! |
| 130 | +/** |
| 131 | + * The URL path to index.php. |
126 | 132 | * |
127 | | - * Will be set based on $wgScriptPath in Setup.php if not overridden in |
128 | | - * LocalSettings.php. Generally you should not need to change this unless you |
129 | | - * don't like seeing "index.php". |
| 133 | + * Defaults to "{$wgScriptPath}/index{$wgScriptExtension}". |
130 | 134 | */ |
131 | | -$wgScriptExtension = '.php'; ///< extension to append to script names by default |
132 | | -$wgScript = false; ///< defaults to "{$wgScriptPath}/index{$wgScriptExtension}" |
133 | | -$wgRedirectScript = false; ///< defaults to "{$wgScriptPath}/redirect{$wgScriptExtension}" |
| 135 | +$wgScript = false; |
| 136 | + |
| 137 | +/** |
| 138 | + * The URL path to redirect.php. This is a script that is used by the Nostalgia |
| 139 | + * skin. |
| 140 | + * |
| 141 | + * Defaults to "{$wgScriptPath}/redirect{$wgScriptExtension}". |
| 142 | + */ |
| 143 | +$wgRedirectScript = false; ///< defaults to |
134 | 144 | /**@}*/ |
135 | 145 | |
136 | 146 | |
137 | | -/**@{ |
| 147 | +/************************************************************************//** |
| 148 | + * @name URLs and file paths |
| 149 | + * |
138 | 150 | * These various web and file path variables are set to their defaults |
139 | 151 | * in Setup.php if they are not explicitly set from LocalSettings.php. |
140 | 152 | * If you do override them, be sure to set them all! |
141 | 153 | * |
142 | 154 | * These will relatively rarely need to be set manually, unless you are |
143 | 155 | * splitting style sheets or images outside the main document root. |
| 156 | + * |
| 157 | + * In this section, a "path" is usually a host-relative URL, i.e. a URL without |
| 158 | + * the host part, that starts with a slash. In most cases a full URL is also |
| 159 | + * acceptable. A "directory" is a local file path. |
| 160 | + * |
| 161 | + * In both paths and directories, trailing slashes should not be included. |
| 162 | + * |
| 163 | + * @{ |
144 | 164 | */ |
| 165 | + |
145 | 166 | /** |
146 | | - * asset paths as seen by users |
| 167 | + * The URL path of the skins directory. Defaults to "{$wgScriptPath}/skins" |
147 | 168 | */ |
148 | | -$wgStylePath = false; ///< defaults to "{$wgScriptPath}/skins" |
149 | | -$wgLocalStylePath = false; ///< defaults to "{$wgScriptPath}/skins", shouldn't point to an external domain |
150 | | -$wgExtensionAssetsPath = false; ///< defaults to "{$wgScriptPath}/extensions" |
| 169 | +$wgStylePath = false; |
| 170 | +$wgStyleSheetPath = &$wgStylePath; |
151 | 171 | |
152 | 172 | /** |
153 | | - * filesystem stylesheets directory |
| 173 | + * The URL path of the skins directory. Should not point to an external domain. |
| 174 | + * Defaults to "{$wgScriptPath}/skins". |
154 | 175 | */ |
155 | | -$wgStyleDirectory = false; ///< defaults to "{$IP}/skins" |
156 | | -$wgStyleSheetPath = &$wgStylePath; |
157 | | -$wgArticlePath = false; ///< default to "{$wgScript}/$1" or "{$wgScript}?title=$1", depending on $wgUsePathInfo |
158 | | -$wgUploadPath = false; ///< defaults to "{$wgScriptPath}/images" |
159 | | -$wgUploadDirectory = false; ///< defaults to "{$IP}/images" |
160 | | -$wgHashedUploadDirectory = true; |
161 | | -$wgLogo = false; ///< defaults to "{$wgStylePath}/common/images/wiki.png" |
| 176 | +$wgLocalStylePath = false; |
| 177 | + |
| 178 | +/** |
| 179 | + * The URL path of the extensions directory. |
| 180 | + * Defaults to "{$wgScriptPath}/extensions". |
| 181 | + */ |
| 182 | +$wgExtensionAssetsPath = false; |
| 183 | + |
| 184 | +/** |
| 185 | + * Filesystem stylesheets directory. Defaults to "{$IP}/skins" |
| 186 | + */ |
| 187 | +$wgStyleDirectory = false; |
| 188 | + |
| 189 | +/** |
| 190 | + * The URL path for primary article page views. This path should contain $1, |
| 191 | + * which is replaced by the article title. |
| 192 | + * |
| 193 | + * Defaults to "{$wgScript}/$1" or "{$wgScript}?title=$1", depending on |
| 194 | + * $wgUsePathInfo. |
| 195 | + */ |
| 196 | +$wgArticlePath = false; |
| 197 | + |
| 198 | +/** |
| 199 | + * The URL path for the images directory. Defaults to "{$wgScriptPath}/images" |
| 200 | + */ |
| 201 | +$wgUploadPath = false; |
| 202 | + |
| 203 | +/** |
| 204 | + * The filesystem path of the images directory. Defaults to "{$IP}/images". |
| 205 | + */ |
| 206 | +$wgUploadDirectory = false; |
| 207 | + |
| 208 | +/** |
| 209 | + * The URL path of the wiki logo. The logo size should be 135x135 pixels. |
| 210 | + * Defaults to "{$wgStylePath}/common/images/wiki.png". |
| 211 | + */ |
| 212 | +$wgLogo = false; |
| 213 | + |
| 214 | +/** |
| 215 | + * The URL path of the shortcut icon. |
| 216 | + */ |
162 | 217 | $wgFavicon = '/favicon.ico'; |
163 | | -$wgAppleTouchIcon = false; ///< This one'll actually default to off. For iPhone and iPod Touch web app bookmarks |
164 | | -$wgMathPath = false; ///< defaults to "{$wgUploadPath}/math" |
165 | | -$wgMathDirectory = false; ///< defaults to "{$wgUploadDirectory}/math" |
166 | | -$wgTmpDirectory = false; ///< defaults to "{$wgUploadDirectory}/tmp" |
| 218 | + |
| 219 | +/** |
| 220 | + * The URL path of the icon for iPhone and iPod Touch web app bookmarks. |
| 221 | + * Defaults to no icon. |
| 222 | + */ |
| 223 | +$wgAppleTouchIcon = false; |
| 224 | + |
| 225 | +/** |
| 226 | + * The URL path of the math directory. Defaults to "{$wgUploadPath}/math". |
| 227 | + * |
| 228 | + * See http://www.mediawiki.org/wiki/Manual:Enable_TeX for details about how to |
| 229 | + * set up mathematical formula display. |
| 230 | + */ |
| 231 | +$wgMathPath = false; |
| 232 | + |
| 233 | +/** |
| 234 | + * The filesystem path of the math directory. |
| 235 | + * Defaults to "{$wgUploadDirectory}/math". |
| 236 | + * |
| 237 | + * See http://www.mediawiki.org/wiki/Manual:Enable_TeX for details about how to |
| 238 | + * set up mathematical formula display. |
| 239 | + */ |
| 240 | +$wgMathDirectory = false; |
| 241 | + |
| 242 | +/** |
| 243 | + * The local filesystem path to a temporary directory. This is not required to |
| 244 | + * be web accessible. |
| 245 | + * |
| 246 | + * Defaults to "{$wgUploadDirectory}/tmp". |
| 247 | + */ |
| 248 | +$wgTmpDirectory = false; |
| 249 | + |
| 250 | +/** |
| 251 | + * If set, this URL is added to the start of $wgUploadPath to form a complete |
| 252 | + * upload URL. |
| 253 | + */ |
167 | 254 | $wgUploadBaseUrl = ""; |
168 | | -/**@}*/ |
169 | 255 | |
170 | 256 | /** |
171 | | - * Directory for caching data in the local filesystem. Should not be accessible |
172 | | - * from the web. Set this to false to not use any local caches. |
| 257 | + * To set 'pretty' URL paths for actions other than |
| 258 | + * plain page views, add to this array. For instance: |
| 259 | + * 'edit' => "$wgScriptPath/edit/$1" |
173 | 260 | * |
174 | | - * Note: if multiple wikis share the same localisation cache directory, they |
175 | | - * must all have the same set of extensions. You can set a directory just for |
176 | | - * the localisation cache using $wgLocalisationCacheConf['storeDirectory']. |
| 261 | + * There must be an appropriate script or rewrite rule |
| 262 | + * in place to handle these URLs. |
177 | 263 | */ |
178 | | -$wgCacheDirectory = false; |
| 264 | +$wgActionPaths = array(); |
179 | 265 | |
| 266 | +/**@}*/ |
| 267 | + |
| 268 | +/************************************************************************//** |
| 269 | + * @name Files and file uploads |
| 270 | + * @{ |
| 271 | + */ |
| 272 | + |
| 273 | +/** Uploads have to be specially set up to be secure */ |
| 274 | +$wgEnableUploads = false; |
| 275 | + |
| 276 | +/** Allows to move images and other media files */ |
| 277 | +$wgAllowImageMoving = true; |
| 278 | + |
180 | 279 | /** |
181 | | - * Default value for chmoding of new directories. |
| 280 | + * These are additional characters that should be replaced with '-' in file names |
182 | 281 | */ |
183 | | -$wgDirectoryMode = 0777; |
| 282 | +$wgIllegalFileChars = ":"; |
184 | 283 | |
185 | 284 | /** |
186 | 285 | * New file storage paths; currently used only for deleted files. |
187 | 286 | * Set it like this: |
188 | 287 | * |
189 | 288 | * $wgFileStore['deleted']['directory'] = '/var/wiki/private/deleted'; |
190 | | - * |
191 | 289 | */ |
192 | 290 | $wgFileStore = array(); |
193 | | -$wgFileStore['deleted']['directory'] = false;///< Defaults to $wgUploadDirectory/deleted |
194 | | -$wgFileStore['deleted']['url'] = null; ///< Private |
195 | | -$wgFileStore['deleted']['hash'] = 3; ///< 3-level subdirectory split |
| 291 | +/** @cond file_level_code */ |
| 292 | +$wgFileStore['deleted']['directory'] = false; // Defaults to $wgUploadDirectory/deleted |
| 293 | +$wgFileStore['deleted']['url'] = null; // Private |
| 294 | +$wgFileStore['deleted']['hash'] = 3; // 3-level subdirectory split |
| 295 | +/** @endcond */ |
196 | 296 | |
197 | | -$wgImgAuthDetails = false; ///< defaults to false - only set to true if you use img_auth and want the user to see details on why access failed |
198 | | -$wgImgAuthPublicTest = true; ///< defaults to true - if public read is turned on, no need for img_auth, config error unless other access is used |
| 297 | +/** |
| 298 | + * Set this to true if you use img_auth and want the user to see details on why access failed. |
| 299 | + */ |
| 300 | +$wgImgAuthDetails = false; |
199 | 301 | |
200 | | -/**@{ |
| 302 | +/** |
| 303 | + * If this is enabled, img_auth.php will not allow image access unless the wiki |
| 304 | + * is private. This improves security when image uploads are hosted on a |
| 305 | + * separate domain. |
| 306 | + */ |
| 307 | +$wgImgAuthPublicTest = true; |
| 308 | + |
| 309 | +/** |
201 | 310 | * File repository structures |
202 | 311 | * |
203 | 312 | * $wgLocalFileRepo is a single repository structure, and $wgForeignFileRepos is |
— | — | @@ -204,59 +313,60 @@ |
205 | 314 | * array of properties configuring the repository. |
206 | 315 | * |
207 | 316 | * Properties required for all repos: |
208 | | - * class The class name for the repository. May come from the core or an extension. |
| 317 | + * - class The class name for the repository. May come from the core or an extension. |
209 | 318 | * The core repository classes are LocalRepo, ForeignDBRepo, FSRepo. |
210 | 319 | * |
211 | | - * name A unique name for the repository. |
| 320 | + * - name A unique name for the repository. |
212 | 321 | * |
213 | 322 | * For most core repos: |
214 | | - * url Base public URL |
215 | | - * hashLevels The number of directory levels for hash-based division of files |
216 | | - * thumbScriptUrl The URL for thumb.php (optional, not recommended) |
217 | | - * transformVia404 Whether to skip media file transformation on parse and rely on a 404 |
| 323 | + * - url Base public URL |
| 324 | + * - hashLevels The number of directory levels for hash-based division of files |
| 325 | + * - thumbScriptUrl The URL for thumb.php (optional, not recommended) |
| 326 | + * - transformVia404 Whether to skip media file transformation on parse and rely on a 404 |
218 | 327 | * handler instead. |
219 | | - * initialCapital Equivalent to $wgCapitalLinks (or $wgCapitalLinkOverrides[NS_FILE], |
| 328 | + * - initialCapital Equivalent to $wgCapitalLinks (or $wgCapitalLinkOverrides[NS_FILE], |
220 | 329 | * determines whether filenames implicitly start with a capital letter. |
221 | 330 | * The current implementation may give incorrect description page links |
222 | 331 | * when the local $wgCapitalLinks and initialCapital are mismatched. |
223 | | - * pathDisclosureProtection |
| 332 | + * - pathDisclosureProtection |
224 | 333 | * May be 'paranoid' to remove all parameters from error messages, 'none' to |
225 | 334 | * leave the paths in unchanged, or 'simple' to replace paths with |
226 | 335 | * placeholders. Default for LocalRepo is 'simple'. |
227 | | - * fileMode This allows wikis to set the file mode when uploading/moving files. Default |
| 336 | + * - fileMode This allows wikis to set the file mode when uploading/moving files. Default |
228 | 337 | * is 0644. |
229 | | - * directory The local filesystem directory where public files are stored. Not used for |
| 338 | + * - directory The local filesystem directory where public files are stored. Not used for |
230 | 339 | * some remote repos. |
231 | | - * thumbDir The base thumbnail directory. Defaults to <directory>/thumb. |
232 | | - * thumbUrl The base thumbnail URL. Defaults to <url>/thumb. |
| 340 | + * - thumbDir The base thumbnail directory. Defaults to <directory>/thumb. |
| 341 | + * - thumbUrl The base thumbnail URL. Defaults to <url>/thumb. |
233 | 342 | * |
234 | 343 | * |
235 | 344 | * These settings describe a foreign MediaWiki installation. They are optional, and will be ignored |
236 | 345 | * for local repositories: |
237 | | - * descBaseUrl URL of image description pages, e.g. http://en.wikipedia.org/wiki/Image: |
238 | | - * scriptDirUrl URL of the MediaWiki installation, equivalent to $wgScriptPath, e.g. |
| 346 | + * - descBaseUrl URL of image description pages, e.g. http://en.wikipedia.org/wiki/Image: |
| 347 | + * - scriptDirUrl URL of the MediaWiki installation, equivalent to $wgScriptPath, e.g. |
239 | 348 | * http://en.wikipedia.org/w |
240 | 349 | * |
241 | | - * articleUrl Equivalent to $wgArticlePath, e.g. http://en.wikipedia.org/wiki/$1 |
242 | | - * fetchDescription Fetch the text of the remote file description page. Equivalent to |
| 350 | + * - articleUrl Equivalent to $wgArticlePath, e.g. http://en.wikipedia.org/wiki/$1 |
| 351 | + * - fetchDescription Fetch the text of the remote file description page. Equivalent to |
243 | 352 | * $wgFetchCommonsDescriptions. |
244 | 353 | * |
245 | 354 | * ForeignDBRepo: |
246 | | - * dbType, dbServer, dbUser, dbPassword, dbName, dbFlags |
| 355 | + * - dbType, dbServer, dbUser, dbPassword, dbName, dbFlags |
247 | 356 | * equivalent to the corresponding member of $wgDBservers |
248 | | - * tablePrefix Table prefix, the foreign wiki's $wgDBprefix |
249 | | - * hasSharedCache True if the wiki's shared cache is accessible via the local $wgMemc |
| 357 | + * - tablePrefix Table prefix, the foreign wiki's $wgDBprefix |
| 358 | + * - hasSharedCache True if the wiki's shared cache is accessible via the local $wgMemc |
250 | 359 | * |
251 | 360 | * ForeignAPIRepo: |
252 | | - * apibase Use for the foreign API's URL |
253 | | - * apiThumbCacheExpiry How long to locally cache thumbs for |
| 361 | + * - apibase Use for the foreign API's URL |
| 362 | + * - apiThumbCacheExpiry How long to locally cache thumbs for |
254 | 363 | * |
255 | 364 | * The default is to initialise these arrays from the MW<1.11 backwards compatible settings: |
256 | 365 | * $wgUploadPath, $wgThumbnailScriptPath, $wgSharedUploadDirectory, etc. |
257 | 366 | */ |
258 | 367 | $wgLocalFileRepo = false; |
| 368 | + |
| 369 | +/** @see $wgLocalFileRepo */ |
259 | 370 | $wgForeignFileRepos = array(); |
260 | | -/**@}*/ |
261 | 371 | |
262 | 372 | /** |
263 | 373 | * Use Commons as a remote file repository. Essentially a wrapper, when this |
— | — | @@ -266,78 +376,373 @@ |
267 | 377 | $wgUseInstantCommons = false; |
268 | 378 | |
269 | 379 | /** |
270 | | - * Allowed title characters -- regex character class |
271 | | - * Don't change this unless you know what you're doing |
| 380 | + * Show EXIF data, on by default if available. |
| 381 | + * Requires PHP's EXIF extension: http://www.php.net/manual/en/ref.exif.php |
272 | 382 | * |
273 | | - * Problematic punctuation: |
274 | | - * []{}|# Are needed for link syntax, never enable these |
275 | | - * <> Causes problems with HTML escaping, don't use |
276 | | - * % Enabled by default, minor problems with path to query rewrite rules, see below |
277 | | - * + Enabled by default, but doesn't work with path to query rewrite rules, corrupted by apache |
278 | | - * ? Enabled by default, but doesn't work with path to PATH_INFO rewrites |
| 383 | + * NOTE FOR WINDOWS USERS: |
| 384 | + * To enable EXIF functions, add the folloing lines to the |
| 385 | + * "Windows extensions" section of php.ini: |
279 | 386 | * |
280 | | - * All three of these punctuation problems can be avoided by using an alias, instead of a |
281 | | - * rewrite rule of either variety. |
| 387 | + * extension=extensions/php_mbstring.dll |
| 388 | + * extension=extensions/php_exif.dll |
| 389 | + */ |
| 390 | +$wgShowEXIF = function_exists( 'exif_read_data' ); |
| 391 | + |
| 392 | +/** |
| 393 | + * Set to true to enable the upload _link_ while local uploads are disabled. |
| 394 | + * Assumes that the special page link will be bounced to another server where |
| 395 | + * uploads do work. |
| 396 | + */ |
| 397 | +$wgRemoteUploads = false; |
| 398 | + |
| 399 | +/** |
| 400 | + * If you operate multiple wikis, you can define a shared upload path here. |
| 401 | + * Uploads to this wiki will NOT be put there - they will be put into |
| 402 | + * $wgUploadDirectory. |
| 403 | + * If $wgUseSharedUploads is set, the wiki will look in the shared repository if |
| 404 | + * no file of the given name is found in the local repository (for [[Image:..]], |
| 405 | + * [[Media:..]] links). Thumbnails will also be looked for and generated in this |
| 406 | + * directory. |
282 | 407 | * |
283 | | - * The problem with % is that when using a path to query rewrite rule, URLs are |
284 | | - * double-unescaped: once by Apache's path conversion code, and again by PHP. So |
285 | | - * %253F, for example, becomes "?". Our code does not double-escape to compensate |
286 | | - * for this, indeed double escaping would break if the double-escaped title was |
287 | | - * passed in the query string rather than the path. This is a minor security issue |
288 | | - * because articles can be created such that they are hard to view or edit. |
| 408 | + * Note that these configuration settings can now be defined on a per- |
| 409 | + * repository basis for an arbitrary number of file repositories, using the |
| 410 | + * $wgForeignFileRepos variable. |
| 411 | + */ |
| 412 | +$wgUseSharedUploads = false; |
| 413 | +/** Full path on the web server where shared uploads can be found */ |
| 414 | +$wgSharedUploadPath = "http://commons.wikimedia.org/shared/images"; |
| 415 | +/** Fetch commons image description pages and display them on the local wiki? */ |
| 416 | +$wgFetchCommonsDescriptions = false; |
| 417 | +/** Path on the file system where shared uploads can be found. */ |
| 418 | +$wgSharedUploadDirectory = "/var/www/wiki3/images"; |
| 419 | +/** DB name with metadata about shared directory. Set this to false if the uploads do not come from a wiki. */ |
| 420 | +$wgSharedUploadDBname = false; |
| 421 | +/** Optional table prefix used in database. */ |
| 422 | +$wgSharedUploadDBprefix = ''; |
| 423 | +/** Cache shared metadata in memcached. Don't do this if the commons wiki is in a different memcached domain */ |
| 424 | +$wgCacheSharedUploads = true; |
| 425 | +/** |
| 426 | +* Allow for upload to be copied from an URL. Requires Special:Upload?source=web |
| 427 | +* The timeout for copy uploads is set by $wgHTTPTimeout. |
| 428 | +*/ |
| 429 | +$wgAllowCopyUploads = false; |
| 430 | + |
| 431 | +/** |
| 432 | + * Max size for uploads, in bytes. Applies to all uploads. |
| 433 | + */ |
| 434 | +$wgMaxUploadSize = 1024*1024*100; # 100MB |
| 435 | + |
| 436 | +/** |
| 437 | + * Point the upload navigation link to an external URL |
| 438 | + * Useful if you want to use a shared repository by default |
| 439 | + * without disabling local uploads (use $wgEnableUploads = false for that) |
| 440 | + * e.g. $wgUploadNavigationUrl = 'http://commons.wikimedia.org/wiki/Special:Upload'; |
289 | 441 | * |
290 | | - * In some rare cases you may wish to remove + for compatibility with old links. |
| 442 | + * This also affects images inline images that do not exist. In that case the URL will get |
| 443 | + * (?|&)wpDestFile=<filename> appended to it as appropriate. |
| 444 | + */ |
| 445 | +$wgUploadNavigationUrl = false; |
| 446 | + |
| 447 | +/** |
| 448 | + * Give a path here to use thumb.php for thumbnail generation on client request, instead of |
| 449 | + * generating them on render and outputting a static URL. This is necessary if some of your |
| 450 | + * apache servers don't have read/write access to the thumbnail path. |
291 | 451 | * |
292 | | - * Theoretically 0x80-0x9F of ISO 8859-1 should be disallowed, but |
293 | | - * this breaks interlanguage links |
| 452 | + * Example: |
| 453 | + * $wgThumbnailScriptPath = "{$wgScriptPath}/thumb{$wgScriptExtension}"; |
294 | 454 | */ |
295 | | -$wgLegalTitleChars = " %!\"$&'()*,\\-.\\/0-9:;=?@A-Z\\\\^_`a-z~\\x80-\\xFF+"; |
296 | | -$wgIllegalFileChars = ":"; // These are additional characters that should be replaced with '-' in file names |
| 455 | +$wgThumbnailScriptPath = false; |
| 456 | +$wgSharedThumbnailScriptPath = false; |
297 | 457 | |
| 458 | +/** |
| 459 | + * Set this to false if you do not want MediaWiki to divide your images |
| 460 | + * directory into many subdirectories, for improved performance. |
| 461 | + * |
| 462 | + * It's almost always good to leave this enabled. In previous versions of |
| 463 | + * MediaWiki, some users set this to false to allow images to be added to the |
| 464 | + * wiki by simply copying them into $wgUploadDirectory and then running |
| 465 | + * maintenance/rebuildImages.php to register them in the database. This is no |
| 466 | + * longer recommended, use maintenance/importImages.php instead. |
| 467 | + * |
| 468 | + * Note that this variable may be ignored if $wgLocalFileRepo is set. |
| 469 | + */ |
| 470 | +$wgHashedUploadDirectory = true; |
298 | 471 | |
299 | 472 | /** |
300 | | - * The external URL protocols |
| 473 | + * Set the following to false especially if you have a set of files that need to |
| 474 | + * be accessible by all wikis, and you do not want to use the hash (path/a/aa/) |
| 475 | + * directory layout. |
301 | 476 | */ |
302 | | -$wgUrlProtocols = array( |
303 | | - 'http://', |
304 | | - 'https://', |
305 | | - 'ftp://', |
306 | | - 'irc://', |
307 | | - 'gopher://', |
308 | | - 'telnet://', // Well if we're going to support the above.. -ævar |
309 | | - 'nntp://', // @bug 3808 RFC 1738 |
310 | | - 'worldwind://', |
311 | | - 'mailto:', |
312 | | - 'news:', |
313 | | - 'svn://', |
314 | | - 'git://', |
315 | | - 'mms://', |
| 477 | +$wgHashedSharedUploadDirectory = true; |
| 478 | + |
| 479 | +/** |
| 480 | + * Base URL for a repository wiki. Leave this blank if uploads are just stored |
| 481 | + * in a shared directory and not meant to be accessible through a separate wiki. |
| 482 | + * Otherwise the image description pages on the local wiki will link to the |
| 483 | + * image description page on this wiki. |
| 484 | + * |
| 485 | + * Please specify the namespace, as in the example below. |
| 486 | + */ |
| 487 | +$wgRepositoryBaseUrl = "http://commons.wikimedia.org/wiki/Image:"; |
| 488 | + |
| 489 | +/** |
| 490 | + * This is the list of preferred extensions for uploading files. Uploading files |
| 491 | + * with extensions not in this list will trigger a warning. |
| 492 | + */ |
| 493 | +$wgFileExtensions = array( 'png', 'gif', 'jpg', 'jpeg' ); |
| 494 | + |
| 495 | +/** Files with these extensions will never be allowed as uploads. */ |
| 496 | +$wgFileBlacklist = array( |
| 497 | + # HTML may contain cookie-stealing JavaScript and web bugs |
| 498 | + 'html', 'htm', 'js', 'jsb', 'mhtml', 'mht', 'xhtml', 'xht', |
| 499 | + # PHP scripts may execute arbitrary code on the server |
| 500 | + 'php', 'phtml', 'php3', 'php4', 'php5', 'phps', |
| 501 | + # Other types that may be interpreted by some servers |
| 502 | + 'shtml', 'jhtml', 'pl', 'py', 'cgi', |
| 503 | + # May contain harmful executables for Windows victims |
| 504 | + 'exe', 'scr', 'dll', 'msi', 'vbs', 'bat', 'com', 'pif', 'cmd', 'vxd', 'cpl' ); |
| 505 | + |
| 506 | +/** |
| 507 | + * Files with these mime types will never be allowed as uploads |
| 508 | + * if $wgVerifyMimeType is enabled. |
| 509 | + */ |
| 510 | +$wgMimeTypeBlacklist = array( |
| 511 | + # HTML may contain cookie-stealing JavaScript and web bugs |
| 512 | + 'text/html', 'text/javascript', 'text/x-javascript', 'application/x-shellscript', |
| 513 | + # PHP scripts may execute arbitrary code on the server |
| 514 | + 'application/x-php', 'text/x-php', |
| 515 | + # Other types that may be interpreted by some servers |
| 516 | + 'text/x-python', 'text/x-perl', 'text/x-bash', 'text/x-sh', 'text/x-csh', |
| 517 | + # Client-side hazards on Internet Explorer |
| 518 | + 'text/scriptlet', 'application/x-msdownload', |
| 519 | + # Windows metafile, client-side vulnerability on some systems |
| 520 | + 'application/x-msmetafile', |
| 521 | + # A ZIP file may be a valid Java archive containing an applet which exploits the |
| 522 | + # same-origin policy to steal cookies |
| 523 | + 'application/zip', |
316 | 524 | ); |
317 | 525 | |
318 | | -/** internal name of virus scanner. This servers as a key to the $wgAntivirusSetup array. |
319 | | - * Set this to NULL to disable virus scanning. If not null, every file uploaded will be scanned for viruses. |
| 526 | +/** This is a flag to determine whether or not to check file extensions on upload. */ |
| 527 | +$wgCheckFileExtensions = true; |
| 528 | + |
| 529 | +/** |
| 530 | + * If this is turned off, users may override the warning for files not covered |
| 531 | + * by $wgFileExtensions. |
320 | 532 | */ |
| 533 | +$wgStrictFileExtensions = true; |
| 534 | + |
| 535 | +/** Warn if uploaded files are larger than this (in bytes), or false to disable*/ |
| 536 | +$wgUploadSizeWarning = false; |
| 537 | + |
| 538 | +/** |
| 539 | + * list of trusted media-types and mime types. |
| 540 | + * Use the MEDIATYPE_xxx constants to represent media types. |
| 541 | + * This list is used by Image::isSafeFile |
| 542 | + * |
| 543 | + * Types not listed here will have a warning about unsafe content |
| 544 | + * displayed on the images description page. It would also be possible |
| 545 | + * to use this for further restrictions, like disabling direct |
| 546 | + * [[media:...]] links for non-trusted formats. |
| 547 | + */ |
| 548 | +$wgTrustedMediaFormats = array( |
| 549 | + MEDIATYPE_BITMAP, //all bitmap formats |
| 550 | + MEDIATYPE_AUDIO, //all audio formats |
| 551 | + MEDIATYPE_VIDEO, //all plain video formats |
| 552 | + "image/svg+xml", //svg (only needed if inline rendering of svg is not supported) |
| 553 | + "application/pdf", //PDF files |
| 554 | + #"application/x-shockwave-flash", //flash/shockwave movie |
| 555 | +); |
| 556 | + |
| 557 | +/** |
| 558 | + * Plugins for media file type handling. |
| 559 | + * Each entry in the array maps a MIME type to a class name |
| 560 | + */ |
| 561 | +$wgMediaHandlers = array( |
| 562 | + 'image/jpeg' => 'BitmapHandler', |
| 563 | + 'image/png' => 'BitmapHandler', |
| 564 | + 'image/gif' => 'GIFHandler', |
| 565 | + 'image/tiff' => 'TiffHandler', |
| 566 | + 'image/x-ms-bmp' => 'BmpHandler', |
| 567 | + 'image/x-bmp' => 'BmpHandler', |
| 568 | + 'image/svg+xml' => 'SvgHandler', // official |
| 569 | + 'image/svg' => 'SvgHandler', // compat |
| 570 | + 'image/vnd.djvu' => 'DjVuHandler', // official |
| 571 | + 'image/x.djvu' => 'DjVuHandler', // compat |
| 572 | + 'image/x-djvu' => 'DjVuHandler', // compat |
| 573 | +); |
| 574 | + |
| 575 | +/** |
| 576 | + * Resizing can be done using PHP's internal image libraries or using |
| 577 | + * ImageMagick or another third-party converter, e.g. GraphicMagick. |
| 578 | + * These support more file formats than PHP, which only supports PNG, |
| 579 | + * GIF, JPG, XBM and WBMP. |
| 580 | + * |
| 581 | + * Use Image Magick instead of PHP builtin functions. |
| 582 | + */ |
| 583 | +$wgUseImageMagick = false; |
| 584 | +/** The convert command shipped with ImageMagick */ |
| 585 | +$wgImageMagickConvertCommand = '/usr/bin/convert'; |
| 586 | + |
| 587 | +/** Sharpening parameter to ImageMagick */ |
| 588 | +$wgSharpenParameter = '0x0.4'; |
| 589 | + |
| 590 | +/** Reduction in linear dimensions below which sharpening will be enabled */ |
| 591 | +$wgSharpenReductionThreshold = 0.85; |
| 592 | + |
| 593 | +/** |
| 594 | + * Temporary directory used for ImageMagick. The directory must exist. Leave |
| 595 | + * this set to false to let ImageMagick decide for itself. |
| 596 | + */ |
| 597 | +$wgImageMagickTempDir = false; |
| 598 | + |
| 599 | +/** |
| 600 | + * Use another resizing converter, e.g. GraphicMagick |
| 601 | + * %s will be replaced with the source path, %d with the destination |
| 602 | + * %w and %h will be replaced with the width and height. |
| 603 | + * |
| 604 | + * Example for GraphicMagick: |
| 605 | + * <code> |
| 606 | + * $wgCustomConvertCommand = "gm convert %s -resize %wx%h %d" |
| 607 | + * </code> |
| 608 | + * |
| 609 | + * Leave as false to skip this. |
| 610 | + */ |
| 611 | +$wgCustomConvertCommand = false; |
| 612 | + |
| 613 | +/** |
| 614 | + * Scalable Vector Graphics (SVG) may be uploaded as images. |
| 615 | + * Since SVG support is not yet standard in browsers, it is |
| 616 | + * necessary to rasterize SVGs to PNG as a fallback format. |
| 617 | + * |
| 618 | + * An external program is required to perform this conversion. |
| 619 | + */ |
| 620 | +$wgSVGConverters = array( |
| 621 | + 'ImageMagick' => '$path/convert -background white -thumbnail $widthx$height\! $input PNG:$output', |
| 622 | + 'sodipodi' => '$path/sodipodi -z -w $width -f $input -e $output', |
| 623 | + 'inkscape' => '$path/inkscape -z -w $width -f $input -e $output', |
| 624 | + 'batik' => 'java -Djava.awt.headless=true -jar $path/batik-rasterizer.jar -w $width -d $output $input', |
| 625 | + 'rsvg' => '$path/rsvg -w$width -h$height $input $output', |
| 626 | + 'imgserv' => '$path/imgserv-wrapper -i svg -o png -w$width $input $output', |
| 627 | + ); |
| 628 | +/** Pick a converter defined in $wgSVGConverters */ |
| 629 | +$wgSVGConverter = 'ImageMagick'; |
| 630 | +/** If not in the executable PATH, specify the SVG converter path. */ |
| 631 | +$wgSVGConverterPath = ''; |
| 632 | +/** Don't scale a SVG larger than this */ |
| 633 | +$wgSVGMaxSize = 2048; |
| 634 | + |
| 635 | +/** |
| 636 | + * MediaWiki will reject HTMLesque tags in uploaded files due to idiotic browsers which can't |
| 637 | + * perform basic stuff like MIME detection and which are vulnerable to further idiots uploading |
| 638 | + * crap files as images. When this directive is on, <title> will be allowed in files with |
| 639 | + * an "image/svg+xml" MIME type. You should leave this disabled if your web server is misconfigured |
| 640 | + * and doesn't send appropriate MIME types for SVG images. |
| 641 | + */ |
| 642 | +$wgAllowTitlesInSVG = false; |
| 643 | + |
| 644 | +/** |
| 645 | + * Don't thumbnail an image if it will use too much working memory. |
| 646 | + * Default is 50 MB if decompressed to RGBA form, which corresponds to |
| 647 | + * 12.5 million pixels or 3500x3500 |
| 648 | + */ |
| 649 | +$wgMaxImageArea = 1.25e7; |
| 650 | +/** |
| 651 | + * Force thumbnailing of animated GIFs above this size to a single |
| 652 | + * frame instead of an animated thumbnail. As of MW 1.17 this limit |
| 653 | + * is checked against the total size of all frames in the animation. |
| 654 | + * It probably makes sense to keep this equal to $wgMaxImageArea. |
| 655 | + */ |
| 656 | +$wgMaxAnimatedGifArea = 1.25e7; |
| 657 | +/** |
| 658 | + * Browsers don't support TIFF inline generally... |
| 659 | + * For inline display, we need to convert to PNG or JPEG. |
| 660 | + * Note scaling should work with ImageMagick, but may not with GD scaling. |
| 661 | + * |
| 662 | + * Example: |
| 663 | + * <code> |
| 664 | + * // PNG is lossless, but inefficient for photos |
| 665 | + * $wgTiffThumbnailType = array( 'png', 'image/png' ); |
| 666 | + * // JPEG is good for photos, but has no transparency support. Bad for diagrams. |
| 667 | + * $wgTiffThumbnailType = array( 'jpg', 'image/jpeg' ); |
| 668 | + * </code> |
| 669 | + */ |
| 670 | + $wgTiffThumbnailType = false; |
| 671 | + |
| 672 | +/** |
| 673 | + * If rendered thumbnail files are older than this timestamp, they |
| 674 | + * will be rerendered on demand as if the file didn't already exist. |
| 675 | + * Update if there is some need to force thumbs and SVG rasterizations |
| 676 | + * to rerender, such as fixes to rendering bugs. |
| 677 | + */ |
| 678 | +$wgThumbnailEpoch = '20030516000000'; |
| 679 | + |
| 680 | +/** |
| 681 | + * If set, inline scaled images will still produce <img> tags ready for |
| 682 | + * output instead of showing an error message. |
| 683 | + * |
| 684 | + * This may be useful if errors are transitory, especially if the site |
| 685 | + * is configured to automatically render thumbnails on request. |
| 686 | + * |
| 687 | + * On the other hand, it may obscure error conditions from debugging. |
| 688 | + * Enable the debug log or the 'thumbnail' log group to make sure errors |
| 689 | + * are logged to a file for review. |
| 690 | + */ |
| 691 | +$wgIgnoreImageErrors = false; |
| 692 | + |
| 693 | +/** |
| 694 | + * Allow thumbnail rendering on page view. If this is false, a valid |
| 695 | + * thumbnail URL is still output, but no file will be created at |
| 696 | + * the target location. This may save some time if you have a |
| 697 | + * thumb.php or 404 handler set up which is faster than the regular |
| 698 | + * webserver(s). |
| 699 | + */ |
| 700 | +$wgGenerateThumbnailOnParse = true; |
| 701 | + |
| 702 | +/** |
| 703 | +* Show thumbnails for old images on the image description page |
| 704 | +*/ |
| 705 | +$wgShowArchiveThumbnails = true; |
| 706 | + |
| 707 | +/** Obsolete, always true, kept for compatibility with extensions */ |
| 708 | +$wgUseImageResize = true; |
| 709 | + |
| 710 | + |
| 711 | +/** |
| 712 | + * Internal name of virus scanner. This servers as a key to the |
| 713 | + * $wgAntivirusSetup array. Set this to NULL to disable virus scanning. If not |
| 714 | + * null, every file uploaded will be scanned for viruses. |
| 715 | + */ |
321 | 716 | $wgAntivirus= null; |
322 | 717 | |
323 | | -/** Configuration for different virus scanners. This an associative array of associative arrays: |
324 | | - * it contains on setup array per known scanner type. The entry is selected by $wgAntivirus, i.e. |
| 718 | +/** |
| 719 | + * Configuration for different virus scanners. This an associative array of |
| 720 | + * associative arrays. It contains one setup array per known scanner type. |
| 721 | + * The entry is selected by $wgAntivirus, i.e. |
325 | 722 | * valid values for $wgAntivirus are the keys defined in this array. |
326 | 723 | * |
327 | | - * The configuration array for each scanner contains the following keys: "command", "codemap", "messagepattern"; |
| 724 | + * The configuration array for each scanner contains the following keys: |
| 725 | + * "command", "codemap", "messagepattern": |
328 | 726 | * |
329 | | - * "command" is the full command to call the virus scanner - %f will be replaced with the name of the |
330 | | - * file to scan. If not present, the filename will be appended to the command. Note that this must be |
331 | | - * overwritten if the scanner is not in the system path; in that case, plase set |
332 | | - * $wgAntivirusSetup[$wgAntivirus]['command'] to the desired command with full path. |
| 727 | + * "command" is the full command to call the virus scanner - %f will be |
| 728 | + * replaced with the name of the file to scan. If not present, the filename |
| 729 | + * will be appended to the command. Note that this must be overwritten if the |
| 730 | + * scanner is not in the system path; in that case, plase set |
| 731 | + * $wgAntivirusSetup[$wgAntivirus]['command'] to the desired command with full |
| 732 | + * path. |
333 | 733 | * |
334 | | - * "codemap" is a mapping of exit code to return codes of the detectVirus function in SpecialUpload. |
335 | | - * An exit code mapped to AV_SCAN_FAILED causes the function to consider the scan to be failed. This will pass |
336 | | - * the file if $wgAntivirusRequired is not set. |
337 | | - * An exit code mapped to AV_SCAN_ABORTED causes the function to consider the file to have an usupported format, |
338 | | - * which is probably imune to virusses. This causes the file to pass. |
339 | | - * An exit code mapped to AV_NO_VIRUS will cause the file to pass, meaning no virus was found. |
340 | | - * All other codes (like AV_VIRUS_FOUND) will cause the function to report a virus. |
341 | | - * You may use "*" as a key in the array to catch all exit codes not mapped otherwise. |
| 734 | + * "codemap" is a mapping of exit code to return codes of the detectVirus |
| 735 | + * function in SpecialUpload. |
| 736 | + * - An exit code mapped to AV_SCAN_FAILED causes the function to consider |
| 737 | + * the scan to be failed. This will pass the file if $wgAntivirusRequired |
| 738 | + * is not set. |
| 739 | + * - An exit code mapped to AV_SCAN_ABORTED causes the function to consider |
| 740 | + * the file to have an usupported format, which is probably imune to |
| 741 | + * virusses. This causes the file to pass. |
| 742 | + * - An exit code mapped to AV_NO_VIRUS will cause the file to pass, meaning |
| 743 | + * no virus was found. |
| 744 | + * - All other codes (like AV_VIRUS_FOUND) will cause the function to report |
| 745 | + * a virus. |
| 746 | + * - You may use "*" as a key in the array to catch all exit codes not mapped otherwise. |
342 | 747 | * |
343 | 748 | * "messagepattern" is a perl regular expression to extract the meaningful part of the scanners |
344 | 749 | * output. The relevant part should be matched as group one (\1). |
— | — | @@ -376,13 +781,13 @@ |
377 | 782 | |
378 | 783 | |
379 | 784 | /** Determines if a failed virus scan (AV_SCAN_FAILED) will cause the file to be rejected. */ |
380 | | -$wgAntivirusRequired= true; |
| 785 | +$wgAntivirusRequired = true; |
381 | 786 | |
382 | 787 | /** Determines if the mime type of uploaded files should be checked */ |
383 | | -$wgVerifyMimeType= true; |
| 788 | +$wgVerifyMimeType = true; |
384 | 789 | |
385 | 790 | /** Sets the mime type definition file to use by MimeMagic.php. */ |
386 | | -$wgMimeTypeFile= "includes/mime.types"; |
| 791 | +$wgMimeTypeFile = "includes/mime.types"; |
387 | 792 | #$wgMimeTypeFile= "/etc/mime.types"; |
388 | 793 | #$wgMimeTypeFile= null; #use built-in defaults only. |
389 | 794 | |
— | — | @@ -390,25 +795,30 @@ |
391 | 796 | $wgMimeInfoFile= "includes/mime.info"; |
392 | 797 | #$wgMimeInfoFile= null; #use built-in defaults only. |
393 | 798 | |
394 | | -/** Switch for loading the FileInfo extension by PECL at runtime. |
| 799 | +/** |
| 800 | + * Switch for loading the FileInfo extension by PECL at runtime. |
395 | 801 | * This should be used only if fileinfo is installed as a shared object |
396 | | - * or a dynamic libary |
| 802 | + * or a dynamic library. |
397 | 803 | */ |
398 | | -$wgLoadFileinfoExtension= false; |
| 804 | +$wgLoadFileinfoExtension = false; |
399 | 805 | |
400 | 806 | /** Sets an external mime detector program. The command must print only |
401 | 807 | * the mime type to standard output. |
402 | 808 | * The name of the file to process will be appended to the command given here. |
403 | 809 | * If not set or NULL, mime_content_type will be used if available. |
| 810 | + * Example: |
| 811 | + * <code> |
| 812 | + * #$wgMimeDetectorCommand = "file -bi"; # use external mime detector (Linux) |
| 813 | + * </code> |
404 | 814 | */ |
405 | | -$wgMimeDetectorCommand= null; # use internal mime_content_type function, available since php 4.3.0 |
406 | | -#$wgMimeDetectorCommand= "file -bi"; #use external mime detector (Linux) |
| 815 | +$wgMimeDetectorCommand = null; |
407 | 816 | |
408 | | -/** Switch for trivial mime detection. Used by thumb.php to disable all fance |
| 817 | +/** |
| 818 | + * Switch for trivial mime detection. Used by thumb.php to disable all fancy |
409 | 819 | * things, because only a few types of images are needed and file extensions |
410 | 820 | * can be trusted. |
411 | 821 | */ |
412 | | -$wgTrivialMimeDetection= false; |
| 822 | +$wgTrivialMimeDetection = false; |
413 | 823 | |
414 | 824 | /** |
415 | 825 | * Additional XML types we can allow via mime-detection. |
— | — | @@ -423,114 +833,128 @@ |
424 | 834 | ); |
425 | 835 | |
426 | 836 | /** |
427 | | - * To set 'pretty' URL paths for actions other than |
428 | | - * plain page views, add to this array. For instance: |
429 | | - * 'edit' => "$wgScriptPath/edit/$1" |
430 | | - * |
431 | | - * There must be an appropriate script or rewrite rule |
432 | | - * in place to handle these URLs. |
| 837 | + * Limit images on image description pages to a user-selectable limit. In order |
| 838 | + * to reduce disk usage, limits can only be selected from a list. |
| 839 | + * The user preference is saved as an array offset in the database, by default |
| 840 | + * the offset is set with $wgDefaultUserOptions['imagesize']. Make sure you |
| 841 | + * change it if you alter the array (see bug 8858). |
| 842 | + * This is the list of settings the user can choose from: |
433 | 843 | */ |
434 | | -$wgActionPaths = array(); |
| 844 | +$wgImageLimits = array ( |
| 845 | + array(320,240), |
| 846 | + array(640,480), |
| 847 | + array(800,600), |
| 848 | + array(1024,768), |
| 849 | + array(1280,1024), |
| 850 | + array(10000,10000) ); |
435 | 851 | |
436 | 852 | /** |
437 | | - * If you operate multiple wikis, you can define a shared upload path here. |
438 | | - * Uploads to this wiki will NOT be put there - they will be put into |
439 | | - * $wgUploadDirectory. |
440 | | - * If $wgUseSharedUploads is set, the wiki will look in the shared repository if |
441 | | - * no file of the given name is found in the local repository (for [[Image:..]], |
442 | | - * [[Media:..]] links). Thumbnails will also be looked for and generated in this |
443 | | - * directory. |
444 | | - * |
445 | | - * Note that these configuration settings can now be defined on a per- |
446 | | - * repository basis for an arbitrary number of file repositories, using the |
447 | | - * $wgForeignFileRepos variable. |
| 853 | + * Adjust thumbnails on image pages according to a user setting. In order to |
| 854 | + * reduce disk usage, the values can only be selected from a list. This is the |
| 855 | + * list of settings the user can choose from: |
448 | 856 | */ |
449 | | -$wgUseSharedUploads = false; |
450 | | -/** Full path on the web server where shared uploads can be found */ |
451 | | -$wgSharedUploadPath = "http://commons.wikimedia.org/shared/images"; |
452 | | -/** Fetch commons image description pages and display them on the local wiki? */ |
453 | | -$wgFetchCommonsDescriptions = false; |
454 | | -/** Path on the file system where shared uploads can be found. */ |
455 | | -$wgSharedUploadDirectory = "/var/www/wiki3/images"; |
456 | | -/** DB name with metadata about shared directory. Set this to false if the uploads do not come from a wiki. */ |
457 | | -$wgSharedUploadDBname = false; |
458 | | -/** Optional table prefix used in database. */ |
459 | | -$wgSharedUploadDBprefix = ''; |
460 | | -/** Cache shared metadata in memcached. Don't do this if the commons wiki is in a different memcached domain */ |
461 | | -$wgCacheSharedUploads = true; |
| 857 | +$wgThumbLimits = array( |
| 858 | + 120, |
| 859 | + 150, |
| 860 | + 180, |
| 861 | + 200, |
| 862 | + 250, |
| 863 | + 300 |
| 864 | +); |
| 865 | + |
462 | 866 | /** |
463 | | -* Allow for upload to be copied from an URL. Requires Special:Upload?source=web |
464 | | -* The timeout for copy uploads is set by $wgHTTPTimeout. |
465 | | -*/ |
466 | | -$wgAllowCopyUploads = false; |
| 867 | + * Default parameters for the <gallery> tag |
| 868 | + */ |
| 869 | +$wgGalleryOptions = array ( |
| 870 | + 'imagesPerRow' => 4, // Default number of images per-row in the gallery |
| 871 | + 'imageWidth' => 120, // Width of the cells containing images in galleries (in "px") |
| 872 | + 'imageHeight' => 120, // Height of the cells containing images in galleries (in "px") |
| 873 | + 'captionLength' => 20, // Length of caption to truncate (in characters) |
| 874 | + 'showBytes' => true, // Show the filesize in bytes in categories |
| 875 | +); |
467 | 876 | |
468 | 877 | /** |
469 | | - * Max size for uploads, in bytes. Applies to all uploads. |
| 878 | + * Adjust width of upright images when parameter 'upright' is used |
| 879 | + * This allows a nicer look for upright images without the need to fix the width |
| 880 | + * by hardcoded px in wiki sourcecode. |
470 | 881 | */ |
471 | | -$wgMaxUploadSize = 1024*1024*100; # 100MB |
| 882 | +$wgThumbUpright = 0.75; |
472 | 883 | |
473 | 884 | /** |
474 | | - * Point the upload navigation link to an external URL |
475 | | - * Useful if you want to use a shared repository by default |
476 | | - * without disabling local uploads (use $wgEnableUploads = false for that) |
477 | | - * e.g. $wgUploadNavigationUrl = 'http://commons.wikimedia.org/wiki/Special:Upload'; |
478 | | - * |
479 | | - * This also affects images inline images that do not exist. In that case the URL will get |
480 | | - * (?|&)wpDestFile=<filename> appended to it as appropriate. |
| 885 | + * Default value for chmoding of new directories. |
481 | 886 | */ |
482 | | -$wgUploadNavigationUrl = false; |
| 887 | +$wgDirectoryMode = 0777; |
483 | 888 | |
484 | 889 | /** |
485 | | - * Give a path here to use thumb.php for thumbnail generation on client request, instead of |
486 | | - * generating them on render and outputting a static URL. This is necessary if some of your |
487 | | - * apache servers don't have read/write access to the thumbnail path. |
488 | | - * |
489 | | - * Example: |
490 | | - * $wgThumbnailScriptPath = "{$wgScriptPath}/thumb{$wgScriptExtension}"; |
| 890 | + * DJVU settings |
| 891 | + * Path of the djvudump executable |
| 892 | + * Enable this and $wgDjvuRenderer to enable djvu rendering |
491 | 893 | */ |
492 | | -$wgThumbnailScriptPath = false; |
493 | | -$wgSharedThumbnailScriptPath = false; |
| 894 | +# $wgDjvuDump = 'djvudump'; |
| 895 | +$wgDjvuDump = null; |
494 | 896 | |
495 | 897 | /** |
496 | | - * Set the following to false especially if you have a set of files that need to |
497 | | - * be accessible by all wikis, and you do not want to use the hash (path/a/aa/) |
498 | | - * directory layout. |
| 898 | + * Path of the ddjvu DJVU renderer |
| 899 | + * Enable this and $wgDjvuDump to enable djvu rendering |
499 | 900 | */ |
500 | | -$wgHashedSharedUploadDirectory = true; |
| 901 | +# $wgDjvuRenderer = 'ddjvu'; |
| 902 | +$wgDjvuRenderer = null; |
501 | 903 | |
502 | 904 | /** |
503 | | - * Base URL for a repository wiki. Leave this blank if uploads are just stored |
504 | | - * in a shared directory and not meant to be accessible through a separate wiki. |
505 | | - * Otherwise the image description pages on the local wiki will link to the |
506 | | - * image description page on this wiki. |
| 905 | + * Path of the djvutxt DJVU text extraction utility |
| 906 | + * Enable this and $wgDjvuDump to enable text layer extraction from djvu files |
| 907 | + */ |
| 908 | +# $wgDjvuTxt = 'djvutxt'; |
| 909 | +$wgDjvuTxt = null; |
| 910 | + |
| 911 | +/** |
| 912 | + * Path of the djvutoxml executable |
| 913 | + * This works like djvudump except much, much slower as of version 3.5. |
507 | 914 | * |
508 | | - * Please specify the namespace, as in the example below. |
| 915 | + * For now I recommend you use djvudump instead. The djvuxml output is |
| 916 | + * probably more stable, so we'll switch back to it as soon as they fix |
| 917 | + * the efficiency problem. |
| 918 | + * http://sourceforge.net/tracker/index.php?func=detail&aid=1704049&group_id=32953&atid=406583 |
509 | 919 | */ |
510 | | -$wgRepositoryBaseUrl = "http://commons.wikimedia.org/wiki/Image:"; |
| 920 | +# $wgDjvuToXML = 'djvutoxml'; |
| 921 | +$wgDjvuToXML = null; |
511 | 922 | |
512 | | -# |
513 | | -# Email settings |
514 | | -# |
515 | 923 | |
516 | 924 | /** |
517 | | - * Site admin email address |
518 | | - * Default to wikiadmin@SERVER_NAME |
| 925 | + * Shell command for the DJVU post processor |
| 926 | + * Default: pnmtopng, since ddjvu generates ppm output |
| 927 | + * Set this to false to output the ppm file directly. |
519 | 928 | */ |
| 929 | +$wgDjvuPostProcessor = 'pnmtojpeg'; |
| 930 | +/** |
| 931 | + * File extension for the DJVU post processor output |
| 932 | + */ |
| 933 | +$wgDjvuOutputExtension = 'jpg'; |
| 934 | + |
| 935 | +/** @} */ # end of file uploads } |
| 936 | + |
| 937 | +/************************************************************************//** |
| 938 | + * @name Email settings |
| 939 | + * @{ |
| 940 | + */ |
| 941 | + |
| 942 | +/** |
| 943 | + * Site admin email address. |
| 944 | + */ |
520 | 945 | $wgEmergencyContact = 'wikiadmin@' . $wgServerName; |
521 | 946 | |
522 | 947 | /** |
523 | | - * Password reminder email address |
524 | | - * The address we should use as sender when a user is requesting his password |
525 | | - * Default to apache@SERVER_NAME |
| 948 | + * Password reminder email address. |
| 949 | + * |
| 950 | + * The address we should use as sender when a user is requesting his password. |
526 | 951 | */ |
527 | 952 | $wgPasswordSender = 'MediaWiki Mail <apache@' . $wgServerName . '>'; |
528 | 953 | |
529 | 954 | /** |
530 | | - * dummy address which should be accepted during mail send action |
531 | | - * It might be necessay to adapt the address or to set it equal |
532 | | - * to the $wgEmergencyContact address |
| 955 | + * Dummy address which should be accepted during mail send action. |
| 956 | + * It might be necessary to adapt the address or to set it equal |
| 957 | + * to the $wgEmergencyContact address. |
533 | 958 | */ |
534 | | -#$wgNoReplyAddress = $wgEmergencyContact; |
535 | 959 | $wgNoReplyAddress = 'reply@not.possible'; |
536 | 960 | |
537 | 961 | /** |
— | — | @@ -582,18 +1006,95 @@ |
583 | 1007 | */ |
584 | 1008 | $wgSMTP = false; |
585 | 1009 | |
| 1010 | +/** For email notification on page changes */ |
| 1011 | +$wgPasswordSender = $wgEmergencyContact; |
586 | 1012 | |
587 | | -/**@{ |
588 | | - * Database settings |
| 1013 | +/** |
| 1014 | + * True: from page editor if s/he opted-in. False: Enotif mails appear to come |
| 1015 | + * from $wgEmergencyContact |
589 | 1016 | */ |
590 | | -/** database host name or ip address */ |
| 1017 | +$wgEnotifFromEditor = false; |
| 1018 | + |
| 1019 | +// TODO move UPO to preferences probably ? |
| 1020 | +# If set to true, users get a corresponding option in their preferences and can choose to enable or disable at their discretion |
| 1021 | +# If set to false, the corresponding input form on the user preference page is suppressed |
| 1022 | +# It call this to be a "user-preferences-option (UPO)" |
| 1023 | + |
| 1024 | +/** |
| 1025 | + * Require email authentication before sending mail to an email addres. This is |
| 1026 | + * highly recommended. It prevents MediaWiki from being used as an open spam |
| 1027 | + * relay. |
| 1028 | + */ |
| 1029 | +$wgEmailAuthentication = true; |
| 1030 | + |
| 1031 | +/** |
| 1032 | + * Allow users to enable email notification ("enotif") on watchlist changes. |
| 1033 | + */ |
| 1034 | +$wgEnotifWatchlist = false; |
| 1035 | + |
| 1036 | +/** |
| 1037 | + * Allow users to enable email notification ("enotif") when someone edits their |
| 1038 | + * user talk page. |
| 1039 | + */ |
| 1040 | +$wgEnotifUserTalk = false; |
| 1041 | + |
| 1042 | +/** |
| 1043 | + * Set the Reply-to address in notifications to the editor's address, if user |
| 1044 | + * allowed this in the preferences. |
| 1045 | + */ |
| 1046 | +$wgEnotifRevealEditorAddress = false; |
| 1047 | + |
| 1048 | +/** |
| 1049 | + * Send notification mails on minor edits to watchlist pages. This is enabled |
| 1050 | + * by default. Does not affect user talk notifications. |
| 1051 | + */ |
| 1052 | +$wgEnotifMinorEdits = true; |
| 1053 | + |
| 1054 | +/** |
| 1055 | + * Send a generic mail instead of a personalised mail for each user. This |
| 1056 | + * always uses UTC as the time zone, and doesn't include the username. |
| 1057 | + * |
| 1058 | + * For pages with many users watching, this can significantly reduce mail load. |
| 1059 | + * Has no effect when using sendmail rather than SMTP. |
| 1060 | + */ |
| 1061 | +$wgEnotifImpersonal = false; |
| 1062 | + |
| 1063 | +/** |
| 1064 | + * Maximum number of users to mail at once when using impersonal mail. Should |
| 1065 | + * match the limit on your mail server. |
| 1066 | + */ |
| 1067 | +$wgEnotifMaxRecips = 500; |
| 1068 | + |
| 1069 | +/** |
| 1070 | + * Send mails via the job queue. This can be useful to reduce the time it |
| 1071 | + * takes to save a page that a lot of people are watching. |
| 1072 | + */ |
| 1073 | +$wgEnotifUseJobQ = false; |
| 1074 | + |
| 1075 | +/** |
| 1076 | + * Use real name instead of username in e-mail "from" field. |
| 1077 | + */ |
| 1078 | +$wgEnotifUseRealName = false; |
| 1079 | + |
| 1080 | +/** |
| 1081 | + * Array of usernames who will be sent a notification email for every change |
| 1082 | + * which occurs on a wiki. |
| 1083 | + */ |
| 1084 | +$wgUsersNotifiedOnAllChanges = array(); |
| 1085 | + |
| 1086 | + |
| 1087 | +/** @} */ # end of email settings |
| 1088 | + |
| 1089 | +/************************************************************************//** |
| 1090 | + * @name Database settings |
| 1091 | + * @{ |
| 1092 | + */ |
| 1093 | +/** Database host name or IP address */ |
591 | 1094 | $wgDBserver = 'localhost'; |
592 | | -/** database port number (for PostgreSQL) */ |
| 1095 | +/** Database port number (for PostgreSQL) */ |
593 | 1096 | $wgDBport = 5432; |
594 | | -/** name of the database */ |
| 1097 | +/** Name of the database */ |
595 | 1098 | $wgDBname = 'my_wiki'; |
596 | | -/** */ |
597 | | -$wgDBconnection = ''; |
598 | 1099 | /** Database username */ |
599 | 1100 | $wgDBuser = 'wikiuser'; |
600 | 1101 | /** Database user's password */ |
— | — | @@ -601,11 +1102,13 @@ |
602 | 1103 | /** Database type */ |
603 | 1104 | $wgDBtype = 'mysql'; |
604 | 1105 | |
605 | | -/** Separate username and password for maintenance tasks. Leave as null to use the default */ |
| 1106 | +/** Separate username for maintenance tasks. Leave as null to use the default. */ |
606 | 1107 | $wgDBadminuser = null; |
| 1108 | +/** Separate password for maintenance tasks. Leave as null to use the default. */ |
607 | 1109 | $wgDBadminpassword = null; |
608 | 1110 | |
609 | | -/** Search type |
| 1111 | +/** |
| 1112 | + * Search type. |
610 | 1113 | * Leave as null to select the default search engine for the |
611 | 1114 | * selected database type (eg SearchMySQL), or set to a class |
612 | 1115 | * name to override to a custom search engine. |
— | — | @@ -632,12 +1135,11 @@ |
633 | 1136 | */ |
634 | 1137 | $wgAllDBsAreLocalhost = false; |
635 | 1138 | |
636 | | -/**@}*/ |
637 | | - |
638 | 1139 | /** |
639 | 1140 | * Shared database for multiple wikis. Commonly used for storing a user table |
640 | 1141 | * for single sign-on. The server for this database must be the same as for the |
641 | 1142 | * main database. |
| 1143 | + * |
642 | 1144 | * For backwards compatibility the shared prefix is set to the same as the local |
643 | 1145 | * prefix, and the user table is listed in the default list of shared tables. |
644 | 1146 | * The user_properties table is also added so that users will continue to have their |
— | — | @@ -647,33 +1149,39 @@ |
648 | 1150 | * datbase. However it is advised to limit what tables you do share as many of |
649 | 1151 | * MediaWiki's tables may have side effects if you try to share them. |
650 | 1152 | * EXPERIMENTAL |
| 1153 | + * |
| 1154 | + * $wgSharedPrefix is the table prefix for the shared database. It defaults to |
| 1155 | + * $wgDBprefix. |
651 | 1156 | */ |
652 | 1157 | $wgSharedDB = null; |
653 | | -$wgSharedPrefix = false; # Defaults to $wgDBprefix |
| 1158 | + |
| 1159 | +/** @see $wgSharedDB */ |
| 1160 | +$wgSharedPrefix = false; |
| 1161 | +/** @see $wgSharedDB */ |
654 | 1162 | $wgSharedTables = array( 'user', 'user_properties' ); |
655 | 1163 | |
656 | 1164 | /** |
657 | 1165 | * Database load balancer |
658 | 1166 | * This is a two-dimensional array, an array of server info structures |
659 | 1167 | * Fields are: |
660 | | - * host: Host name |
661 | | - * dbname: Default database name |
662 | | - * user: DB user |
663 | | - * password: DB password |
664 | | - * type: "mysql" or "postgres" |
665 | | - * load: ratio of DB_SLAVE load, must be >=0, the sum of all loads must be >0 |
666 | | - * groupLoads: array of load ratios, the key is the query group name. A query may belong |
667 | | - * to several groups, the most specific group defined here is used. |
| 1168 | + * - host: Host name |
| 1169 | + * - dbname: Default database name |
| 1170 | + * - user: DB user |
| 1171 | + * - password: DB password |
| 1172 | + * - type: "mysql" or "postgres" |
| 1173 | + * - load: ratio of DB_SLAVE load, must be >=0, the sum of all loads must be >0 |
| 1174 | + * - groupLoads: array of load ratios, the key is the query group name. A query may belong |
| 1175 | + * to several groups, the most specific group defined here is used. |
668 | 1176 | * |
669 | | - * flags: bit field |
670 | | - * DBO_DEFAULT -- turns on DBO_TRX only if !$wgCommandLineMode (recommended) |
671 | | - * DBO_DEBUG -- equivalent of $wgDebugDumpSql |
672 | | - * DBO_TRX -- wrap entire request in a transaction |
673 | | - * DBO_IGNORE -- ignore errors (not useful in LocalSettings.php) |
674 | | - * DBO_NOBUFFER -- turn off buffering (not useful in LocalSettings.php) |
| 1177 | + * - flags: bit field |
| 1178 | + * - DBO_DEFAULT -- turns on DBO_TRX only if !$wgCommandLineMode (recommended) |
| 1179 | + * - DBO_DEBUG -- equivalent of $wgDebugDumpSql |
| 1180 | + * - DBO_TRX -- wrap entire request in a transaction |
| 1181 | + * - DBO_IGNORE -- ignore errors (not useful in LocalSettings.php) |
| 1182 | + * - DBO_NOBUFFER -- turn off buffering (not useful in LocalSettings.php) |
675 | 1183 | * |
676 | | - * max lag: (optional) Maximum replication lag before a slave will taken out of rotation |
677 | | - * max threads: (optional) Maximum number of running threads |
| 1184 | + * - max lag: (optional) Maximum replication lag before a slave will taken out of rotation |
| 1185 | + * - max threads: (optional) Maximum number of running threads |
678 | 1186 | * |
679 | 1187 | * These and any other user-defined properties will be assigned to the mLBInfo member |
680 | 1188 | * variable of the Database object. |
— | — | @@ -687,7 +1195,9 @@ |
688 | 1196 | * accidental misconfiguration or MediaWiki bugs, set read_only=1 on all your |
689 | 1197 | * slaves in my.cnf. You can set read_only mode at runtime using: |
690 | 1198 | * |
| 1199 | + * <code> |
691 | 1200 | * SET @@read_only=1; |
| 1201 | + * </code> |
692 | 1202 | * |
693 | 1203 | * Since the effect of writing to a slave is so damaging and difficult to clean |
694 | 1204 | * up, we at Wikimedia set read_only=1 in my.cnf on all our DB servers, even |
— | — | @@ -753,40 +1263,223 @@ |
754 | 1264 | */ |
755 | 1265 | $wgLocalDatabases = array(); |
756 | 1266 | |
757 | | -/** @{ |
758 | | - * Object cache settings |
759 | | - * See Defines.php for types |
| 1267 | +/** |
| 1268 | + * If lag is higher than $wgSlaveLagWarning, show a warning in some special |
| 1269 | + * pages (like watchlist). If the lag is higher than $wgSlaveLagCritical, |
| 1270 | + * show a more obvious warning. |
760 | 1271 | */ |
| 1272 | +$wgSlaveLagWarning = 10; |
| 1273 | +/** @see $wgSlaveLagWarning */ |
| 1274 | +$wgSlaveLagCritical = 30; |
| 1275 | + |
| 1276 | +/** |
| 1277 | + * Use old names for change_tags indices. |
| 1278 | + */ |
| 1279 | +$wgOldChangeTagsIndex = false; |
| 1280 | + |
| 1281 | +/**@}*/ # End of DB settings } |
| 1282 | + |
| 1283 | + |
| 1284 | +/************************************************************************//** |
| 1285 | + * @name Text storage |
| 1286 | + * @{ |
| 1287 | + */ |
| 1288 | + |
| 1289 | +/** |
| 1290 | + * We can also compress text stored in the 'text' table. If this is set on, new |
| 1291 | + * revisions will be compressed on page save if zlib support is available. Any |
| 1292 | + * compressed revisions will be decompressed on load regardless of this setting |
| 1293 | + * *but will not be readable at all* if zlib support is not available. |
| 1294 | + */ |
| 1295 | +$wgCompressRevisions = false; |
| 1296 | + |
| 1297 | +/** |
| 1298 | + * External stores allow including content |
| 1299 | + * from non database sources following URL links |
| 1300 | + * |
| 1301 | + * Short names of ExternalStore classes may be specified in an array here: |
| 1302 | + * $wgExternalStores = array("http","file","custom")... |
| 1303 | + * |
| 1304 | + * CAUTION: Access to database might lead to code execution |
| 1305 | + */ |
| 1306 | +$wgExternalStores = false; |
| 1307 | + |
| 1308 | +/** |
| 1309 | + * An array of external mysql servers, e.g. |
| 1310 | + * $wgExternalServers = array( 'cluster1' => array( 'srv28', 'srv29', 'srv30' ) ); |
| 1311 | + * Used by LBFactory_Simple, may be ignored if $wgLBFactoryConf is set to another class. |
| 1312 | + */ |
| 1313 | +$wgExternalServers = array(); |
| 1314 | + |
| 1315 | +/** |
| 1316 | + * The place to put new revisions, false to put them in the local text table. |
| 1317 | + * Part of a URL, e.g. DB://cluster1 |
| 1318 | + * |
| 1319 | + * Can be an array instead of a single string, to enable data distribution. Keys |
| 1320 | + * must be consecutive integers, starting at zero. Example: |
| 1321 | + * |
| 1322 | + * $wgDefaultExternalStore = array( 'DB://cluster1', 'DB://cluster2' ); |
| 1323 | + * |
| 1324 | + */ |
| 1325 | +$wgDefaultExternalStore = false; |
| 1326 | + |
| 1327 | +/** |
| 1328 | + * Revision text may be cached in $wgMemc to reduce load on external storage |
| 1329 | + * servers and object extraction overhead for frequently-loaded revisions. |
| 1330 | + * |
| 1331 | + * Set to 0 to disable, or number of seconds before cache expiry. |
| 1332 | + */ |
| 1333 | +$wgRevisionCacheExpiry = 0; |
| 1334 | + |
| 1335 | +/** @} */ # end text storage } |
| 1336 | + |
| 1337 | +/************************************************************************//** |
| 1338 | + * @name Performance hacks and limits |
| 1339 | + * @{ |
| 1340 | + */ |
| 1341 | +/** Disable database-intensive features */ |
| 1342 | +$wgMiserMode = false; |
| 1343 | +/** Disable all query pages if miser mode is on, not just some */ |
| 1344 | +$wgDisableQueryPages = false; |
| 1345 | +/** Number of rows to cache in 'querycache' table when miser mode is on */ |
| 1346 | +$wgQueryCacheLimit = 1000; |
| 1347 | +/** Number of links to a page required before it is deemed "wanted" */ |
| 1348 | +$wgWantedPagesThreshold = 1; |
| 1349 | +/** Enable slow parser functions */ |
| 1350 | +$wgAllowSlowParserFunctions = false; |
| 1351 | + |
| 1352 | +/** |
| 1353 | + * Do DELETE/INSERT for link updates instead of incremental |
| 1354 | + */ |
| 1355 | +$wgUseDumbLinkUpdate = false; |
| 1356 | + |
| 1357 | +/** |
| 1358 | + * Anti-lock flags - bitfield |
| 1359 | + * - ALF_PRELOAD_LINKS: |
| 1360 | + * Preload links during link update for save |
| 1361 | + * - ALF_PRELOAD_EXISTENCE: |
| 1362 | + * Preload cur_id during replaceLinkHolders |
| 1363 | + * - ALF_NO_LINK_LOCK: |
| 1364 | + * Don't use locking reads when updating the link table. This is |
| 1365 | + * necessary for wikis with a high edit rate for performance |
| 1366 | + * reasons, but may cause link table inconsistency |
| 1367 | + * - ALF_NO_BLOCK_LOCK: |
| 1368 | + * As for ALF_LINK_LOCK, this flag is a necessity for high-traffic |
| 1369 | + * wikis. |
| 1370 | + */ |
| 1371 | +$wgAntiLockFlags = 0; |
| 1372 | + |
| 1373 | +/** |
| 1374 | + * Maximum article size in kilobytes |
| 1375 | + */ |
| 1376 | +$wgMaxArticleSize = 2048; |
| 1377 | + |
| 1378 | +/** |
| 1379 | + * The minimum amount of memory that MediaWiki "needs"; MediaWiki will try to |
| 1380 | + * raise PHP's memory limit if it's below this amount. |
| 1381 | + */ |
| 1382 | +$wgMemoryLimit = "50M"; |
| 1383 | + |
| 1384 | +/** @} */ # end performance hacks } |
| 1385 | + |
| 1386 | +/************************************************************************//** |
| 1387 | + * @name Cache settings |
| 1388 | + * @{ |
| 1389 | + */ |
| 1390 | + |
| 1391 | +/** |
| 1392 | + * Directory for caching data in the local filesystem. Should not be accessible |
| 1393 | + * from the web. Set this to false to not use any local caches. |
| 1394 | + * |
| 1395 | + * Note: if multiple wikis share the same localisation cache directory, they |
| 1396 | + * must all have the same set of extensions. You can set a directory just for |
| 1397 | + * the localisation cache using $wgLocalisationCacheConf['storeDirectory']. |
| 1398 | + */ |
| 1399 | +$wgCacheDirectory = false; |
| 1400 | + |
| 1401 | +/** |
| 1402 | + * Main cache type. This should be a cache with fast access, but it may have |
| 1403 | + * limited space. By default, it is disabled, since the database is not fast |
| 1404 | + * enough to make it worthwhile. |
| 1405 | + * |
| 1406 | + * The options are: |
| 1407 | + * |
| 1408 | + * - CACHE_ANYTHING: Use anything, as long as it works |
| 1409 | + * - CACHE_NONE: Do not cache |
| 1410 | + * - CACHE_DB: Store cache objects in the DB |
| 1411 | + * - CACHE_MEMCACHED: MemCached, must specify servers in $wgMemCacheServers |
| 1412 | + * - CACHE_ACCEL: eAccelerator |
| 1413 | + * - CACHE_DBA: Use PHP's DBA extension to store in a DBM-style |
| 1414 | + * database. This is slow, and is not recommended for |
| 1415 | + * anything other than debugging. |
| 1416 | + * |
| 1417 | + * @see $wgMessageCacheType, $wgParserCacheType |
| 1418 | + */ |
761 | 1419 | $wgMainCacheType = CACHE_NONE; |
| 1420 | + |
| 1421 | +/** |
| 1422 | + * The cache type for storing the contents of the MediaWiki namespace. This |
| 1423 | + * cache is used for a small amount of data which is expensive to regenerate. |
| 1424 | + * |
| 1425 | + * For available types see $wgMainCacheType. |
| 1426 | + */ |
762 | 1427 | $wgMessageCacheType = CACHE_ANYTHING; |
| 1428 | + |
| 1429 | +/** |
| 1430 | + * The cache type for storing article HTML. This is used to store data which |
| 1431 | + * is expensive to regenerate, and benefits from having plenty of storage space. |
| 1432 | + * |
| 1433 | + * For available types see $wgMainCacheType. |
| 1434 | + */ |
763 | 1435 | $wgParserCacheType = CACHE_ANYTHING; |
764 | | -/**@}*/ |
765 | 1436 | |
| 1437 | +/** |
| 1438 | + * The expiry time for the parser cache, in seconds. The default is 86.4k |
| 1439 | + * seconds, otherwise known as a day. |
| 1440 | + */ |
766 | 1441 | $wgParserCacheExpireTime = 86400; |
767 | 1442 | |
768 | | -// Select which DBA handler <http://www.php.net/manual/en/dba.requirements.php> to use as CACHE_DBA backend |
| 1443 | +/** |
| 1444 | + * Select which DBA handler <http://www.php.net/manual/en/dba.requirements.php> to use as CACHE_DBA backend |
| 1445 | + */ |
769 | 1446 | $wgDBAhandler = 'db3'; |
770 | 1447 | |
| 1448 | +/** |
| 1449 | + * Store sessions in MemCached. This can be useful to improve performance, or to |
| 1450 | + * avoid the locking behaviour of PHP's default session handler, which tends to |
| 1451 | + * prevent multiple requests for the same user from acting concurrently. |
| 1452 | + */ |
771 | 1453 | $wgSessionsInMemcached = false; |
772 | 1454 | |
773 | | -/** This is used for setting php's session.save_handler. In practice, you will |
| 1455 | +/** |
| 1456 | + * This is used for setting php's session.save_handler. In practice, you will |
774 | 1457 | * almost never need to change this ever. Other options might be 'user' or |
775 | 1458 | * 'session_mysql.' Setting to null skips setting this entirely (which might be |
776 | | - * useful if you're doing cross-application sessions, see bug 11381) */ |
| 1459 | + * useful if you're doing cross-application sessions, see bug 11381) |
| 1460 | + */ |
777 | 1461 | $wgSessionHandler = 'files'; |
778 | 1462 | |
779 | | -/**@{ |
780 | | - * Memcached-specific settings |
781 | | - * See docs/memcached.txt |
782 | | - */ |
| 1463 | +/** @deprecated Does nothing */ |
783 | 1464 | $wgUseMemCached = false; |
784 | | -$wgMemCachedDebug = false; ///< Will be set to false in Setup.php, if the server isn't working |
| 1465 | + |
| 1466 | +/** If enabled, will send MemCached debugging information to $wgDebugLogFile */ |
| 1467 | +$wgMemCachedDebug = false; |
| 1468 | + |
| 1469 | +/** The list of MemCached servers and port numbers */ |
785 | 1470 | $wgMemCachedServers = array( '127.0.0.1:11000' ); |
| 1471 | + |
| 1472 | +/** |
| 1473 | + * Use persistent connections to MemCached, which are shared across multiple |
| 1474 | + * requests. |
| 1475 | + */ |
786 | 1476 | $wgMemCachedPersistent = false; |
787 | | -$wgMemCachedTimeout = 100000; //Data timeout in microseconds |
788 | | -/**@}*/ |
789 | 1477 | |
790 | 1478 | /** |
| 1479 | + * Read/write timeout for MemCached server communication, in microseconds. |
| 1480 | + */ |
| 1481 | +$wgMemCachedTimeout = 100000; |
| 1482 | + |
| 1483 | +/** |
791 | 1484 | * Set this to true to make a local copy of the message cache, for use in |
792 | 1485 | * addition to memcached. The files will be put in $wgCacheDirectory. |
793 | 1486 | */ |
— | — | @@ -827,17 +1520,200 @@ |
828 | 1521 | 'manualRecache' => false, |
829 | 1522 | ); |
830 | 1523 | |
831 | | -# Language settings |
832 | | -# |
| 1524 | +/** Allow client-side caching of pages */ |
| 1525 | +$wgCachePages = true; |
| 1526 | + |
| 1527 | +/** |
| 1528 | + * Set this to current time to invalidate all prior cached pages. Affects both |
| 1529 | + * client- and server-side caching. |
| 1530 | + * You can get the current date on your server by using the command: |
| 1531 | + * date +%Y%m%d%H%M%S |
| 1532 | + */ |
| 1533 | +$wgCacheEpoch = '20030516000000'; |
| 1534 | + |
| 1535 | +/** |
| 1536 | + * Bump this number when changing the global style sheets and JavaScript. |
| 1537 | + * It should be appended in the query string of static CSS and JS includes, |
| 1538 | + * to ensure that client-side caches do not keep obsolete copies of global |
| 1539 | + * styles. |
| 1540 | + */ |
| 1541 | +$wgStyleVersion = '287'; |
| 1542 | + |
| 1543 | +/** |
| 1544 | + * This will cache static pages for non-logged-in users to reduce |
| 1545 | + * database traffic on public sites. |
| 1546 | + * Must set $wgShowIPinHeader = false |
| 1547 | + */ |
| 1548 | +$wgUseFileCache = false; |
| 1549 | + |
| 1550 | +/** |
| 1551 | + * Directory where the cached page will be saved. |
| 1552 | + * Defaults to "$wgCacheDirectory/html". |
| 1553 | + */ |
| 1554 | +$wgFileCacheDirectory = false; |
| 1555 | + |
| 1556 | +/** |
| 1557 | + * Keep parsed pages in a cache (objectcache table or memcached) |
| 1558 | + * to speed up output of the same page viewed by another user with the |
| 1559 | + * same options. |
| 1560 | + * |
| 1561 | + * This can provide a significant speedup for medium to large pages, |
| 1562 | + * so you probably want to keep it on. Extensions that conflict with the |
| 1563 | + * parser cache should disable the cache on a per-page basis instead. |
| 1564 | + */ |
| 1565 | +$wgEnableParserCache = true; |
| 1566 | + |
| 1567 | +/** |
| 1568 | + * Append a configured value to the parser cache and the sitenotice key so |
| 1569 | + * that they can be kept separate for some class of activity. |
| 1570 | + */ |
| 1571 | +$wgRenderHashAppend = ''; |
| 1572 | + |
| 1573 | +/** |
| 1574 | + * If on, the sidebar navigation links are cached for users with the |
| 1575 | + * current language set. This can save a touch of load on a busy site |
| 1576 | + * by shaving off extra message lookups. |
| 1577 | + * |
| 1578 | + * However it is also fragile: changing the site configuration, or |
| 1579 | + * having a variable $wgArticlePath, can produce broken links that |
| 1580 | + * don't update as expected. |
| 1581 | + */ |
| 1582 | +$wgEnableSidebarCache = false; |
| 1583 | + |
| 1584 | +/** |
| 1585 | + * Expiry time for the sidebar cache, in seconds |
| 1586 | + */ |
| 1587 | +$wgSidebarCacheExpiry = 86400; |
| 1588 | + |
| 1589 | +/** |
| 1590 | + * When using the file cache, we can store the cached HTML gzipped to save disk |
| 1591 | + * space. Pages will then also be served compressed to clients that support it. |
| 1592 | + * THIS IS NOT COMPATIBLE with ob_gzhandler which is now enabled if supported in |
| 1593 | + * the default LocalSettings.php! If you enable this, remove that setting first. |
| 1594 | + * |
| 1595 | + * Requires zlib support enabled in PHP. |
| 1596 | + */ |
| 1597 | +$wgUseGzip = false; |
| 1598 | + |
| 1599 | +/** Whether MediaWiki should send an ETag header */ |
| 1600 | +$wgUseETag = false; |
| 1601 | + |
| 1602 | +/** Clock skew or the one-second resolution of time() can occasionally cause cache |
| 1603 | + * problems when the user requests two pages within a short period of time. This |
| 1604 | + * variable adds a given number of seconds to vulnerable timestamps, thereby giving |
| 1605 | + * a grace period. |
| 1606 | + */ |
| 1607 | +$wgClockSkewFudge = 5; |
| 1608 | + |
| 1609 | +/** @} */ # end of cache settings |
| 1610 | + |
| 1611 | +/************************************************************************//** |
| 1612 | + * @name HTTP proxy (Squid) settings |
| 1613 | + * |
| 1614 | + * Many of these settings apply to any HTTP proxy used in front of MediaWiki, |
| 1615 | + * although they are referred to as Squid settings for historical reasons. |
| 1616 | + * |
| 1617 | + * Achieving a high hit ratio with an HTTP proxy requires special |
| 1618 | + * configuration. See http://www.mediawiki.org/wiki/Manual:Squid_caching for |
| 1619 | + * more details. |
| 1620 | + * |
| 1621 | + * @{ |
| 1622 | + */ |
| 1623 | + |
| 1624 | +/** |
| 1625 | + * Enable/disable Squid. |
| 1626 | + * See http://www.mediawiki.org/wiki/Manual:Squid_caching |
| 1627 | + */ |
| 1628 | +$wgUseSquid = false; |
| 1629 | + |
| 1630 | +/** If you run Squid3 with ESI support, enable this (default:false): */ |
| 1631 | +$wgUseESI = false; |
| 1632 | + |
| 1633 | +/** Send X-Vary-Options header for better caching (requires patched Squid) */ |
| 1634 | +$wgUseXVO = false; |
| 1635 | + |
| 1636 | +/** |
| 1637 | + * Internal server name as known to Squid, if different. Example: |
| 1638 | + * <code> |
| 1639 | + * $wgInternalServer = 'http://yourinternal.tld:8000'; |
| 1640 | + * </code> |
| 1641 | + */ |
| 1642 | +$wgInternalServer = $wgServer; |
| 1643 | + |
| 1644 | +/** |
| 1645 | + * Cache timeout for the squid, will be sent as s-maxage (without ESI) or |
| 1646 | + * Surrogate-Control (with ESI). Without ESI, you should strip out s-maxage in |
| 1647 | + * the Squid config. 18000 seconds = 5 hours, more cache hits with 2678400 = 31 |
| 1648 | + * days |
| 1649 | + */ |
| 1650 | +$wgSquidMaxage = 18000; |
| 1651 | + |
| 1652 | +/** |
| 1653 | + * Default maximum age for raw CSS/JS accesses |
| 1654 | + */ |
| 1655 | +$wgForcedRawSMaxage = 300; |
| 1656 | + |
| 1657 | +/** |
| 1658 | + * List of proxy servers to purge on changes; default port is 80. Use IP addresses. |
| 1659 | + * |
| 1660 | + * When MediaWiki is running behind a proxy, it will trust X-Forwarded-For |
| 1661 | + * headers sent/modified from these proxies when obtaining the remote IP address |
| 1662 | + * |
| 1663 | + * For a list of trusted servers which *aren't* purged, see $wgSquidServersNoPurge. |
| 1664 | + */ |
| 1665 | +$wgSquidServers = array(); |
| 1666 | + |
| 1667 | +/** |
| 1668 | + * As above, except these servers aren't purged on page changes; use to set a |
| 1669 | + * list of trusted proxies, etc. |
| 1670 | + */ |
| 1671 | +$wgSquidServersNoPurge = array(); |
| 1672 | + |
| 1673 | +/** Maximum number of titles to purge in any one client operation */ |
| 1674 | +$wgMaxSquidPurgeTitles = 400; |
| 1675 | + |
| 1676 | +/** |
| 1677 | + * HTCP multicast address. Set this to a multicast IP address to enable HTCP. |
| 1678 | + * |
| 1679 | + * Note that MediaWiki uses the old non-RFC compliant HTCP format, which was |
| 1680 | + * present in the earliest Squid implementations of the protocol. |
| 1681 | + */ |
| 1682 | +$wgHTCPMulticastAddress = false; |
| 1683 | + |
| 1684 | +/** |
| 1685 | + * HTCP multicast port. |
| 1686 | + * @see $wgHTCPMulticastAddress |
| 1687 | + */ |
| 1688 | +$wgHTCPPort = 4827; |
| 1689 | + |
| 1690 | +/** |
| 1691 | + * HTCP multicast TTL. |
| 1692 | + * @see $wgHTCPMulticastAddress |
| 1693 | + */ |
| 1694 | +$wgHTCPMulticastTTL = 1; |
| 1695 | + |
| 1696 | +/** Should forwarded Private IPs be accepted? */ |
| 1697 | +$wgUsePrivateIPs = false; |
| 1698 | + |
| 1699 | +/** @} */ # end of HTTP proxy settings |
| 1700 | + |
| 1701 | +/************************************************************************//** |
| 1702 | + * @name Language, regional and character encoding settings |
| 1703 | + * @{ |
| 1704 | + */ |
| 1705 | + |
833 | 1706 | /** Site language code, should be one of ./languages/Language(.*).php */ |
834 | 1707 | $wgLanguageCode = 'en'; |
835 | 1708 | |
836 | 1709 | /** |
837 | 1710 | * Some languages need different word forms, usually for different cases. |
838 | | - * Used in Language::convertGrammar(). |
| 1711 | + * Used in Language::convertGrammar(). Example: |
| 1712 | + * |
| 1713 | + * <code> |
| 1714 | + * $wgGrammarForms['en']['genitive']['car'] = 'car\'s'; |
| 1715 | + * </code> |
839 | 1716 | */ |
840 | 1717 | $wgGrammarForms = array(); |
841 | | -#$wgGrammarForms['en']['genitive']['car'] = 'car\'s'; |
842 | 1718 | |
843 | 1719 | /** Treat language links as magic connectors, not inline links */ |
844 | 1720 | $wgInterwikiMagic = true; |
— | — | @@ -855,9 +1731,18 @@ |
856 | 1732 | */ |
857 | 1733 | $wgDummyLanguageCodes = array( 'qqq', 'als', 'be-x-old', 'dk', 'fiu-vro', 'iu', 'nb', 'simple', 'tp' ); |
858 | 1734 | |
859 | | -/** We speak UTF-8 all the time now, unless some oddities happen */ |
| 1735 | +/** @deprecated Since MediaWiki 1.5, this must always be set to UTF-8. */ |
860 | 1736 | $wgInputEncoding = 'UTF-8'; |
| 1737 | +/** @deprecated Since MediaWiki 1.5, this must always be set to UTF-8. */ |
861 | 1738 | $wgOutputEncoding = 'UTF-8'; |
| 1739 | + |
| 1740 | +/** |
| 1741 | + * Character set for use in the article edit box. Language-specific encodings |
| 1742 | + * may be defined. |
| 1743 | + * |
| 1744 | + * This historic feature is one of the first that was added by former MediaWiki |
| 1745 | + * team leader Brion Vibber, and is used to support the Esperanto x-system. |
| 1746 | + */ |
862 | 1747 | $wgEditEncoding = ''; |
863 | 1748 | |
864 | 1749 | /** |
— | — | @@ -882,24 +1767,58 @@ |
883 | 1768 | $wgFixMalayalamUnicode = true; |
884 | 1769 | |
885 | 1770 | /** |
886 | | - * Locale for LC_CTYPE, to work around http://bugs.php.net/bug.php?id=45132 |
887 | | - * For Unix-like operating systems, set this to to a locale that has a UTF-8 |
888 | | - * character set. Only the character set is relevant. |
| 1771 | + * Set this to eg 'ISO-8859-1' to perform character set conversion when |
| 1772 | + * loading old revisions not marked with "utf-8" flag. Use this when |
| 1773 | + * converting a wiki from MediaWiki 1.4 or earlier to UTF-8 without the |
| 1774 | + * burdensome mass conversion of old text data. |
| 1775 | + * |
| 1776 | + * NOTE! This DOES NOT touch any fields other than old_text.Titles, comments, |
| 1777 | + * user names, etc still must be converted en masse in the database before |
| 1778 | + * continuing as a UTF-8 wiki. |
889 | 1779 | */ |
890 | | -$wgShellLocale = 'en_US.utf8'; |
| 1780 | +$wgLegacyEncoding = false; |
891 | 1781 | |
892 | 1782 | /** |
893 | | - * Set this to eg 'ISO-8859-1' to perform character set |
894 | | - * conversion when loading old revisions not marked with |
895 | | - * "utf-8" flag. Use this when converting wiki to UTF-8 |
896 | | - * without the burdensome mass conversion of old text data. |
897 | | - * |
898 | | - * NOTE! This DOES NOT touch any fields other than old_text. |
899 | | - * Titles, comments, user names, etc still must be converted |
900 | | - * en masse in the database before continuing as a UTF-8 wiki. |
| 1783 | + * Browser Blacklist for unicode non compliant browsers. Contains a list of |
| 1784 | + * regexps : "/regexp/" matching problematic browsers. These browsers will |
| 1785 | + * be served encoded unicode in the edit box instead of real unicode. |
901 | 1786 | */ |
902 | | -$wgLegacyEncoding = false; |
| 1787 | +$wgBrowserBlackList = array( |
| 1788 | + /** |
| 1789 | + * Netscape 2-4 detection |
| 1790 | + * The minor version may contain strings such as "Gold" or "SGoldC-SGI" |
| 1791 | + * Lots of non-netscape user agents have "compatible", so it's useful to check for that |
| 1792 | + * with a negative assertion. The [UIN] identifier specifies the level of security |
| 1793 | + * in a Netscape/Mozilla browser, checking for it rules out a number of fakers. |
| 1794 | + * The language string is unreliable, it is missing on NS4 Mac. |
| 1795 | + * |
| 1796 | + * Reference: http://www.psychedelix.com/agents/index.shtml |
| 1797 | + */ |
| 1798 | + '/^Mozilla\/2\.[^ ]+ [^(]*?\((?!compatible).*; [UIN]/', |
| 1799 | + '/^Mozilla\/3\.[^ ]+ [^(]*?\((?!compatible).*; [UIN]/', |
| 1800 | + '/^Mozilla\/4\.[^ ]+ [^(]*?\((?!compatible).*; [UIN]/', |
903 | 1801 | |
| 1802 | + /** |
| 1803 | + * MSIE on Mac OS 9 is teh sux0r, converts þ to <thorn>, ð to <eth>, Þ to <THORN> and Ð to <ETH> |
| 1804 | + * |
| 1805 | + * Known useragents: |
| 1806 | + * - Mozilla/4.0 (compatible; MSIE 5.0; Mac_PowerPC) |
| 1807 | + * - Mozilla/4.0 (compatible; MSIE 5.15; Mac_PowerPC) |
| 1808 | + * - Mozilla/4.0 (compatible; MSIE 5.23; Mac_PowerPC) |
| 1809 | + * - [...] |
| 1810 | + * |
| 1811 | + * @link http://en.wikipedia.org/w/index.php?title=User%3A%C6var_Arnfj%F6r%F0_Bjarmason%2Ftestme&diff=12356041&oldid=12355864 |
| 1812 | + * @link http://en.wikipedia.org/wiki/Template%3AOS9 |
| 1813 | + */ |
| 1814 | + '/^Mozilla\/4\.0 \(compatible; MSIE \d+\.\d+; Mac_PowerPC\)/', |
| 1815 | + |
| 1816 | + /** |
| 1817 | + * Google wireless transcoder, seems to eat a lot of chars alive |
| 1818 | + * http://it.wikipedia.org/w/index.php?title=Luciano_Ligabue&diff=prev&oldid=8857361 |
| 1819 | + */ |
| 1820 | + '/^Mozilla\/4\.0 \(compatible; MSIE 6.0; Windows NT 5.0; Google Wireless Transcoder;\)/' |
| 1821 | +); |
| 1822 | + |
904 | 1823 | /** |
905 | 1824 | * If set to true, the MediaWiki 1.4 to 1.5 schema conversion will |
906 | 1825 | * create stub reference rows in the text table instead of copying |
— | — | @@ -917,10 +1836,187 @@ |
918 | 1837 | */ |
919 | 1838 | $wgLegacySchemaConversion = false; |
920 | 1839 | |
| 1840 | +/** |
| 1841 | + * Enable to allow rewriting dates in page text. |
| 1842 | + * DOES NOT FORMAT CORRECTLY FOR MOST LANGUAGES. |
| 1843 | + */ |
| 1844 | +$wgUseDynamicDates = false; |
| 1845 | +/** |
| 1846 | + * Enable dates like 'May 12' instead of '12 May', this only takes effect if |
| 1847 | + * the interface is set to English. |
| 1848 | + */ |
| 1849 | +$wgAmericanDates = false; |
| 1850 | +/** |
| 1851 | + * For Hindi and Arabic use local numerals instead of Western style (0-9) |
| 1852 | + * numerals in interface. |
| 1853 | + */ |
| 1854 | +$wgTranslateNumerals = true; |
| 1855 | + |
| 1856 | +/** |
| 1857 | + * Translation using MediaWiki: namespace. |
| 1858 | + * Interface messages will be loaded from the database. |
| 1859 | + */ |
| 1860 | +$wgUseDatabaseMessages = true; |
| 1861 | + |
| 1862 | +/** |
| 1863 | + * Expiry time for the message cache key |
| 1864 | + */ |
| 1865 | +$wgMsgCacheExpiry = 86400; |
| 1866 | + |
| 1867 | +/** |
| 1868 | + * Maximum entry size in the message cache, in bytes |
| 1869 | + */ |
| 1870 | +$wgMaxMsgCacheEntrySize = 10000; |
| 1871 | + |
| 1872 | +/** |
| 1873 | + * If true, serialized versions of the messages arrays will be |
| 1874 | + * read from the 'serialized' subdirectory if they are present. |
| 1875 | + * Set to false to always use the Messages files, regardless of |
| 1876 | + * whether they are up to date or not. |
| 1877 | + */ |
| 1878 | +$wgEnableSerializedMessages = true; |
| 1879 | + |
| 1880 | +/** |
| 1881 | + * Set to false if you are thorough system admin who always remembers to keep |
| 1882 | + * serialized files up to date to save few mtime calls. |
| 1883 | + */ |
| 1884 | +$wgCheckSerialized = true; |
| 1885 | + |
| 1886 | +/** Whether to enable language variant conversion. */ |
| 1887 | +$wgDisableLangConversion = false; |
| 1888 | + |
| 1889 | +/** Whether to enable language variant conversion for links. */ |
| 1890 | +$wgDisableTitleConversion = false; |
| 1891 | + |
| 1892 | +/** Default variant code, if false, the default will be the language code */ |
| 1893 | +$wgDefaultLanguageVariant = false; |
| 1894 | + |
| 1895 | +/** |
| 1896 | + * Disabled variants array of language variant conversion. Example: |
| 1897 | + * <code> |
| 1898 | + * $wgDisabledVariants[] = 'zh-mo'; |
| 1899 | + * $wgDisabledVariants[] = 'zh-my'; |
| 1900 | + * </code> |
| 1901 | + * |
| 1902 | + * or: |
| 1903 | + * |
| 1904 | + * <code> |
| 1905 | + * $wgDisabledVariants = array('zh-mo', 'zh-my'); |
| 1906 | + * </code> |
| 1907 | + */ |
| 1908 | +$wgDisabledVariants = array(); |
| 1909 | + |
| 1910 | +/** |
| 1911 | + * Like $wgArticlePath, but on multi-variant wikis, this provides a |
| 1912 | + * path format that describes which parts of the URL contain the |
| 1913 | + * language variant. For Example: |
| 1914 | + * |
| 1915 | + * $wgLanguageCode = 'sr'; |
| 1916 | + * $wgVariantArticlePath = '/$2/$1'; |
| 1917 | + * $wgArticlePath = '/wiki/$1'; |
| 1918 | + * |
| 1919 | + * A link to /wiki/ would be redirected to /sr/Главна_страна |
| 1920 | + * |
| 1921 | + * It is important that $wgArticlePath not overlap with possible values |
| 1922 | + * of $wgVariantArticlePath. |
| 1923 | + */ |
| 1924 | +$wgVariantArticlePath = false; |
| 1925 | + |
| 1926 | +/** |
| 1927 | + * Show a bar of language selection links in the user login and user |
| 1928 | + * registration forms; edit the "loginlanguagelinks" message to |
| 1929 | + * customise these. |
| 1930 | + */ |
| 1931 | +$wgLoginLanguageSelector = false; |
| 1932 | + |
| 1933 | +/** |
| 1934 | + * Whether to use zhdaemon to perform Chinese text processing |
| 1935 | + * zhdaemon is under developement, so normally you don't want to |
| 1936 | + * use it unless for testing. |
| 1937 | + */ |
| 1938 | +$wgUseZhdaemon = false; |
| 1939 | +$wgZhdaemonHost="localhost"; |
| 1940 | +$wgZhdaemonPort=2004; |
| 1941 | + |
| 1942 | +/** |
| 1943 | + * When translating messages with wfMsg(), it is not always clear what should |
| 1944 | + * be considered UI messages and what should be content messages. |
| 1945 | + * |
| 1946 | + * For example, for the English Wikipedia, there should be only one 'mainpage', |
| 1947 | + * so when getting the link for 'mainpage', we should treat it as site content |
| 1948 | + * and call wfMsgForContent(), but for rendering the text of the link, we call |
| 1949 | + * wfMsg(). The code behaves this way by default. However, sites like the |
| 1950 | + * Wikimedia Commons do offer different versions of 'mainpage' and the like for |
| 1951 | + * different languages. This array provides a way to override the default |
| 1952 | + * behavior. For example, to allow language-specific main page and community |
| 1953 | + * portal, set |
| 1954 | + * |
| 1955 | + * $wgForceUIMsgAsContentMsg = array( 'mainpage', 'portal-url' ); |
| 1956 | + */ |
| 1957 | +$wgForceUIMsgAsContentMsg = array(); |
| 1958 | + |
| 1959 | +/** |
| 1960 | + * Fake out the timezone that the server thinks it's in. This will be used for |
| 1961 | + * date display and not for what's stored in the DB. Leave to null to retain |
| 1962 | + * your server's OS-based timezone value. |
| 1963 | + * |
| 1964 | + * This variable is currently used only for signature formatting and for local |
| 1965 | + * time/date parser variables ({{LOCALTIME}} etc.) |
| 1966 | + * |
| 1967 | + * Timezones can be translated by editing MediaWiki messages of type |
| 1968 | + * timezone-nameinlowercase like timezone-utc. |
| 1969 | + * |
| 1970 | + * Examples: |
| 1971 | + * <code> |
| 1972 | + * $wgLocaltimezone = 'GMT'; |
| 1973 | + * $wgLocaltimezone = 'PST8PDT'; |
| 1974 | + * $wgLocaltimezone = 'Europe/Sweden'; |
| 1975 | + * $wgLocaltimezone = 'CET'; |
| 1976 | + * </code> |
| 1977 | + */ |
| 1978 | +$wgLocaltimezone = null; |
| 1979 | + |
| 1980 | +/** |
| 1981 | + * Set an offset from UTC in minutes to use for the default timezone setting |
| 1982 | + * for anonymous users and new user accounts. |
| 1983 | + * |
| 1984 | + * This setting is used for most date/time displays in the software, and is |
| 1985 | + * overrideable in user preferences. It is *not* used for signature timestamps. |
| 1986 | + * |
| 1987 | + * You can set it to match the configured server timezone like this: |
| 1988 | + * $wgLocalTZoffset = date("Z") / 60; |
| 1989 | + * |
| 1990 | + * If your server is not configured for the timezone you want, you can set |
| 1991 | + * this in conjunction with the signature timezone and override the PHP default |
| 1992 | + * timezone like so: |
| 1993 | + * $wgLocaltimezone="Europe/Berlin"; |
| 1994 | + * date_default_timezone_set( $wgLocaltimezone ); |
| 1995 | + * $wgLocalTZoffset = date("Z") / 60; |
| 1996 | + * |
| 1997 | + * Leave at NULL to show times in universal time (UTC/GMT). |
| 1998 | + */ |
| 1999 | +$wgLocalTZoffset = null; |
| 2000 | + |
| 2001 | +/** @} */ # End of language/charset settings |
| 2002 | + |
| 2003 | +/*************************************************************************//** |
| 2004 | + * @name Output format and skin settings |
| 2005 | + * @{ |
| 2006 | + */ |
| 2007 | + |
| 2008 | +/** The default Content-Type header. */ |
921 | 2009 | $wgMimeType = 'text/html'; |
| 2010 | + |
| 2011 | +/** The content type used in script tags. */ |
922 | 2012 | $wgJsMimeType = 'text/javascript'; |
| 2013 | + |
| 2014 | +/** The HTML document type. */ |
923 | 2015 | $wgDocType = '-//W3C//DTD XHTML 1.0 Transitional//EN'; |
| 2016 | + |
| 2017 | +/** The URL of the document type declaration. */ |
924 | 2018 | $wgDTD = 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd'; |
| 2019 | + |
| 2020 | +/** The default xmlns attribute. */ |
925 | 2021 | $wgXhtmlDefaultNamespace = 'http://www.w3.org/1999/xhtml'; |
926 | 2022 | |
927 | 2023 | /** |
— | — | @@ -976,104 +2072,279 @@ |
977 | 2073 | */ |
978 | 2074 | $wgXhtmlNamespaces = array(); |
979 | 2075 | |
980 | | -/** Enable to allow rewriting dates in page text. |
981 | | - * DOES NOT FORMAT CORRECTLY FOR MOST LANGUAGES */ |
982 | | -$wgUseDynamicDates = false; |
983 | | -/** Enable dates like 'May 12' instead of '12 May', this only takes effect if |
984 | | - * the interface is set to English |
| 2076 | +/** |
| 2077 | + * Show IP address, for non-logged in users. It's necessary to switch this off |
| 2078 | + * for some forms of caching. |
985 | 2079 | */ |
986 | | -$wgAmericanDates = false; |
| 2080 | +$wgShowIPinHeader = true; |
| 2081 | + |
987 | 2082 | /** |
988 | | - * For Hindi and Arabic use local numerals instead of Western style (0-9) |
989 | | - * numerals in interface. |
| 2083 | + * Site notice shown at the top of each page |
| 2084 | + * |
| 2085 | + * MediaWiki:Sitenotice page, which will override this. You can also |
| 2086 | + * provide a separate message for logged-out users using the |
| 2087 | + * MediaWiki:Anonnotice page. |
990 | 2088 | */ |
991 | | -$wgTranslateNumerals = true; |
| 2089 | +$wgSiteNotice = ''; |
992 | 2090 | |
993 | 2091 | /** |
994 | | - * Translation using MediaWiki: namespace. |
995 | | - * Interface messages will be loaded from the database. |
| 2092 | + * A subtitle to add to the tagline, for skins that have it/ |
996 | 2093 | */ |
997 | | -$wgUseDatabaseMessages = true; |
| 2094 | +$wgExtraSubtitle = ''; |
998 | 2095 | |
999 | 2096 | /** |
1000 | | - * Expiry time for the message cache key |
| 2097 | + * If this is set, a "donate" link will appear in the sidebar. Set it to a URL. |
1001 | 2098 | */ |
1002 | | -$wgMsgCacheExpiry = 86400; |
| 2099 | +$wgSiteSupportPage = ''; |
1003 | 2100 | |
1004 | 2101 | /** |
1005 | | - * Maximum entry size in the message cache, in bytes |
| 2102 | + * Validate the overall output using tidy and refuse |
| 2103 | + * to display the page if it's not valid. |
1006 | 2104 | */ |
1007 | | -$wgMaxMsgCacheEntrySize = 10000; |
| 2105 | +$wgValidateAllHtml = false; |
1008 | 2106 | |
1009 | 2107 | /** |
1010 | | - * If true, serialized versions of the messages arrays will be |
1011 | | - * read from the 'serialized' subdirectory if they are present. |
1012 | | - * Set to false to always use the Messages files, regardless of |
1013 | | - * whether they are up to date or not. |
| 2108 | + * Default skin, for new users and anonymous visitors. Registered users may |
| 2109 | + * change this to any one of the other available skins in their preferences. |
| 2110 | + * This have to be completely lowercase; see the "skins" directory for the list |
| 2111 | + * of available skins. |
1014 | 2112 | */ |
1015 | | -$wgEnableSerializedMessages = true; |
| 2113 | +$wgDefaultSkin = 'vector'; |
1016 | 2114 | |
1017 | 2115 | /** |
1018 | | - * Set to false if you are thorough system admin who always remembers to keep |
1019 | | - * serialized files up to date to save few mtime calls. |
| 2116 | +* Should we allow the user's to select their own skin that will override the default? |
| 2117 | +* @deprecated in 1.16, use $wgHiddenPrefs[] = 'skin' to disable it |
| 2118 | +*/ |
| 2119 | +$wgAllowUserSkin = true; |
| 2120 | + |
| 2121 | +/** |
| 2122 | + * Specify the name of a skin that should not be presented in the list of |
| 2123 | + * available skins. Use for blacklisting a skin which you do not want to |
| 2124 | + * remove from the .../skins/ directory |
1020 | 2125 | */ |
1021 | | -$wgCheckSerialized = true; |
| 2126 | +$wgSkipSkin = ''; |
| 2127 | +/** Array for more like $wgSkipSkin. */ |
| 2128 | +$wgSkipSkins = array(); |
1022 | 2129 | |
1023 | | -/** Whether to enable language variant conversion. */ |
1024 | | -$wgDisableLangConversion = false; |
| 2130 | +/** |
| 2131 | + * Optionally, we can specify a stylesheet to use for media="handheld". |
| 2132 | + * This is recognized by some, but not all, handheld/mobile/PDA browsers. |
| 2133 | + * If left empty, compliant handheld browsers won't pick up the skin |
| 2134 | + * stylesheet, which is specified for 'screen' media. |
| 2135 | + * |
| 2136 | + * Can be a complete URL, base-relative path, or $wgStylePath-relative path. |
| 2137 | + * Try 'chick/main.css' to apply the Chick styles to the MonoBook HTML. |
| 2138 | + * |
| 2139 | + * Will also be switched in when 'handheld=yes' is added to the URL, like |
| 2140 | + * the 'printable=yes' mode for print media. |
| 2141 | + */ |
| 2142 | +$wgHandheldStyle = false; |
1025 | 2143 | |
1026 | | -/** Whether to enable language variant conversion for links. */ |
1027 | | -$wgDisableTitleConversion = false; |
| 2144 | +/** |
| 2145 | + * If set, 'screen' and 'handheld' media specifiers for stylesheets are |
| 2146 | + * transformed such that they apply to the iPhone/iPod Touch Mobile Safari, |
| 2147 | + * which doesn't recognize 'handheld' but does support media queries on its |
| 2148 | + * screen size. |
| 2149 | + * |
| 2150 | + * Consider only using this if you have a *really good* handheld stylesheet, |
| 2151 | + * as iPhone users won't have any way to disable it and use the "grown-up" |
| 2152 | + * styles instead. |
| 2153 | + */ |
| 2154 | +$wgHandheldForIPhone = false; |
1028 | 2155 | |
1029 | | -/** Default variant code, if false, the default will be the language code */ |
1030 | | -$wgDefaultLanguageVariant = false; |
| 2156 | +/** |
| 2157 | + * Allow user Javascript page? |
| 2158 | + * This enables a lot of neat customizations, but may |
| 2159 | + * increase security risk to users and server load. |
| 2160 | + */ |
| 2161 | +$wgAllowUserJs = false; |
1031 | 2162 | |
1032 | | -/** Disabled variants array of language variant conversion. |
1033 | | - * example: |
1034 | | - * $wgDisabledVariants[] = 'zh-mo'; |
1035 | | - * $wgDisabledVariants[] = 'zh-my'; |
| 2163 | +/** |
| 2164 | + * Allow user Cascading Style Sheets (CSS)? |
| 2165 | + * This enables a lot of neat customizations, but may |
| 2166 | + * increase security risk to users and server load. |
| 2167 | + */ |
| 2168 | +$wgAllowUserCss = false; |
| 2169 | + |
| 2170 | +/** |
| 2171 | + * Allow user-preferences implemented in CSS? |
| 2172 | + * This allows users to customise the site appearance to a greater |
| 2173 | + * degree; disabling it will improve page load times. |
| 2174 | + */ |
| 2175 | +$wgAllowUserCssPrefs = true; |
| 2176 | + |
| 2177 | +/** Use the site's Javascript page? */ |
| 2178 | +$wgUseSiteJs = true; |
| 2179 | + |
| 2180 | +/** Use the site's Cascading Style Sheets (CSS)? */ |
| 2181 | +$wgUseSiteCss = true; |
| 2182 | + |
| 2183 | +/** |
| 2184 | + * Version of jQuery to use. Currently available versions are 1.3.2 and 1.4.2 . |
| 2185 | + * Other versions can be installed by hand at your own risk, see |
| 2186 | + * http://www.mediawiki.org/wiki/Manual:$wgJQueryVersion |
| 2187 | + */ |
| 2188 | +$wgJQueryVersion = '1.4.2'; |
| 2189 | + |
| 2190 | +/** |
| 2191 | + * Use a minified version of jQuery. If enabled, jquery-versionnumber.min.js |
| 2192 | + * will be used instead of jquery-versionnumber.js . It is recommended you only |
| 2193 | + * disable this for debugging purposes. |
| 2194 | + */ |
| 2195 | +$wgJQueryMinified = true; |
| 2196 | + |
| 2197 | +/** |
| 2198 | + * Include jQuery on every page served by MediaWiki. You can disable this if |
| 2199 | + * your user/site-wide JS doesn't need it and you want to save bandwidth. |
| 2200 | + */ |
| 2201 | +$wgJQueryOnEveryPage = true; |
| 2202 | + |
| 2203 | +/** |
| 2204 | + * Set to false to disable application of access keys and tooltips, |
| 2205 | + * eg to avoid keyboard conflicts with system keys or as a low-level |
| 2206 | + * optimization. |
| 2207 | + */ |
| 2208 | +$wgEnableTooltipsAndAccesskeys = true; |
| 2209 | + |
| 2210 | +/** |
| 2211 | + * Break out of framesets. This can be used to prevent external sites from |
| 2212 | + * framing your site with ads. |
| 2213 | + */ |
| 2214 | +$wgBreakFrames = false; |
| 2215 | + |
| 2216 | +/** |
| 2217 | + * Disable output compression (enabled by default if zlib is available) |
| 2218 | + */ |
| 2219 | +$wgDisableOutputCompression = false; |
| 2220 | + |
| 2221 | +/** |
| 2222 | + * Should we allow a broader set of characters in id attributes, per HTML5? If |
| 2223 | + * not, use only HTML 4-compatible IDs. This option is for testing -- when the |
| 2224 | + * functionality is ready, it will be on by default with no option. |
1036 | 2225 | * |
1037 | | - * or: |
1038 | | - * $wgDisabledVariants = array('zh-mo', 'zh-my'); |
| 2226 | + * Currently this appears to work fine in Chrome 4 and 5, Firefox 3.5 and 3.6, IE6 |
| 2227 | + * and 8, and Opera 10.50, but it fails in Opera 10.10: Unicode IDs don't seem |
| 2228 | + * to work as anchors. So not quite ready for general use yet. |
1039 | 2229 | */ |
1040 | | -$wgDisabledVariants = array(); |
| 2230 | +$wgExperimentalHtmlIds = false; |
1041 | 2231 | |
1042 | 2232 | /** |
1043 | | - * Like $wgArticlePath, but on multi-variant wikis, this provides a |
1044 | | - * path format that describes which parts of the URL contain the |
1045 | | - * language variant. For Example: |
| 2233 | + * Search form behavior for Vector skin only |
| 2234 | + * true = use an icon search button |
| 2235 | + * false = use Go & Search buttons |
| 2236 | + */ |
| 2237 | +$wgVectorUseSimpleSearch = false; |
| 2238 | + |
| 2239 | +/** |
| 2240 | + * Watch and unwatch as an icon rather than a link for Vector skin only |
| 2241 | + * true = use an icon watch/unwatch button |
| 2242 | + * false = use watch/unwatch text link |
| 2243 | + */ |
| 2244 | +$wgVectorUseIconWatch = false; |
| 2245 | + |
| 2246 | +/** |
| 2247 | + * Show the name of the current variant as a label in the variants drop-down menu |
| 2248 | + */ |
| 2249 | +$wgVectorShowVariantName = false; |
| 2250 | + |
| 2251 | +/** |
| 2252 | + * Add extra stylesheets for Vector - This is only being used so that we can play around with different options while |
| 2253 | + * keeping our CSS code in the SVN and not having to change the main Vector styles. This will probably go away later on. |
| 2254 | + * null = add no extra styles |
| 2255 | + * array = list of style paths relative to skins/vector/ |
| 2256 | + */ |
| 2257 | +$wgVectorExtraStyles = null; |
| 2258 | + |
| 2259 | +/** |
| 2260 | + * Display user edit counts in various prominent places. |
| 2261 | + */ |
| 2262 | +$wgEdititis = false; |
| 2263 | + |
| 2264 | +/** @} */ # End of output format settings } |
| 2265 | + |
| 2266 | +/*************************************************************************//** |
| 2267 | + * @name Page title and interwiki link settings |
| 2268 | + * @{ |
| 2269 | + */ |
| 2270 | + |
| 2271 | +/** |
| 2272 | + * Name of the project namespace. If left set to false, $wgSitename will be |
| 2273 | + * used instead. |
| 2274 | + */ |
| 2275 | +$wgMetaNamespace = false; |
| 2276 | + |
| 2277 | +/** |
| 2278 | + * Name of the project talk namespace. |
1046 | 2279 | * |
1047 | | - * $wgLanguageCode = 'sr'; |
1048 | | - * $wgVariantArticlePath = '/$2/$1'; |
1049 | | - * $wgArticlePath = '/wiki/$1'; |
| 2280 | + * Normally you can ignore this and it will be something like |
| 2281 | + * $wgMetaNamespace . "_talk". In some languages, you may want to set this |
| 2282 | + * manually for grammatical reasons. |
| 2283 | + */ |
| 2284 | +$wgMetaNamespaceTalk = false; |
| 2285 | + |
| 2286 | +/** |
| 2287 | + * Additional namespaces. If the namespaces defined in Language.php and |
| 2288 | + * Namespace.php are insufficient, you can create new ones here, for example, |
| 2289 | + * to import Help files in other languages. |
| 2290 | + * PLEASE NOTE: Once you delete a namespace, the pages in that namespace will |
| 2291 | + * no longer be accessible. If you rename it, then you can access them through |
| 2292 | + * the new namespace name. |
1050 | 2293 | * |
1051 | | - * A link to /wiki/ would be redirected to /sr/Главна_страна |
1052 | | - * |
1053 | | - * It is important that $wgArticlePath not overlap with possible values |
1054 | | - * of $wgVariantArticlePath. |
| 2294 | + * Custom namespaces should start at 100 to avoid conflicting with standard |
| 2295 | + * namespaces, and should always follow the even/odd main/talk pattern. |
1055 | 2296 | */ |
1056 | | -$wgVariantArticlePath = false;///< defaults to false |
| 2297 | +#$wgExtraNamespaces = |
| 2298 | +# array(100 => "Hilfe", |
| 2299 | +# 101 => "Hilfe_Diskussion", |
| 2300 | +# 102 => "Aide", |
| 2301 | +# 103 => "Discussion_Aide" |
| 2302 | +# ); |
| 2303 | +$wgExtraNamespaces = null; |
1057 | 2304 | |
1058 | 2305 | /** |
1059 | | - * Show a bar of language selection links in the user login and user |
1060 | | - * registration forms; edit the "loginlanguagelinks" message to |
1061 | | - * customise these |
| 2306 | + * Namespace aliases |
| 2307 | + * These are alternate names for the primary localised namespace names, which |
| 2308 | + * are defined by $wgExtraNamespaces and the language file. If a page is |
| 2309 | + * requested with such a prefix, the request will be redirected to the primary |
| 2310 | + * name. |
| 2311 | + * |
| 2312 | + * Set this to a map from namespace names to IDs. |
| 2313 | + * Example: |
| 2314 | + * $wgNamespaceAliases = array( |
| 2315 | + * 'Wikipedian' => NS_USER, |
| 2316 | + * 'Help' => 100, |
| 2317 | + * ); |
1062 | 2318 | */ |
1063 | | -$wgLoginLanguageSelector = false; |
| 2319 | +$wgNamespaceAliases = array(); |
1064 | 2320 | |
1065 | 2321 | /** |
1066 | | - * Whether to use zhdaemon to perform Chinese text processing |
1067 | | - * zhdaemon is under developement, so normally you don't want to |
1068 | | - * use it unless for testing |
| 2322 | + * Allowed title characters -- regex character class |
| 2323 | + * Don't change this unless you know what you're doing |
| 2324 | + * |
| 2325 | + * Problematic punctuation: |
| 2326 | + * - []{}|# Are needed for link syntax, never enable these |
| 2327 | + * - <> Causes problems with HTML escaping, don't use |
| 2328 | + * - % Enabled by default, minor problems with path to query rewrite rules, see below |
| 2329 | + * - + Enabled by default, but doesn't work with path to query rewrite rules, corrupted by apache |
| 2330 | + * - ? Enabled by default, but doesn't work with path to PATH_INFO rewrites |
| 2331 | + * |
| 2332 | + * All three of these punctuation problems can be avoided by using an alias, instead of a |
| 2333 | + * rewrite rule of either variety. |
| 2334 | + * |
| 2335 | + * The problem with % is that when using a path to query rewrite rule, URLs are |
| 2336 | + * double-unescaped: once by Apache's path conversion code, and again by PHP. So |
| 2337 | + * %253F, for example, becomes "?". Our code does not double-escape to compensate |
| 2338 | + * for this, indeed double escaping would break if the double-escaped title was |
| 2339 | + * passed in the query string rather than the path. This is a minor security issue |
| 2340 | + * because articles can be created such that they are hard to view or edit. |
| 2341 | + * |
| 2342 | + * In some rare cases you may wish to remove + for compatibility with old links. |
| 2343 | + * |
| 2344 | + * Theoretically 0x80-0x9F of ISO 8859-1 should be disallowed, but |
| 2345 | + * this breaks interlanguage links |
1069 | 2346 | */ |
1070 | | -$wgUseZhdaemon = false; |
1071 | | -$wgZhdaemonHost="localhost"; |
1072 | | -$wgZhdaemonPort=2004; |
| 2347 | +$wgLegalTitleChars = " %!\"$&'()*,\\-.\\/0-9:;=?@A-Z\\\\^_`a-z~\\x80-\\xFF+"; |
1073 | 2348 | |
1074 | | - |
1075 | | -# Miscellaneous configuration settings |
1076 | | -# |
1077 | | - |
1078 | 2349 | $wgLocalInterwiki = 'w'; |
1079 | 2350 | $wgInterwikiExpiry = 10800; # Expiry time for cache of interwiki table |
1080 | 2351 | |
— | — | @@ -1111,196 +2382,289 @@ |
1112 | 2383 | */ |
1113 | 2384 | $wgRedirectSources = false; |
1114 | 2385 | |
| 2386 | +/** |
| 2387 | + * Set this to false to avoid forcing the first letter of links to capitals. |
| 2388 | + * WARNING: may break links! This makes links COMPLETELY case-sensitive. Links |
| 2389 | + * appearing with a capital at the beginning of a sentence will *not* go to the |
| 2390 | + * same place as links in the middle of a sentence using a lowercase initial. |
| 2391 | + */ |
| 2392 | +$wgCapitalLinks = true; |
1115 | 2393 | |
1116 | | -$wgShowIPinHeader = true; # For non-logged in users |
1117 | | -$wgMaxSigChars = 255; # Maximum number of Unicode characters in signature |
1118 | | -$wgMaxArticleSize = 2048; # Maximum article size in kilobytes |
1119 | | -# Maximum number of bytes in username. You want to run the maintenance |
1120 | | -# script ./maintenance/checkUsernames.php once you have changed this value |
1121 | | -$wgMaxNameChars = 255; |
| 2394 | +/** |
| 2395 | + * @since 1.16 - This can now be set per-namespace. Some special namespaces (such |
| 2396 | + * as Special, see MWNamespace::$alwaysCapitalizedNamespaces for the full list) must be |
| 2397 | + * true by default (and setting them has no effect), due to various things that |
| 2398 | + * require them to be so. Also, since Talk namespaces need to directly mirror their |
| 2399 | + * associated content namespaces, the values for those are ignored in favor of the |
| 2400 | + * subject namespace's setting. Setting for NS_MEDIA is taken automatically from |
| 2401 | + * NS_FILE. |
| 2402 | + * EX: $wgCapitalLinkOverrides[ NS_FILE ] = false; |
| 2403 | + */ |
| 2404 | +$wgCapitalLinkOverrides = array(); |
1122 | 2405 | |
1123 | | -$wgMaxPPNodeCount = 1000000; # A complexity limit on template expansion |
| 2406 | +/** Which namespaces should support subpages? |
| 2407 | + * See Language.php for a list of namespaces. |
| 2408 | + */ |
| 2409 | +$wgNamespacesWithSubpages = array( |
| 2410 | + NS_TALK => true, |
| 2411 | + NS_USER => true, |
| 2412 | + NS_USER_TALK => true, |
| 2413 | + NS_PROJECT_TALK => true, |
| 2414 | + NS_FILE_TALK => true, |
| 2415 | + NS_MEDIAWIKI => true, |
| 2416 | + NS_MEDIAWIKI_TALK => true, |
| 2417 | + NS_TEMPLATE_TALK => true, |
| 2418 | + NS_HELP_TALK => true, |
| 2419 | + NS_CATEGORY_TALK => true |
| 2420 | +); |
1124 | 2421 | |
1125 | 2422 | /** |
1126 | | - * Maximum recursion depth for templates within templates. |
1127 | | - * The current parser adds two levels to the PHP call stack for each template, |
1128 | | - * and xdebug limits the call stack to 100 by default. So this should hopefully |
1129 | | - * stop the parser before it hits the xdebug limit. |
| 2423 | + * Array of namespaces which can be deemed to contain valid "content", as far |
| 2424 | + * as the site statistics are concerned. Useful if additional namespaces also |
| 2425 | + * contain "content" which should be considered when generating a count of the |
| 2426 | + * number of articles in the wiki. |
1130 | 2427 | */ |
1131 | | -$wgMaxTemplateDepth = 40; |
1132 | | -$wgMaxPPExpandDepth = 40; |
| 2428 | +$wgContentNamespaces = array( NS_MAIN ); |
1133 | 2429 | |
1134 | 2430 | /** |
1135 | | - * If true, removes (substitutes) templates in "~~~~" signatures. |
| 2431 | + * Max number of redirects to follow when resolving redirects. |
| 2432 | + * 1 means only the first redirect is followed (default behavior). |
| 2433 | + * 0 or less means no redirects are followed. |
1136 | 2434 | */ |
1137 | | -$wgCleanSignatures = true; |
| 2435 | +$wgMaxRedirects = 1; |
1138 | 2436 | |
1139 | | -$wgExtraSubtitle = ''; |
1140 | | -$wgSiteSupportPage = ''; # A page where you users can receive donations |
1141 | | - |
1142 | 2437 | /** |
1143 | | - * Set this to a string to put the wiki into read-only mode. The text will be |
1144 | | - * used as an explanation to users. |
| 2438 | + * Array of invalid page redirect targets. |
| 2439 | + * Attempting to create a redirect to any of the pages in this array |
| 2440 | + * will make the redirect fail. |
| 2441 | + * Userlogout is hard-coded, so it does not need to be listed here. |
| 2442 | + * (bug 10569) Disallow Mypage and Mytalk as well. |
1145 | 2443 | * |
1146 | | - * This prevents most write operations via the web interface. Cache updates may |
1147 | | - * still be possible. To prevent database writes completely, use the read_only |
1148 | | - * option in MySQL. |
| 2444 | + * As of now, this only checks special pages. Redirects to pages in |
| 2445 | + * other namespaces cannot be invalidated by this variable. |
1149 | 2446 | */ |
1150 | | -$wgReadOnly = null; |
| 2447 | +$wgInvalidRedirectTargets = array( 'Filepath', 'Mypage', 'Mytalk' ); |
1151 | 2448 | |
1152 | | -/*** |
1153 | | - * If this lock file exists (size > 0), the wiki will be forced into read-only mode. |
1154 | | - * Its contents will be shown to users as part of the read-only warning |
1155 | | - * message. |
| 2449 | +/** @} */ # End of title and interwiki settings } |
| 2450 | + |
| 2451 | +/************************************************************************//** |
| 2452 | + * @name Parser settings |
| 2453 | + * These settings configure the transformation from wikitext to HTML. |
| 2454 | + * @{ |
1156 | 2455 | */ |
1157 | | -$wgReadOnlyFile = false; ///< defaults to "{$wgUploadDirectory}/lock_yBgMBwiR"; |
1158 | 2456 | |
1159 | 2457 | /** |
1160 | | - * Filename for debug logging. See http://www.mediawiki.org/wiki/How_to_debug |
1161 | | - * The debug log file should be not be publicly accessible if it is used, as it |
1162 | | - * may contain private data. |
| 2458 | + * Parser configuration. Associative array with the following members: |
| 2459 | + * |
| 2460 | + * class The class name |
| 2461 | + * |
| 2462 | + * preprocessorClass The preprocessor class. Two classes are currently available: |
| 2463 | + * Preprocessor_Hash, which uses plain PHP arrays for tempoarary |
| 2464 | + * storage, and Preprocessor_DOM, which uses the DOM module for |
| 2465 | + * temporary storage. Preprocessor_DOM generally uses less memory; |
| 2466 | + * the speed of the two is roughly the same. |
| 2467 | + * |
| 2468 | + * If this parameter is not given, it uses Preprocessor_DOM if the |
| 2469 | + * DOM module is available, otherwise it uses Preprocessor_Hash. |
| 2470 | + * |
| 2471 | + * The entire associative array will be passed through to the constructor as |
| 2472 | + * the first parameter. Note that only Setup.php can use this variable -- |
| 2473 | + * the configuration will change at runtime via $wgParser member functions, so |
| 2474 | + * the contents of this variable will be out-of-date. The variable can only be |
| 2475 | + * changed during LocalSettings.php, in particular, it can't be changed during |
| 2476 | + * an extension setup function. |
1163 | 2477 | */ |
1164 | | -$wgDebugLogFile = ''; |
| 2478 | +$wgParserConf = array( |
| 2479 | + 'class' => 'Parser', |
| 2480 | + #'preprocessorClass' => 'Preprocessor_Hash', |
| 2481 | +); |
1165 | 2482 | |
| 2483 | +/** Maximum indent level of toc. */ |
| 2484 | +$wgMaxTocLevel = 999; |
| 2485 | + |
1166 | 2486 | /** |
1167 | | - * Prefix for debug log lines |
| 2487 | + * A complexity limit on template expansion |
1168 | 2488 | */ |
1169 | | -$wgDebugLogPrefix = ''; |
| 2489 | +$wgMaxPPNodeCount = 1000000; |
1170 | 2490 | |
1171 | 2491 | /** |
1172 | | - * If true, instead of redirecting, show a page with a link to the redirect |
1173 | | - * destination. This allows for the inspection of PHP error messages, and easy |
1174 | | - * resubmission of form data. For developer use only. |
| 2492 | + * Maximum recursion depth for templates within templates. |
| 2493 | + * The current parser adds two levels to the PHP call stack for each template, |
| 2494 | + * and xdebug limits the call stack to 100 by default. So this should hopefully |
| 2495 | + * stop the parser before it hits the xdebug limit. |
1175 | 2496 | */ |
1176 | | -$wgDebugRedirects = false; |
| 2497 | +$wgMaxTemplateDepth = 40; |
1177 | 2498 | |
| 2499 | +/** @see $wgMaxTemplateDepth */ |
| 2500 | +$wgMaxPPExpandDepth = 40; |
| 2501 | + |
| 2502 | +/** The external URL protocols */ |
| 2503 | +$wgUrlProtocols = array( |
| 2504 | + 'http://', |
| 2505 | + 'https://', |
| 2506 | + 'ftp://', |
| 2507 | + 'irc://', |
| 2508 | + 'gopher://', |
| 2509 | + 'telnet://', // Well if we're going to support the above.. -ævar |
| 2510 | + 'nntp://', // @bug 3808 RFC 1738 |
| 2511 | + 'worldwind://', |
| 2512 | + 'mailto:', |
| 2513 | + 'news:', |
| 2514 | + 'svn://', |
| 2515 | + 'git://', |
| 2516 | + 'mms://', |
| 2517 | +); |
| 2518 | + |
1178 | 2519 | /** |
1179 | | - * If true, log debugging data from action=raw. |
1180 | | - * This is normally false to avoid overlapping debug entries due to gen=css and |
1181 | | - * gen=js requests. |
| 2520 | + * If true, removes (substitutes) templates in "~~~~" signatures. |
1182 | 2521 | */ |
1183 | | -$wgDebugRawPage = false; |
| 2522 | +$wgCleanSignatures = true; |
1184 | 2523 | |
1185 | | -/** |
1186 | | - * Send debug data to an HTML comment in the output. |
| 2524 | +/** Whether to allow inline image pointing to other websites */ |
| 2525 | +$wgAllowExternalImages = false; |
| 2526 | + |
| 2527 | +/** |
| 2528 | + * If the above is false, you can specify an exception here. Image URLs |
| 2529 | + * that start with this string are then rendered, while all others are not. |
| 2530 | + * You can use this to set up a trusted, simple repository of images. |
| 2531 | + * You may also specify an array of strings to allow multiple sites |
1187 | 2532 | * |
1188 | | - * This may occasionally be useful when supporting a non-technical end-user. It's |
1189 | | - * more secure than exposing the debug log file to the web, since the output only |
1190 | | - * contains private data for the current user. But it's not ideal for development |
1191 | | - * use since data is lost on fatal errors and redirects. |
| 2533 | + * Examples: |
| 2534 | + * <code> |
| 2535 | + * $wgAllowExternalImagesFrom = 'http://127.0.0.1/'; |
| 2536 | + * $wgAllowExternalImagesFrom = array( 'http://127.0.0.1/', 'http://example.com' ); |
| 2537 | + * </code> |
1192 | 2538 | */ |
1193 | | -$wgDebugComments = false; |
| 2539 | +$wgAllowExternalImagesFrom = ''; |
1194 | 2540 | |
1195 | | -/** |
1196 | | - * Write SQL queries to the debug log |
| 2541 | +/** If $wgAllowExternalImages is false, you can allow an on-wiki |
| 2542 | + * whitelist of regular expression fragments to match the image URL |
| 2543 | + * against. If the image matches one of the regular expression fragments, |
| 2544 | + * The image will be displayed. |
| 2545 | + * |
| 2546 | + * Set this to true to enable the on-wiki whitelist (MediaWiki:External image whitelist) |
| 2547 | + * Or false to disable it |
1197 | 2548 | */ |
1198 | | -$wgDebugDumpSql = false; |
| 2549 | +$wgEnableImageWhitelist = true; |
1199 | 2550 | |
1200 | 2551 | /** |
1201 | | - * Set to an array of log group keys to filenames. |
1202 | | - * If set, wfDebugLog() output for that group will go to that file instead |
1203 | | - * of the regular $wgDebugLogFile. Useful for enabling selective logging |
1204 | | - * in production. |
| 2552 | + * A different approach to the above: simply allow the <img> tag to be used. |
| 2553 | + * This allows you to specify alt text and other attributes, copy-paste HTML to |
| 2554 | + * your wiki more easily, etc. However, allowing external images in any manner |
| 2555 | + * will allow anyone with editing rights to snoop on your visitors' IP |
| 2556 | + * addresses and so forth, if they wanted to, by inserting links to images on |
| 2557 | + * sites they control. |
1205 | 2558 | */ |
1206 | | -$wgDebugLogGroups = array(); |
| 2559 | +$wgAllowImageTag = false; |
1207 | 2560 | |
1208 | 2561 | /** |
1209 | | - * Display debug data at the bottom of the main content area. |
| 2562 | + * $wgUseTidy: use tidy to make sure HTML output is sane. |
| 2563 | + * Tidy is a free tool that fixes broken HTML. |
| 2564 | + * See http://www.w3.org/People/Raggett/tidy/ |
1210 | 2565 | * |
1211 | | - * Useful for developers and technical users trying to working on a closed wiki. |
| 2566 | + * - $wgTidyBin should be set to the path of the binary and |
| 2567 | + * - $wgTidyConf to the path of the configuration file. |
| 2568 | + * - $wgTidyOpts can include any number of parameters. |
| 2569 | + * - $wgTidyInternal controls the use of the PECL extension to use an in- |
| 2570 | + * process tidy library instead of spawning a separate program. |
| 2571 | + * Normally you shouldn't need to override the setting except for |
| 2572 | + * debugging. To install, use 'pear install tidy' and add a line |
| 2573 | + * 'extension=tidy.so' to php.ini. |
1212 | 2574 | */ |
1213 | | -$wgShowDebug = false; |
| 2575 | +$wgUseTidy = false; |
| 2576 | +/** @see $wgUseTidy */ |
| 2577 | +$wgAlwaysUseTidy = false; |
| 2578 | +/** @see $wgUseTidy */ |
| 2579 | +$wgTidyBin = 'tidy'; |
| 2580 | +/** @see $wgUseTidy */ |
| 2581 | +$wgTidyConf = $IP.'/includes/tidy.conf'; |
| 2582 | +/** @see $wgUseTidy */ |
| 2583 | +$wgTidyOpts = ''; |
| 2584 | +/** @see $wgUseTidy */ |
| 2585 | +$wgTidyInternal = extension_loaded( 'tidy' ); |
1214 | 2586 | |
1215 | 2587 | /** |
1216 | | - * Prefix debug messages with relative timestamp. Very-poor man's profiler. |
| 2588 | + * Put tidy warnings in HTML comments |
| 2589 | + * Only works for internal tidy. |
1217 | 2590 | */ |
1218 | | -$wgDebugTimestamps = false; |
| 2591 | +$wgDebugTidy = false; |
1219 | 2592 | |
1220 | | -/** |
1221 | | - * Print HTTP headers for every request in the debug information. |
| 2593 | +/** Allow raw, unchecked HTML in <html>...</html> sections. |
| 2594 | + * THIS IS VERY DANGEROUS on a publically editable site, so USE wgGroupPermissions |
| 2595 | + * TO RESTRICT EDITING to only those that you trust |
1222 | 2596 | */ |
1223 | | -$wgDebugPrintHttpHeaders = true; |
| 2597 | +$wgRawHtml = false; |
1224 | 2598 | |
1225 | 2599 | /** |
1226 | | - * Show the contents of $wgHooks in Special:Version |
| 2600 | + * Set a default target for external links, e.g. _blank to pop up a new window |
1227 | 2601 | */ |
1228 | | -$wgSpecialVersionShowHooks = false; |
| 2602 | +$wgExternalLinkTarget = false; |
1229 | 2603 | |
1230 | 2604 | /** |
1231 | | - * Whether to show "we're sorry, but there has been a database error" pages. |
1232 | | - * Displaying errors aids in debugging, but may display information useful |
1233 | | - * to an attacker. |
| 2605 | + * If true, external URL links in wiki text will be given the |
| 2606 | + * rel="nofollow" attribute as a hint to search engines that |
| 2607 | + * they should not be followed for ranking purposes as they |
| 2608 | + * are user-supplied and thus subject to spamming. |
1234 | 2609 | */ |
1235 | | -$wgShowSQLErrors = false; |
| 2610 | +$wgNoFollowLinks = true; |
1236 | 2611 | |
1237 | 2612 | /** |
1238 | | - * If true, some error messages will be colorized when running scripts on the |
1239 | | - * command line; this can aid picking important things out when debugging. |
1240 | | - * Ignored when running on Windows or when output is redirected to a file. |
| 2613 | + * Namespaces in which $wgNoFollowLinks doesn't apply. |
| 2614 | + * See Language.php for a list of namespaces. |
1241 | 2615 | */ |
1242 | | -$wgColorErrors = true; |
| 2616 | +$wgNoFollowNsExceptions = array(); |
1243 | 2617 | |
1244 | 2618 | /** |
1245 | | - * If set to true, uncaught exceptions will print a complete stack trace |
1246 | | - * to output. This should only be used for debugging, as it may reveal |
1247 | | - * private information in function parameters due to PHP's backtrace |
1248 | | - * formatting. |
| 2619 | + * If this is set to an array of domains, external links to these domain names |
| 2620 | + * (or any subdomains) will not be set to rel="nofollow" regardless of the |
| 2621 | + * value of $wgNoFollowLinks. For instance: |
| 2622 | + * |
| 2623 | + * $wgNoFollowDomainExceptions = array( 'en.wikipedia.org', 'wiktionary.org' ); |
| 2624 | + * |
| 2625 | + * This would add rel="nofollow" to links to de.wikipedia.org, but not |
| 2626 | + * en.wikipedia.org, wiktionary.org, en.wiktionary.org, us.en.wikipedia.org, |
| 2627 | + * etc. |
1249 | 2628 | */ |
1250 | | -$wgShowExceptionDetails = false; |
| 2629 | +$wgNoFollowDomainExceptions = array(); |
1251 | 2630 | |
1252 | 2631 | /** |
1253 | | - * If true, show a backtrace for database errors |
| 2632 | + * Allow DISPLAYTITLE to change title display |
1254 | 2633 | */ |
1255 | | -$wgShowDBErrorBacktrace = false; |
| 2634 | +$wgAllowDisplayTitle = true; |
1256 | 2635 | |
1257 | 2636 | /** |
1258 | | - * Expose backend server host names through the API and various HTML comments |
| 2637 | + * For consistency, restrict DISPLAYTITLE to titles that normalize to the same |
| 2638 | + * canonical DB key. |
1259 | 2639 | */ |
1260 | | -$wgShowHostnames = false; |
| 2640 | +$wgRestrictDisplayTitle = true; |
1261 | 2641 | |
1262 | 2642 | /** |
1263 | | - * If set to true MediaWiki will throw notices for some possible error |
1264 | | - * conditions and for deprecated functions. |
| 2643 | + * Maximum number of calls per parse to expensive parser functions such as |
| 2644 | + * PAGESINCATEGORY. |
1265 | 2645 | */ |
1266 | | -$wgDevelopmentWarnings = false; |
| 2646 | +$wgExpensiveParserFunctionLimit = 100; |
1267 | 2647 | |
1268 | 2648 | /** |
1269 | | - * Use experimental, DMOZ-like category browser |
| 2649 | + * Preprocessor caching threshold |
1270 | 2650 | */ |
1271 | | -$wgUseCategoryBrowser = false; |
| 2651 | +$wgPreprocessorCacheThreshold = 1000; |
1272 | 2652 | |
1273 | 2653 | /** |
1274 | | - * Keep parsed pages in a cache (objectcache table or memcached) |
1275 | | - * to speed up output of the same page viewed by another user with the |
1276 | | - * same options. |
1277 | | - * |
1278 | | - * This can provide a significant speedup for medium to large pages, |
1279 | | - * so you probably want to keep it on. Extensions that conflict with the |
1280 | | - * parser cache should disable the cache on a per-page basis instead. |
| 2654 | + * Enable interwiki transcluding. Only when iw_trans=1. |
1281 | 2655 | */ |
1282 | | -$wgEnableParserCache = true; |
| 2656 | +$wgEnableScaryTranscluding = false; |
1283 | 2657 | |
1284 | 2658 | /** |
1285 | | - * Append a configured value to the parser cache and the sitenotice key so |
1286 | | - * that they can be kept separate for some class of activity. |
| 2659 | + * Expiry time for interwiki transclusion |
1287 | 2660 | */ |
1288 | | -$wgRenderHashAppend = ''; |
| 2661 | +$wgTranscludeCacheExpiry = 3600; |
1289 | 2662 | |
1290 | | -/** |
1291 | | - * If on, the sidebar navigation links are cached for users with the |
1292 | | - * current language set. This can save a touch of load on a busy site |
1293 | | - * by shaving off extra message lookups. |
1294 | | - * |
1295 | | - * However it is also fragile: changing the site configuration, or |
1296 | | - * having a variable $wgArticlePath, can produce broken links that |
1297 | | - * don't update as expected. |
1298 | | - */ |
1299 | | -$wgEnableSidebarCache = false; |
| 2663 | +/** @} */ # end of parser settings } |
1300 | 2664 | |
1301 | | -/** |
1302 | | - * Expiry time for the sidebar cache, in seconds |
| 2665 | +/************************************************************************//** |
| 2666 | + * @name Statistics |
| 2667 | + * @{ |
1303 | 2668 | */ |
1304 | | -$wgSidebarCacheExpiry = 86400; |
1305 | 2669 | |
1306 | 2670 | /** |
1307 | 2671 | * Under which condition should a page in the main namespace be counted |
— | — | @@ -1323,12 +2687,239 @@ |
1324 | 2688 | */ |
1325 | 2689 | $wgHitcounterUpdateFreq = 1; |
1326 | 2690 | |
1327 | | -# Basic user rights and block settings |
1328 | | -$wgSysopUserBans = true; # Allow sysops to ban logged-in users |
1329 | | -$wgSysopRangeBans = true; # Allow sysops to ban IP ranges |
1330 | | -$wgAutoblockExpiry = 86400; # Number of seconds before autoblock entries expire |
1331 | | -$wgBlockAllowsUTEdit = false; # Default setting for option on block form to allow self talkpage editing whilst blocked |
1332 | | -$wgSysopEmailBans = true; # Allow sysops to ban users from accessing Emailuser |
| 2691 | +/** @} */ # End of statistics } |
| 2692 | + |
| 2693 | +/************************************************************************//** |
| 2694 | + * @name User accounts, authentication |
| 2695 | + * @{ |
| 2696 | + */ |
| 2697 | + |
| 2698 | +/** For compatibility with old installations set to false */ |
| 2699 | +$wgPasswordSalt = true; |
| 2700 | + |
| 2701 | +/** |
| 2702 | + * Specifies the minimal length of a user password. If set to 0, empty pass- |
| 2703 | + * words are allowed. |
| 2704 | + */ |
| 2705 | +$wgMinimalPasswordLength = 1; |
| 2706 | + |
| 2707 | +/** |
| 2708 | + * Maximum number of Unicode characters in signature |
| 2709 | + */ |
| 2710 | +$wgMaxSigChars = 255; |
| 2711 | + |
| 2712 | +/** |
| 2713 | + * Maximum number of bytes in username. You want to run the maintenance |
| 2714 | + * script ./maintenance/checkUsernames.php once you have changed this value. |
| 2715 | + */ |
| 2716 | +$wgMaxNameChars = 255; |
| 2717 | + |
| 2718 | +/** |
| 2719 | + * Array of usernames which may not be registered or logged in from |
| 2720 | + * Maintenance scripts can still use these |
| 2721 | + */ |
| 2722 | +$wgReservedUsernames = array( |
| 2723 | + 'MediaWiki default', // Default 'Main Page' and MediaWiki: message pages |
| 2724 | + 'Conversion script', // Used for the old Wikipedia software upgrade |
| 2725 | + 'Maintenance script', // Maintenance scripts which perform editing, image import script |
| 2726 | + 'Template namespace initialisation script', // Used in 1.2->1.3 upgrade |
| 2727 | + 'msg:double-redirect-fixer', // Automatic double redirect fix |
| 2728 | + 'msg:usermessage-editor', // Default user for leaving user messages |
| 2729 | +); |
| 2730 | + |
| 2731 | +/** |
| 2732 | + * Settings added to this array will override the default globals for the user |
| 2733 | + * preferences used by anonymous visitors and newly created accounts. |
| 2734 | + * For instance, to disable section editing links: |
| 2735 | + * $wgDefaultUserOptions ['editsection'] = 0; |
| 2736 | + * |
| 2737 | + */ |
| 2738 | +$wgDefaultUserOptions = array( |
| 2739 | + 'ccmeonemails' => 0, |
| 2740 | + 'cols' => 80, |
| 2741 | + 'contextchars' => 50, |
| 2742 | + 'contextlines' => 5, |
| 2743 | + 'date' => 'default', |
| 2744 | + 'diffonly' => 0, |
| 2745 | + 'disablemail' => 0, |
| 2746 | + 'disablesuggest' => 0, |
| 2747 | + 'editfont' => 'default', |
| 2748 | + 'editondblclick' => 0, |
| 2749 | + 'editsection' => 1, |
| 2750 | + 'editsectiononrightclick' => 0, |
| 2751 | + 'enotifminoredits' => 0, |
| 2752 | + 'enotifrevealaddr' => 0, |
| 2753 | + 'enotifusertalkpages' => 1, |
| 2754 | + 'enotifwatchlistpages' => 0, |
| 2755 | + 'extendwatchlist' => 0, |
| 2756 | + 'externaldiff' => 0, |
| 2757 | + 'externaleditor' => 0, |
| 2758 | + 'fancysig' => 0, |
| 2759 | + 'forceeditsummary' => 0, |
| 2760 | + 'gender' => 'unknown', |
| 2761 | + 'hideminor' => 0, |
| 2762 | + 'hidepatrolled' => 0, |
| 2763 | + 'highlightbroken' => 1, |
| 2764 | + 'imagesize' => 2, |
| 2765 | + 'justify' => 0, |
| 2766 | + 'math' => 1, |
| 2767 | + 'minordefault' => 0, |
| 2768 | + 'newpageshidepatrolled' => 0, |
| 2769 | + 'nocache' => 0, |
| 2770 | + 'noconvertlink' => 0, |
| 2771 | + 'norollbackdiff' => 0, |
| 2772 | + 'numberheadings' => 0, |
| 2773 | + 'previewonfirst' => 0, |
| 2774 | + 'previewontop' => 1, |
| 2775 | + 'quickbar' => 1, |
| 2776 | + 'rcdays' => 7, |
| 2777 | + 'rclimit' => 50, |
| 2778 | + 'rememberpassword' => 0, |
| 2779 | + 'rows' => 25, |
| 2780 | + 'searchlimit' => 20, |
| 2781 | + 'showhiddencats' => 0, |
| 2782 | + 'showjumplinks' => 1, |
| 2783 | + 'shownumberswatching' => 1, |
| 2784 | + 'showtoc' => 1, |
| 2785 | + 'showtoolbar' => 1, |
| 2786 | + 'skin' => false, |
| 2787 | + 'stubthreshold' => 0, |
| 2788 | + 'thumbsize' => 2, |
| 2789 | + 'underline' => 2, |
| 2790 | + 'uselivepreview' => 0, |
| 2791 | + 'usenewrc' => 0, |
| 2792 | + 'watchcreations' => 0, |
| 2793 | + 'watchdefault' => 0, |
| 2794 | + 'watchdeletion' => 0, |
| 2795 | + 'watchlistdays' => 3.0, |
| 2796 | + 'watchlisthideanons' => 0, |
| 2797 | + 'watchlisthidebots' => 0, |
| 2798 | + 'watchlisthideliu' => 0, |
| 2799 | + 'watchlisthideminor' => 0, |
| 2800 | + 'watchlisthideown' => 0, |
| 2801 | + 'watchlisthidepatrolled' => 0, |
| 2802 | + 'watchmoves' => 0, |
| 2803 | + 'wllimit' => 250, |
| 2804 | +); |
| 2805 | + |
| 2806 | +/** |
| 2807 | + * Whether or not to allow and use real name fields. |
| 2808 | + * @deprecated in 1.16, use $wgHiddenPrefs[] = 'realname' below to disable real |
| 2809 | + * names |
| 2810 | + */ |
| 2811 | +$wgAllowRealName = true; |
| 2812 | + |
| 2813 | +/** An array of preferences to not show for the user */ |
| 2814 | +$wgHiddenPrefs = array(); |
| 2815 | + |
| 2816 | +/** |
| 2817 | + * Characters to prevent during new account creations. |
| 2818 | + * This is used in a regular expression character class during |
| 2819 | + * registration (regex metacharacters like / are escaped). |
| 2820 | + */ |
| 2821 | +$wgInvalidUsernameCharacters = '@'; |
| 2822 | + |
| 2823 | +/** |
| 2824 | + * Character used as a delimiter when testing for interwiki userrights |
| 2825 | + * (In Special:UserRights, it is possible to modify users on different |
| 2826 | + * databases if the delimiter is used, e.g. Someuser@enwiki). |
| 2827 | + * |
| 2828 | + * It is recommended that you have this delimiter in |
| 2829 | + * $wgInvalidUsernameCharacters above, or you will not be able to |
| 2830 | + * modify the user rights of those users via Special:UserRights |
| 2831 | + */ |
| 2832 | +$wgUserrightsInterwikiDelimiter = '@'; |
| 2833 | + |
| 2834 | +/** |
| 2835 | + * Use some particular type of external authentication. The specific |
| 2836 | + * authentication module you use will normally require some extra settings to |
| 2837 | + * be specified. |
| 2838 | + * |
| 2839 | + * null indicates no external authentication is to be used. Otherwise, |
| 2840 | + * $wgExternalAuthType must be the name of a non-abstract class that extends |
| 2841 | + * ExternalUser. |
| 2842 | + * |
| 2843 | + * Core authentication modules can be found in includes/extauth/. |
| 2844 | + */ |
| 2845 | +$wgExternalAuthType = null; |
| 2846 | + |
| 2847 | +/** |
| 2848 | + * Configuration for the external authentication. This may include arbitrary |
| 2849 | + * keys that depend on the authentication mechanism. For instance, |
| 2850 | + * authentication against another web app might require that the database login |
| 2851 | + * info be provided. Check the file where your auth mechanism is defined for |
| 2852 | + * info on what to put here. |
| 2853 | + */ |
| 2854 | +$wgExternalAuthConfig = array(); |
| 2855 | + |
| 2856 | +/** |
| 2857 | + * When should we automatically create local accounts when external accounts |
| 2858 | + * already exist, if using ExternalAuth? Can have three values: 'never', |
| 2859 | + * 'login', 'view'. 'view' requires the external database to support cookies, |
| 2860 | + * and implies 'login'. |
| 2861 | + * |
| 2862 | + * TODO: Implement 'view' (currently behaves like 'login'). |
| 2863 | + */ |
| 2864 | +$wgAutocreatePolicy = 'login'; |
| 2865 | + |
| 2866 | +/** |
| 2867 | + * Policies for how each preference is allowed to be changed, in the presence |
| 2868 | + * of external authentication. The keys are preference keys, e.g., 'password' |
| 2869 | + * or 'emailaddress' (see Preferences.php et al.). The value can be one of the |
| 2870 | + * following: |
| 2871 | + * |
| 2872 | + * - local: Allow changes to this pref through the wiki interface but only |
| 2873 | + * apply them locally (default). |
| 2874 | + * - semiglobal: Allow changes through the wiki interface and try to apply them |
| 2875 | + * to the foreign database, but continue on anyway if that fails. |
| 2876 | + * - global: Allow changes through the wiki interface, but only let them go |
| 2877 | + * through if they successfully update the foreign database. |
| 2878 | + * - message: Allow no local changes for linked accounts; replace the change |
| 2879 | + * form with a message provided by the auth plugin, telling the user how to |
| 2880 | + * change the setting externally (maybe providing a link, etc.). If the auth |
| 2881 | + * plugin provides no message for this preference, hide it entirely. |
| 2882 | + * |
| 2883 | + * Accounts that are not linked to an external account are never affected by |
| 2884 | + * this setting. You may want to look at $wgHiddenPrefs instead. |
| 2885 | + * $wgHiddenPrefs supersedes this option. |
| 2886 | + * |
| 2887 | + * TODO: Implement message, global. |
| 2888 | + */ |
| 2889 | +$wgAllowPrefChange = array(); |
| 2890 | + |
| 2891 | +/** @} */ # end user accounts } |
| 2892 | + |
| 2893 | +/************************************************************************//** |
| 2894 | + * @name User rights, access control and monitoring |
| 2895 | + * @{ |
| 2896 | + */ |
| 2897 | + |
| 2898 | +/** Allow sysops to ban logged-in users */ |
| 2899 | +$wgSysopUserBans = true; |
| 2900 | + |
| 2901 | +/** Allow sysops to ban IP ranges */ |
| 2902 | +$wgSysopRangeBans = true; |
| 2903 | + |
| 2904 | +/** |
| 2905 | + * Number of seconds before autoblock entries expire. Default 86400 = 1 day. |
| 2906 | + */ |
| 2907 | +$wgAutoblockExpiry = 86400; |
| 2908 | + |
| 2909 | +/** |
| 2910 | + * Set this to true to allow blocked users to edit their own user talk page. |
| 2911 | + */ |
| 2912 | +$wgBlockAllowsUTEdit = false; |
| 2913 | + |
| 2914 | +/** Allow sysops to ban users from accessing Emailuser */ |
| 2915 | +$wgSysopEmailBans = true; |
| 2916 | + |
| 2917 | +/** |
| 2918 | + * Limits on the possible sizes of range blocks. |
| 2919 | + * |
| 2920 | + * CIDR notation is hard to understand, it's easy to mistakenly assume that a |
| 2921 | + * /1 is a small range and a /31 is a large range. Setting this to half the |
| 2922 | + * number of bits avoids such errors. |
| 2923 | + */ |
1333 | 2924 | $wgBlockCIDRLimit = array( |
1334 | 2925 | 'IPv4' => 16, # Blocks larger than a /16 (64k addresses) will not be allowed |
1335 | 2926 | 'IPv6' => 64, # 2^64 = ~1.8x10^19 addresses |
— | — | @@ -1341,24 +2932,31 @@ |
1342 | 2933 | * logging the user out will again allow reading and editing, just as for |
1343 | 2934 | * anonymous visitors. |
1344 | 2935 | */ |
1345 | | -$wgBlockDisablesLogin = false; # |
| 2936 | +$wgBlockDisablesLogin = false; |
1346 | 2937 | |
1347 | | -# Pages anonymous user may see as an array, e.g.: |
1348 | | -# array ( "Main Page", "Wikipedia:Help"); |
1349 | | -# Special:Userlogin and Special:Resetpass are always whitelisted. |
1350 | | -# NOTE: This will only work if $wgGroupPermissions['*']['read'] |
1351 | | -# is false -- see below. Otherwise, ALL pages are accessible, |
1352 | | -# regardless of this setting. |
1353 | | -# Also note that this will only protect _pages in the wiki_. |
1354 | | -# Uploaded files will remain readable. Make your upload |
1355 | | -# directory name unguessable, or use .htaccess to protect it. |
| 2938 | +/** |
| 2939 | + * Pages anonymous user may see as an array, e.g. |
| 2940 | + * |
| 2941 | + * <code> |
| 2942 | + * $wgWhitelistRead = array ( "Main Page", "Wikipedia:Help"); |
| 2943 | + * </code> |
| 2944 | + * |
| 2945 | + * Special:Userlogin and Special:Resetpass are always whitelisted. |
| 2946 | + * |
| 2947 | + * NOTE: This will only work if $wgGroupPermissions['*']['read'] is false -- |
| 2948 | + * see below. Otherwise, ALL pages are accessible, regardless of this setting. |
| 2949 | + * |
| 2950 | + * Also note that this will only protect _pages in the wiki_. Uploaded files |
| 2951 | + * will remain readable. You can use img_auth.php to protect uploaded files, |
| 2952 | + * see http://www.mediawiki.org/wiki/Manual:Image_Authorization |
| 2953 | + */ |
1356 | 2954 | $wgWhitelistRead = false; |
1357 | 2955 | |
1358 | 2956 | /** |
1359 | 2957 | * Should editors be required to have a validated e-mail |
1360 | 2958 | * address before being allowed to edit? |
1361 | 2959 | */ |
1362 | | -$wgEmailConfirmToEdit=false; |
| 2960 | +$wgEmailConfirmToEdit = false; |
1363 | 2961 | |
1364 | 2962 | /** |
1365 | 2963 | * Permission keys given to users in each group. |
— | — | @@ -1379,6 +2977,7 @@ |
1380 | 2978 | */ |
1381 | 2979 | $wgGroupPermissions = array(); |
1382 | 2980 | |
| 2981 | +/** @cond file_level_code */ |
1383 | 2982 | // Implicit group for all visitors |
1384 | 2983 | $wgGroupPermissions['*']['createaccount'] = true; |
1385 | 2984 | $wgGroupPermissions['*']['read'] = true; |
— | — | @@ -1481,6 +3080,8 @@ |
1482 | 3081 | */ |
1483 | 3082 | # $wgGroupPermissions['developer']['siteadmin'] = true; |
1484 | 3083 | |
| 3084 | +/** @endcond */ |
| 3085 | + |
1485 | 3086 | /** |
1486 | 3087 | * Permission keys revoked from users in each group. |
1487 | 3088 | * This acts the same way as wgGroupPermissions above, except that |
— | — | @@ -1515,6 +3116,8 @@ |
1516 | 3117 | * |
1517 | 3118 | */ |
1518 | 3119 | $wgGroupsAddToSelf = array(); |
| 3120 | + |
| 3121 | +/** @see $wgGroupsAddToSelf */ |
1519 | 3122 | $wgGroupsRemoveFromSelf = array(); |
1520 | 3123 | |
1521 | 3124 | /** |
— | — | @@ -1531,8 +3134,8 @@ |
1532 | 3135 | * permission by manipulating this array. The ordering of elements |
1533 | 3136 | * dictates the order on the protection form's lists. |
1534 | 3137 | * |
1535 | | - * '' will be ignored (i.e. unprotected) |
1536 | | - * 'sysop' is quietly rewritten to 'protect' for backwards compatibility |
| 3138 | + * - '' will be ignored (i.e. unprotected) |
| 3139 | + * - 'sysop' is quietly rewritten to 'protect' for backwards compatibility |
1537 | 3140 | */ |
1538 | 3141 | $wgRestrictionLevels = array( '', 'autoconfirmed', 'sysop' ); |
1539 | 3142 | |
— | — | @@ -1554,24 +3157,32 @@ |
1555 | 3158 | $wgNonincludableNamespaces = array(); |
1556 | 3159 | |
1557 | 3160 | /** |
1558 | | - * Number of seconds an account is required to age before |
1559 | | - * it's given the implicit 'autoconfirm' group membership. |
1560 | | - * This can be used to limit privileges of new accounts. |
| 3161 | + * Number of seconds an account is required to age before it's given the |
| 3162 | + * implicit 'autoconfirm' group membership. This can be used to limit |
| 3163 | + * privileges of new accounts. |
1561 | 3164 | * |
1562 | | - * Accounts created by earlier versions of the software |
1563 | | - * may not have a recorded creation date, and will always |
1564 | | - * be considered to pass the age test. |
| 3165 | + * Accounts created by earlier versions of the software may not have a |
| 3166 | + * recorded creation date, and will always be considered to pass the age test. |
1565 | 3167 | * |
1566 | 3168 | * When left at 0, all registered accounts will pass. |
| 3169 | + * |
| 3170 | + * Example: |
| 3171 | + * <code> |
| 3172 | + * $wgAutoConfirmAge = 600; // ten minutes |
| 3173 | + * $wgAutoConfirmAge = 3600*24; // one day |
| 3174 | + * </code> |
1567 | 3175 | */ |
1568 | 3176 | $wgAutoConfirmAge = 0; |
1569 | | -//$wgAutoConfirmAge = 600; // ten minutes |
1570 | | -//$wgAutoConfirmAge = 3600*24; // one day |
1571 | 3177 | |
1572 | | -# Number of edits an account requires before it is autoconfirmed |
1573 | | -# Passing both this AND the time requirement is needed |
| 3178 | +/** |
| 3179 | + * Number of edits an account requires before it is autoconfirmed. |
| 3180 | + * Passing both this AND the time requirement is needed. Example: |
| 3181 | + * |
| 3182 | + * <code> |
| 3183 | + * $wgAutoConfirmCount = 50; |
| 3184 | + * </code> |
| 3185 | + */ |
1574 | 3186 | $wgAutoConfirmCount = 0; |
1575 | | -//$wgAutoConfirmCount = 50; |
1576 | 3187 | |
1577 | 3188 | /** |
1578 | 3189 | * Automatically add a usergroup to any user who matches certain conditions. |
— | — | @@ -1600,9 +3211,10 @@ |
1601 | 3212 | ); |
1602 | 3213 | |
1603 | 3214 | /** |
1604 | | - * These settings can be used to give finer control over who can assign which |
1605 | | - * groups at Special:Userrights. Example configuration: |
| 3215 | + * $wgAddGroups and $wgRemoveGroups can be used to give finer control over who |
| 3216 | + * can assign which groups at Special:Userrights. Example configuration: |
1606 | 3217 | * |
| 3218 | + * @code |
1607 | 3219 | * // Bureaucrat can add any group |
1608 | 3220 | * $wgAddGroups['bureaucrat'] = true; |
1609 | 3221 | * // Bureaucrats can only remove bots and sysops |
— | — | @@ -1611,8 +3223,10 @@ |
1612 | 3224 | * $wgAddGroups['sysop'] = array( 'bot' ); |
1613 | 3225 | * // Sysops can disable other sysops in an emergency, and disable bots |
1614 | 3226 | * $wgRemoveGroups['sysop'] = array( 'sysop', 'bot' ); |
| 3227 | + * @endcode |
1615 | 3228 | */ |
1616 | 3229 | $wgAddGroups = array(); |
| 3230 | +/** @see $wgAddGroups */ |
1617 | 3231 | $wgRemoveGroups = array(); |
1618 | 3232 | |
1619 | 3233 | /** |
— | — | @@ -1627,217 +3241,176 @@ |
1628 | 3242 | */ |
1629 | 3243 | $wgDeleteRevisionsLimit = 0; |
1630 | 3244 | |
1631 | | -# Proxy scanner settings |
1632 | | -# |
| 3245 | +/** Number of accounts each IP address may create, 0 to disable. |
| 3246 | + * Requires memcached */ |
| 3247 | +$wgAccountCreationThrottle = 0; |
1633 | 3248 | |
1634 | 3249 | /** |
1635 | | - * If you enable this, every editor's IP address will be scanned for open HTTP |
1636 | | - * proxies. |
| 3250 | + * Edits matching these regular expressions in body text |
| 3251 | + * will be recognised as spam and rejected automatically. |
1637 | 3252 | * |
1638 | | - * Don't enable this. Many sysops will report "hostile TCP port scans" to your |
1639 | | - * ISP and ask for your server to be shut down. |
| 3253 | + * There's no administrator override on-wiki, so be careful what you set. :) |
| 3254 | + * May be an array of regexes or a single string for backwards compatibility. |
1640 | 3255 | * |
1641 | | - * You have been warned. |
| 3256 | + * See http://en.wikipedia.org/wiki/Regular_expression |
| 3257 | + * Note that each regex needs a beginning/end delimiter, eg: # or / |
1642 | 3258 | */ |
1643 | | -$wgBlockOpenProxies = false; |
1644 | | -/** Port we want to scan for a proxy */ |
1645 | | -$wgProxyPorts = array( 80, 81, 1080, 3128, 6588, 8000, 8080, 8888, 65506 ); |
1646 | | -/** Script used to scan */ |
1647 | | -$wgProxyScriptPath = "$IP/includes/proxy_check.php"; |
1648 | | -/** */ |
1649 | | -$wgProxyMemcExpiry = 86400; |
1650 | | -/** This should always be customised in LocalSettings.php */ |
1651 | | -$wgSecretKey = false; |
1652 | | -/** big list of banned IP addresses, in the keys not the values */ |
1653 | | -$wgProxyList = array(); |
1654 | | -/** deprecated */ |
1655 | | -$wgProxyKey = false; |
| 3259 | +$wgSpamRegex = array(); |
1656 | 3260 | |
1657 | | -/** Number of accounts each IP address may create, 0 to disable. |
1658 | | - * Requires memcached */ |
1659 | | -$wgAccountCreationThrottle = 0; |
| 3261 | +/** Same as the above except for edit summaries */ |
| 3262 | +$wgSummarySpamRegex = array(); |
1660 | 3263 | |
1661 | | -# Client-side caching: |
| 3264 | +/** |
| 3265 | + * Similarly you can get a function to do the job. The function will be given |
| 3266 | + * the following args: |
| 3267 | + * - a Title object for the article the edit is made on |
| 3268 | + * - the text submitted in the textarea (wpTextbox1) |
| 3269 | + * - the section number. |
| 3270 | + * The return should be boolean indicating whether the edit matched some evilness: |
| 3271 | + * - true : block it |
| 3272 | + * - false : let it through |
| 3273 | + * |
| 3274 | + * @deprecated Use hooks. See SpamBlacklist extension. |
| 3275 | + */ |
| 3276 | +$wgFilterCallback = false; |
1662 | 3277 | |
1663 | | -/** Allow client-side caching of pages */ |
1664 | | -$wgCachePages = true; |
| 3278 | +/** |
| 3279 | + * Whether to use DNS blacklists in $wgDnsBlacklistUrls to check for open proxies |
| 3280 | + * @since 1.16 |
| 3281 | + */ |
| 3282 | +$wgEnableDnsBlacklist = false; |
1665 | 3283 | |
1666 | 3284 | /** |
1667 | | - * Set this to current time to invalidate all prior cached pages. Affects both |
1668 | | - * client- and server-side caching. |
1669 | | - * You can get the current date on your server by using the command: |
1670 | | - * date +%Y%m%d%H%M%S |
| 3285 | + * @deprecated Use $wgEnableDnsBlacklist instead, only kept for backward |
| 3286 | + * compatibility |
1671 | 3287 | */ |
1672 | | -$wgCacheEpoch = '20030516000000'; |
| 3288 | +$wgEnableSorbs = false; |
1673 | 3289 | |
1674 | 3290 | /** |
1675 | | - * Bump this number when changing the global style sheets and JavaScript. |
1676 | | - * It should be appended in the query string of static CSS and JS includes, |
1677 | | - * to ensure that client-side caches do not keep obsolete copies of global |
1678 | | - * styles. |
| 3291 | + * List of DNS blacklists to use, if $wgEnableDnsBlacklist is true |
| 3292 | + * @since 1.16 |
1679 | 3293 | */ |
1680 | | -$wgStyleVersion = '287'; |
| 3294 | +$wgDnsBlacklistUrls = array( 'http.dnsbl.sorbs.net.' ); |
1681 | 3295 | |
| 3296 | +/** |
| 3297 | + * @deprecated Use $wgDnsBlacklistUrls instead, only kept for backward |
| 3298 | + * compatibility |
| 3299 | + */ |
| 3300 | +$wgSorbsUrl = array(); |
1682 | 3301 | |
1683 | | -# Server-side caching: |
1684 | | - |
1685 | 3302 | /** |
1686 | | - * This will cache static pages for non-logged-in users to reduce |
1687 | | - * database traffic on public sites. |
1688 | | - * Must set $wgShowIPinHeader = false |
| 3303 | + * Proxy whitelist, list of addresses that are assumed to be non-proxy despite |
| 3304 | + * what the other methods might say. |
1689 | 3305 | */ |
1690 | | -$wgUseFileCache = false; |
| 3306 | +$wgProxyWhitelist = array(); |
1691 | 3307 | |
1692 | | -/** Directory where the cached page will be saved */ |
1693 | | -$wgFileCacheDirectory = false; ///< defaults to "$wgCacheDirectory/html"; |
1694 | | - |
1695 | 3308 | /** |
1696 | | - * When using the file cache, we can store the cached HTML gzipped to save disk |
1697 | | - * space. Pages will then also be served compressed to clients that support it. |
1698 | | - * THIS IS NOT COMPATIBLE with ob_gzhandler which is now enabled if supported in |
1699 | | - * the default LocalSettings.php! If you enable this, remove that setting first. |
| 3309 | + * Simple rate limiter options to brake edit floods. Maximum number actions |
| 3310 | + * allowed in the given number of seconds; after that the violating client re- |
| 3311 | + * ceives HTTP 500 error pages until the period elapses. |
1700 | 3312 | * |
1701 | | - * Requires zlib support enabled in PHP. |
| 3313 | + * array( 4, 60 ) for a maximum of 4 hits in 60 seconds. |
| 3314 | + * |
| 3315 | + * This option set is experimental and likely to change. Requires memcached. |
1702 | 3316 | */ |
1703 | | -$wgUseGzip = false; |
| 3317 | +$wgRateLimits = array( |
| 3318 | + 'edit' => array( |
| 3319 | + 'anon' => null, // for any and all anonymous edits (aggregate) |
| 3320 | + 'user' => null, // for each logged-in user |
| 3321 | + 'newbie' => null, // for each recent (autoconfirmed) account; overrides 'user' |
| 3322 | + 'ip' => null, // for each anon and recent account |
| 3323 | + 'subnet' => null, // ... with final octet removed |
| 3324 | + ), |
| 3325 | + 'move' => array( |
| 3326 | + 'user' => null, |
| 3327 | + 'newbie' => null, |
| 3328 | + 'ip' => null, |
| 3329 | + 'subnet' => null, |
| 3330 | + ), |
| 3331 | + 'mailpassword' => array( |
| 3332 | + 'anon' => null, |
| 3333 | + ), |
| 3334 | + 'emailuser' => array( |
| 3335 | + 'user' => null, |
| 3336 | + ), |
| 3337 | + ); |
1704 | 3338 | |
1705 | | -/** Whether MediaWiki should send an ETag header */ |
1706 | | -$wgUseETag = false; |
1707 | | - |
1708 | | -# Email notification settings |
1709 | | -# |
1710 | | - |
1711 | | -/** For email notification on page changes */ |
1712 | | -$wgPasswordSender = $wgEmergencyContact; |
1713 | | - |
1714 | | -# true: from page editor if s/he opted-in |
1715 | | -# false: Enotif mails appear to come from $wgEmergencyContact |
1716 | | -$wgEnotifFromEditor = false; |
1717 | | - |
1718 | | -// TODO move UPO to preferences probably ? |
1719 | | -# If set to true, users get a corresponding option in their preferences and can choose to enable or disable at their discretion |
1720 | | -# If set to false, the corresponding input form on the user preference page is suppressed |
1721 | | -# It call this to be a "user-preferences-option (UPO)" |
1722 | | -$wgEmailAuthentication = true; # UPO (if this is set to false, texts referring to authentication are suppressed) |
1723 | | -$wgEnotifWatchlist = false; # UPO |
1724 | | -$wgEnotifUserTalk = false; # UPO |
1725 | | -$wgEnotifRevealEditorAddress = false; # UPO; reply-to address may be filled with page editor's address (if user allowed this in the preferences) |
1726 | | -$wgEnotifMinorEdits = true; # UPO; false: "minor edits" on pages do not trigger notification mails. |
1727 | | -# # Attention: _every_ change on a user_talk page trigger a notification mail (if the user is not yet notified) |
1728 | | - |
1729 | | -# Send a generic mail instead of a personalised mail for each user. This |
1730 | | -# always uses UTC as the time zone, and doesn't include the username. |
1731 | | -# |
1732 | | -# For pages with many users watching, this can significantly reduce mail load. |
1733 | | -# Has no effect when using sendmail rather than SMTP; |
1734 | | - |
1735 | | -$wgEnotifImpersonal = false; |
1736 | | - |
1737 | | -# Maximum number of users to mail at once when using impersonal mail. Should |
1738 | | -# match the limit on your mail server. |
1739 | | -$wgEnotifMaxRecips = 500; |
1740 | | - |
1741 | | -# Send mails via the job queue. |
1742 | | -$wgEnotifUseJobQ = false; |
1743 | | - |
1744 | | -# Use real name instead of username in e-mail "from" field |
1745 | | -$wgEnotifUseRealName = false; |
1746 | | - |
1747 | 3339 | /** |
1748 | | - * Array of usernames who will be sent a notification email for every change which occurs on a wiki |
| 3340 | + * Set to a filename to log rate limiter hits. |
1749 | 3341 | */ |
1750 | | -$wgUsersNotifiedOnAllChanges = array(); |
| 3342 | +$wgRateLimitLog = null; |
1751 | 3343 | |
1752 | | -/** Show watching users in recent changes, watchlist and page history views */ |
1753 | | -$wgRCShowWatchingUsers = false; # UPO |
1754 | | -/** Show watching users in Page views */ |
1755 | | -$wgPageShowWatchingUsers = false; |
1756 | | -/** Show the amount of changed characters in recent changes */ |
1757 | | -$wgRCShowChangedSize = true; |
1758 | | - |
1759 | 3344 | /** |
1760 | | - * If the difference between the character counts of the text |
1761 | | - * before and after the edit is below that value, the value will be |
1762 | | - * highlighted on the RC page. |
| 3345 | + * Array of groups which should never trigger the rate limiter |
| 3346 | + * |
| 3347 | + * @deprecated as of 1.13.0, the preferred method is using |
| 3348 | + * $wgGroupPermissions[]['noratelimit']. However, this will still |
| 3349 | + * work if desired. |
| 3350 | + * |
| 3351 | + * $wgRateLimitsExcludedGroups = array( 'sysop', 'bureaucrat' ); |
1763 | 3352 | */ |
1764 | | -$wgRCChangedSizeThreshold = 500; |
| 3353 | +$wgRateLimitsExcludedGroups = array(); |
1765 | 3354 | |
1766 | 3355 | /** |
1767 | | - * Show "Updated (since my last visit)" marker in RC view, watchlist and history |
1768 | | - * view for watched pages with new changes */ |
1769 | | -$wgShowUpdatedMarker = true; |
1770 | | - |
1771 | | -/** |
1772 | | - * Default cookie expiration time. Setting to 0 makes all cookies session-only. |
| 3356 | + * Array of IPs which should be excluded from rate limits. |
| 3357 | + * This may be useful for whitelisting NAT gateways for conferences, etc. |
1773 | 3358 | */ |
1774 | | -$wgCookieExpiration = 30*86400; |
| 3359 | +$wgRateLimitsExcludedIPs = array(); |
1775 | 3360 | |
1776 | | -/** Clock skew or the one-second resolution of time() can occasionally cause cache |
1777 | | - * problems when the user requests two pages within a short period of time. This |
1778 | | - * variable adds a given number of seconds to vulnerable timestamps, thereby giving |
1779 | | - * a grace period. |
| 3361 | +/** |
| 3362 | + * Log IP addresses in the recentchanges table; can be accessed only by |
| 3363 | + * extensions (e.g. CheckUser) or a DB admin |
1780 | 3364 | */ |
1781 | | -$wgClockSkewFudge = 5; |
| 3365 | +$wgPutIPinRC = true; |
1782 | 3366 | |
1783 | | -# Squid-related settings |
1784 | | -# |
1785 | | - |
1786 | | -/** Enable/disable Squid */ |
1787 | | -$wgUseSquid = false; |
1788 | | - |
1789 | | -/** If you run Squid3 with ESI support, enable this (default:false): */ |
1790 | | -$wgUseESI = false; |
1791 | | - |
1792 | | -/** Send X-Vary-Options header for better caching (requires patched Squid) */ |
1793 | | -$wgUseXVO = false; |
1794 | | - |
1795 | | -/** Internal server name as known to Squid, if different */ |
1796 | | -# $wgInternalServer = 'http://yourinternal.tld:8000'; |
1797 | | -$wgInternalServer = $wgServer; |
1798 | | - |
1799 | 3367 | /** |
1800 | | - * Cache timeout for the squid, will be sent as s-maxage (without ESI) or |
1801 | | - * Surrogate-Control (with ESI). Without ESI, you should strip out s-maxage in |
1802 | | - * the Squid config. 18000 seconds = 5 hours, more cache hits with 2678400 = 31 |
1803 | | - * days |
| 3368 | + * Limit password attempts to X attempts per Y seconds per IP per account. |
| 3369 | + * Requires memcached. |
1804 | 3370 | */ |
1805 | | -$wgSquidMaxage = 18000; |
| 3371 | +$wgPasswordAttemptThrottle = array( 'count' => 5, 'seconds' => 300 ); |
1806 | 3372 | |
1807 | | -/** |
1808 | | - * Default maximum age for raw CSS/JS accesses |
| 3373 | +/** @} */ # end of user rights settings |
| 3374 | + |
| 3375 | +/************************************************************************//** |
| 3376 | + * @name Proxy scanner settings |
| 3377 | + * @{ |
1809 | 3378 | */ |
1810 | | -$wgForcedRawSMaxage = 300; |
1811 | 3379 | |
1812 | 3380 | /** |
1813 | | - * List of proxy servers to purge on changes; default port is 80. Use IP addresses. |
| 3381 | + * If you enable this, every editor's IP address will be scanned for open HTTP |
| 3382 | + * proxies. |
1814 | 3383 | * |
1815 | | - * When MediaWiki is running behind a proxy, it will trust X-Forwarded-For |
1816 | | - * headers sent/modified from these proxies when obtaining the remote IP address |
| 3384 | + * Don't enable this. Many sysops will report "hostile TCP port scans" to your |
| 3385 | + * ISP and ask for your server to be shut down. |
1817 | 3386 | * |
1818 | | - * For a list of trusted servers which *aren't* purged, see $wgSquidServersNoPurge. |
| 3387 | + * You have been warned. |
1819 | 3388 | */ |
1820 | | -$wgSquidServers = array(); |
| 3389 | +$wgBlockOpenProxies = false; |
| 3390 | +/** Port we want to scan for a proxy */ |
| 3391 | +$wgProxyPorts = array( 80, 81, 1080, 3128, 6588, 8000, 8080, 8888, 65506 ); |
| 3392 | +/** Script used to scan */ |
| 3393 | +$wgProxyScriptPath = "$IP/includes/proxy_check.php"; |
| 3394 | +/** */ |
| 3395 | +$wgProxyMemcExpiry = 86400; |
| 3396 | +/** This should always be customised in LocalSettings.php */ |
| 3397 | +$wgSecretKey = false; |
| 3398 | +/** big list of banned IP addresses, in the keys not the values */ |
| 3399 | +$wgProxyList = array(); |
| 3400 | +/** deprecated */ |
| 3401 | +$wgProxyKey = false; |
1821 | 3402 | |
| 3403 | +/** @} */ # end of proxy scanner settings |
| 3404 | + |
| 3405 | +/************************************************************************//** |
| 3406 | + * @name Cookie settings |
| 3407 | + * @{ |
| 3408 | + */ |
| 3409 | + |
1822 | 3410 | /** |
1823 | | - * As above, except these servers aren't purged on page changes; use to set a |
1824 | | - * list of trusted proxies, etc. |
| 3411 | + * Default cookie expiration time. Setting to 0 makes all cookies session-only. |
1825 | 3412 | */ |
1826 | | -$wgSquidServersNoPurge = array(); |
| 3413 | +$wgCookieExpiration = 30*86400; |
1827 | 3414 | |
1828 | | -/** Maximum number of titles to purge in any one client operation */ |
1829 | | -$wgMaxSquidPurgeTitles = 400; |
1830 | | - |
1831 | | -/** HTCP multicast purging */ |
1832 | | -$wgHTCPPort = 4827; |
1833 | | -$wgHTCPMulticastTTL = 1; |
1834 | | -# $wgHTCPMulticastAddress = "224.0.0.85"; |
1835 | | -$wgHTCPMulticastAddress = false; |
1836 | | - |
1837 | | -/** Should forwarded Private IPs be accepted? */ |
1838 | | -$wgUsePrivateIPs = false; |
1839 | | - |
1840 | | -# Cookie settings: |
1841 | | -# |
1842 | 3415 | /** |
1843 | 3416 | * Set to set an explicit domain on the login cookies eg, "justthis.domain. org" |
1844 | 3417 | * or ".any.subdomain.net" |
— | — | @@ -1879,78 +3452,14 @@ |
1880 | 3453 | /** Override to customise the session name */ |
1881 | 3454 | $wgSessionName = false; |
1882 | 3455 | |
1883 | | -/** Whether to allow inline image pointing to other websites */ |
1884 | | -$wgAllowExternalImages = false; |
| 3456 | +/** @} */ # end of cookie settings } |
1885 | 3457 | |
1886 | | -/** If the above is false, you can specify an exception here. Image URLs |
1887 | | - * that start with this string are then rendered, while all others are not. |
1888 | | - * You can use this to set up a trusted, simple repository of images. |
1889 | | - * You may also specify an array of strings to allow multiple sites |
1890 | | - * |
1891 | | - * Examples: |
1892 | | - * $wgAllowExternalImagesFrom = 'http://127.0.0.1/'; |
1893 | | - * $wgAllowExternalImagesFrom = array( 'http://127.0.0.1/', 'http://example.com' ); |
1894 | | - */ |
1895 | | -$wgAllowExternalImagesFrom = ''; |
1896 | | - |
1897 | | -/** If $wgAllowExternalImages is false, you can allow an on-wiki |
1898 | | - * whitelist of regular expression fragments to match the image URL |
1899 | | - * against. If the image matches one of the regular expression fragments, |
1900 | | - * The image will be displayed. |
1901 | | - * |
1902 | | - * Set this to true to enable the on-wiki whitelist (MediaWiki:External image whitelist) |
1903 | | - * Or false to disable it |
| 3458 | +/************************************************************************//** |
| 3459 | + * @name LaTeX (mathematical formulas) |
| 3460 | + * @{ |
1904 | 3461 | */ |
1905 | | -$wgEnableImageWhitelist = true; |
1906 | 3462 | |
1907 | 3463 | /** |
1908 | | - * A different approach to the above: simply allow the <img> tag to be used. |
1909 | | - * This allows you to specify alt text and other attributes, copy-paste HTML to |
1910 | | - * your wiki more easily, etc. However, allowing external images in any manner |
1911 | | - * will allow anyone with editing rights to snoop on your visitors' IP |
1912 | | - * addresses and so forth, if they wanted to, by inserting links to images on |
1913 | | - * sites they control. |
1914 | | - */ |
1915 | | -$wgAllowImageTag = false; |
1916 | | - |
1917 | | -/** Allows to move images and other media files */ |
1918 | | -$wgAllowImageMoving = true; |
1919 | | - |
1920 | | -/** Disable database-intensive features */ |
1921 | | -$wgMiserMode = false; |
1922 | | -/** Disable all query pages if miser mode is on, not just some */ |
1923 | | -$wgDisableQueryPages = false; |
1924 | | -/** Number of rows to cache in 'querycache' table when miser mode is on */ |
1925 | | -$wgQueryCacheLimit = 1000; |
1926 | | -/** Number of links to a page required before it is deemed "wanted" */ |
1927 | | -$wgWantedPagesThreshold = 1; |
1928 | | -/** Enable slow parser functions */ |
1929 | | -$wgAllowSlowParserFunctions = false; |
1930 | | - |
1931 | | -/** |
1932 | | - * Maps jobs to their handling classes; extensions |
1933 | | - * can add to this to provide custom jobs |
1934 | | - */ |
1935 | | -$wgJobClasses = array( |
1936 | | - 'refreshLinks' => 'RefreshLinksJob', |
1937 | | - 'refreshLinks2' => 'RefreshLinksJob2', |
1938 | | - 'htmlCacheUpdate' => 'HTMLCacheUpdateJob', |
1939 | | - 'html_cache_update' => 'HTMLCacheUpdateJob', // backwards-compatible |
1940 | | - 'sendMail' => 'EmaillingJob', |
1941 | | - 'enotifNotify' => 'EnotifNotifyJob', |
1942 | | - 'fixDoubleRedirect' => 'DoubleRedirectJob', |
1943 | | - 'uploadFromUrl' => 'UploadFromUrlJob', |
1944 | | -); |
1945 | | - |
1946 | | -/** |
1947 | | - * Additional functions to be performed with updateSpecialPages. |
1948 | | - * Expensive Querypages are already updated. |
1949 | | - */ |
1950 | | -$wgSpecialPageCacheUpdates = array( |
1951 | | - 'Statistics' => array('SiteStatsUpdate','cacheUpdate') |
1952 | | -); |
1953 | | - |
1954 | | -/** |
1955 | 3464 | * To use inline TeX, you need to compile 'texvc' (in the 'math' subdirectory of |
1956 | 3465 | * the MediaWiki package and have latex, dvips, gs (ghostscript), andconvert |
1957 | 3466 | * (ImageMagick) installed and available in the PATH. |
— | — | @@ -1980,31 +3489,164 @@ |
1981 | 3490 | */ |
1982 | 3491 | $wgMathCheckFiles = true; |
1983 | 3492 | |
1984 | | -# |
1985 | | -# Profiling / debugging |
1986 | | -# |
1987 | | -# You have to create a 'profiling' table in your database before using |
1988 | | -# profiling see maintenance/archives/patch-profiling.sql . |
1989 | | -# |
1990 | | -# To enable profiling, edit StartProfiler.php |
| 3493 | +/* @} */ # end LaTeX } |
1991 | 3494 | |
| 3495 | +/************************************************************************//** |
| 3496 | + * @name Profiling, testing and debugging |
| 3497 | + * |
| 3498 | + * To enable profiling, edit StartProfiler.php |
| 3499 | + * |
| 3500 | + * @{ |
| 3501 | + */ |
| 3502 | + |
| 3503 | +/** |
| 3504 | + * Filename for debug logging. See http://www.mediawiki.org/wiki/How_to_debug |
| 3505 | + * The debug log file should be not be publicly accessible if it is used, as it |
| 3506 | + * may contain private data. |
| 3507 | + */ |
| 3508 | +$wgDebugLogFile = ''; |
| 3509 | + |
| 3510 | +/** |
| 3511 | + * Prefix for debug log lines |
| 3512 | + */ |
| 3513 | +$wgDebugLogPrefix = ''; |
| 3514 | + |
| 3515 | +/** |
| 3516 | + * If true, instead of redirecting, show a page with a link to the redirect |
| 3517 | + * destination. This allows for the inspection of PHP error messages, and easy |
| 3518 | + * resubmission of form data. For developer use only. |
| 3519 | + */ |
| 3520 | +$wgDebugRedirects = false; |
| 3521 | + |
| 3522 | +/** |
| 3523 | + * If true, log debugging data from action=raw. |
| 3524 | + * This is normally false to avoid overlapping debug entries due to gen=css and |
| 3525 | + * gen=js requests. |
| 3526 | + */ |
| 3527 | +$wgDebugRawPage = false; |
| 3528 | + |
| 3529 | +/** |
| 3530 | + * Send debug data to an HTML comment in the output. |
| 3531 | + * |
| 3532 | + * This may occasionally be useful when supporting a non-technical end-user. It's |
| 3533 | + * more secure than exposing the debug log file to the web, since the output only |
| 3534 | + * contains private data for the current user. But it's not ideal for development |
| 3535 | + * use since data is lost on fatal errors and redirects. |
| 3536 | + */ |
| 3537 | +$wgDebugComments = false; |
| 3538 | + |
| 3539 | +/** |
| 3540 | + * Write SQL queries to the debug log |
| 3541 | + */ |
| 3542 | +$wgDebugDumpSql = false; |
| 3543 | + |
| 3544 | +/** |
| 3545 | + * Set to an array of log group keys to filenames. |
| 3546 | + * If set, wfDebugLog() output for that group will go to that file instead |
| 3547 | + * of the regular $wgDebugLogFile. Useful for enabling selective logging |
| 3548 | + * in production. |
| 3549 | + */ |
| 3550 | +$wgDebugLogGroups = array(); |
| 3551 | + |
| 3552 | +/** |
| 3553 | + * Display debug data at the bottom of the main content area. |
| 3554 | + * |
| 3555 | + * Useful for developers and technical users trying to working on a closed wiki. |
| 3556 | + */ |
| 3557 | +$wgShowDebug = false; |
| 3558 | + |
| 3559 | +/** |
| 3560 | + * Prefix debug messages with relative timestamp. Very-poor man's profiler. |
| 3561 | + */ |
| 3562 | +$wgDebugTimestamps = false; |
| 3563 | + |
| 3564 | +/** |
| 3565 | + * Print HTTP headers for every request in the debug information. |
| 3566 | + */ |
| 3567 | +$wgDebugPrintHttpHeaders = true; |
| 3568 | + |
| 3569 | +/** |
| 3570 | + * Show the contents of $wgHooks in Special:Version |
| 3571 | + */ |
| 3572 | +$wgSpecialVersionShowHooks = false; |
| 3573 | + |
| 3574 | +/** |
| 3575 | + * Whether to show "we're sorry, but there has been a database error" pages. |
| 3576 | + * Displaying errors aids in debugging, but may display information useful |
| 3577 | + * to an attacker. |
| 3578 | + */ |
| 3579 | +$wgShowSQLErrors = false; |
| 3580 | + |
| 3581 | +/** |
| 3582 | + * If true, some error messages will be colorized when running scripts on the |
| 3583 | + * command line; this can aid picking important things out when debugging. |
| 3584 | + * Ignored when running on Windows or when output is redirected to a file. |
| 3585 | + */ |
| 3586 | +$wgColorErrors = true; |
| 3587 | + |
| 3588 | +/** |
| 3589 | + * If set to true, uncaught exceptions will print a complete stack trace |
| 3590 | + * to output. This should only be used for debugging, as it may reveal |
| 3591 | + * private information in function parameters due to PHP's backtrace |
| 3592 | + * formatting. |
| 3593 | + */ |
| 3594 | +$wgShowExceptionDetails = false; |
| 3595 | + |
| 3596 | +/** |
| 3597 | + * If true, show a backtrace for database errors |
| 3598 | + */ |
| 3599 | +$wgShowDBErrorBacktrace = false; |
| 3600 | + |
| 3601 | +/** |
| 3602 | + * Expose backend server host names through the API and various HTML comments |
| 3603 | + */ |
| 3604 | +$wgShowHostnames = false; |
| 3605 | + |
| 3606 | +/** |
| 3607 | + * If set to true MediaWiki will throw notices for some possible error |
| 3608 | + * conditions and for deprecated functions. |
| 3609 | + */ |
| 3610 | +$wgDevelopmentWarnings = false; |
| 3611 | + |
1992 | 3612 | /** Only record profiling info for pages that took longer than this */ |
1993 | 3613 | $wgProfileLimit = 0.0; |
| 3614 | + |
1994 | 3615 | /** Don't put non-profiling info into log file */ |
1995 | 3616 | $wgProfileOnly = false; |
1996 | | -/** Log sums from profiling into "profiling" table in db. */ |
| 3617 | + |
| 3618 | +/** |
| 3619 | + * Log sums from profiling into "profiling" table in db. |
| 3620 | + * |
| 3621 | + * You have to create a 'profiling' table in your database before using |
| 3622 | + * this feature, see maintenance/archives/patch-profiling.sql |
| 3623 | + * |
| 3624 | + * To enable profiling, edit StartProfiler.php |
| 3625 | + */ |
1997 | 3626 | $wgProfileToDatabase = false; |
| 3627 | + |
1998 | 3628 | /** If true, print a raw call tree instead of per-function report */ |
1999 | 3629 | $wgProfileCallTree = false; |
| 3630 | + |
2000 | 3631 | /** Should application server host be put into profiling table */ |
2001 | 3632 | $wgProfilePerHost = false; |
2002 | 3633 | |
2003 | | -/** Settings for UDP profiler */ |
| 3634 | +/** |
| 3635 | + * Host for UDP profiler. |
| 3636 | + * |
| 3637 | + * The host should be running a daemon which can be obtained from MediaWiki |
| 3638 | + * Subversion at: http://svn.wikimedia.org/svnroot/mediawiki/trunk/udpprofile |
| 3639 | + */ |
2004 | 3640 | $wgUDPProfilerHost = '127.0.0.1'; |
| 3641 | + |
| 3642 | +/** |
| 3643 | + * Port for UDP profiler. |
| 3644 | + * @see $wgUDPProfilerHost |
| 3645 | + */ |
2005 | 3646 | $wgUDPProfilerPort = '3811'; |
2006 | 3647 | |
2007 | 3648 | /** Detects non-matching wfProfileIn/wfProfileOut calls */ |
2008 | 3649 | $wgDebugProfiling = false; |
| 3650 | + |
2009 | 3651 | /** Output debug message on every wfProfileIn/wfProfileOut */ |
2010 | 3652 | $wgDebugFunctionEntry = 0; |
2011 | 3653 | |
— | — | @@ -2021,10 +3663,59 @@ |
2022 | 3664 | */ |
2023 | 3665 | $wgDisableCounters = false; |
2024 | 3666 | |
| 3667 | +/** |
| 3668 | + * Support blog-style "trackbacks" for articles. See |
| 3669 | + * http://www.sixapart.com/pronet/docs/trackback_spec for details. |
| 3670 | + */ |
| 3671 | +$wgUseTrackbacks = false; |
| 3672 | + |
| 3673 | +/** |
| 3674 | + * Parser test suite files to be run by parserTests.php when no specific |
| 3675 | + * filename is passed to it. |
| 3676 | + * |
| 3677 | + * Extensions may add their own tests to this array, or site-local tests |
| 3678 | + * may be added via LocalSettings.php |
| 3679 | + * |
| 3680 | + * Use full paths. |
| 3681 | + */ |
| 3682 | +$wgParserTestFiles = array( |
| 3683 | + "$IP/maintenance/parserTests.txt", |
| 3684 | + "$IP/maintenance/ExtraParserTests.txt" |
| 3685 | +); |
| 3686 | + |
| 3687 | +/** |
| 3688 | + * If configured, specifies target CodeReview installation to send test |
| 3689 | + * result data from 'parserTests.php --upload' |
| 3690 | + * |
| 3691 | + * Something like this: |
| 3692 | + * $wgParserTestRemote = array( |
| 3693 | + * 'api-url' => 'http://www.mediawiki.org/w/api.php', |
| 3694 | + * 'repo' => 'MediaWiki', |
| 3695 | + * 'suite' => 'ParserTests', |
| 3696 | + * 'path' => '/trunk/phase3', // not used client-side; for reference |
| 3697 | + * 'secret' => 'qmoicj3mc4mcklmqw', // Shared secret used in HMAC validation |
| 3698 | + * ); |
| 3699 | + */ |
| 3700 | +$wgParserTestRemote = false; |
| 3701 | + |
| 3702 | +/** @} */ # end of profiling, testing and debugging } |
| 3703 | + |
| 3704 | +/************************************************************************//** |
| 3705 | + * @name Search |
| 3706 | + * @{ |
| 3707 | + */ |
| 3708 | + |
| 3709 | +/** |
| 3710 | + * Set this to true to disable the full text search feature. |
| 3711 | + */ |
2025 | 3712 | $wgDisableTextSearch = false; |
| 3713 | + |
| 3714 | +/** |
| 3715 | + * Set this to true to disable the context which appears on search result pages. |
| 3716 | + * Search context can cause a high DB load. |
| 3717 | + */ |
2026 | 3718 | $wgDisableSearchContext = false; |
2027 | 3719 | |
2028 | | - |
2029 | 3720 | /** |
2030 | 3721 | * Set to true to have nicer highligted text in search results, |
2031 | 3722 | * by default off due to execution overhead |
— | — | @@ -2093,149 +3784,15 @@ |
2094 | 3785 | * table. If you ever re-enable, be sure to rebuild the search table. |
2095 | 3786 | */ |
2096 | 3787 | $wgDisableSearchUpdate = false; |
2097 | | -/** Uploads have to be specially set up to be secure */ |
2098 | | -$wgEnableUploads = false; |
| 3788 | + |
2099 | 3789 | /** |
2100 | | - * Show EXIF data, on by default if available. |
2101 | | - * Requires PHP's EXIF extension: http://www.php.net/manual/en/ref.exif.php |
| 3790 | + * List of namespaces which are searched by default. Example: |
2102 | 3791 | * |
2103 | | - * NOTE FOR WINDOWS USERS: |
2104 | | - * To enable EXIF functions, add the folloing lines to the |
2105 | | - * "Windows extensions" section of php.ini: |
2106 | | - * |
2107 | | - * extension=extensions/php_mbstring.dll |
2108 | | - * extension=extensions/php_exif.dll |
| 3792 | + * <code> |
| 3793 | + * $wgNamespacesToBeSearchedDefault[NS_MAIN] = true; |
| 3794 | + * $wgNamespacesToBeSearchedDefault[NS_PROJECT] = true; |
| 3795 | + * </code> |
2109 | 3796 | */ |
2110 | | -$wgShowEXIF = function_exists( 'exif_read_data' ); |
2111 | | - |
2112 | | -/** |
2113 | | - * Set to true to enable the upload _link_ while local uploads are disabled. |
2114 | | - * Assumes that the special page link will be bounced to another server where |
2115 | | - * uploads do work. |
2116 | | - */ |
2117 | | -$wgRemoteUploads = false; |
2118 | | - |
2119 | | -/** |
2120 | | - * Disable links to talk pages of anonymous users (IPs) in listings on special |
2121 | | - * pages like page history, Special:Recentchanges, etc. |
2122 | | - */ |
2123 | | -$wgDisableAnonTalk = false; |
2124 | | -/** |
2125 | | - * Do DELETE/INSERT for link updates instead of incremental |
2126 | | - */ |
2127 | | -$wgUseDumbLinkUpdate = false; |
2128 | | - |
2129 | | -/** |
2130 | | - * Anti-lock flags - bitfield |
2131 | | - * ALF_PRELOAD_LINKS |
2132 | | - * Preload links during link update for save |
2133 | | - * ALF_PRELOAD_EXISTENCE |
2134 | | - * Preload cur_id during replaceLinkHolders |
2135 | | - * ALF_NO_LINK_LOCK |
2136 | | - * Don't use locking reads when updating the link table. This is |
2137 | | - * necessary for wikis with a high edit rate for performance |
2138 | | - * reasons, but may cause link table inconsistency |
2139 | | - * ALF_NO_BLOCK_LOCK |
2140 | | - * As for ALF_LINK_LOCK, this flag is a necessity for high-traffic |
2141 | | - * wikis. |
2142 | | - */ |
2143 | | -$wgAntiLockFlags = 0; |
2144 | | - |
2145 | | -/** |
2146 | | - * Path to the GNU diff3 utility. If the file doesn't exist, edit conflicts will |
2147 | | - * fall back to the old behaviour (no merging). |
2148 | | - */ |
2149 | | -$wgDiff3 = '/usr/bin/diff3'; |
2150 | | - |
2151 | | -/** |
2152 | | - * Path to the GNU diff utility. |
2153 | | - */ |
2154 | | -$wgDiff = '/usr/bin/diff'; |
2155 | | - |
2156 | | -/** |
2157 | | - * We can also compress text stored in the 'text' table. If this is set on, new |
2158 | | - * revisions will be compressed on page save if zlib support is available. Any |
2159 | | - * compressed revisions will be decompressed on load regardless of this setting |
2160 | | - * *but will not be readable at all* if zlib support is not available. |
2161 | | - */ |
2162 | | -$wgCompressRevisions = false; |
2163 | | - |
2164 | | -/** |
2165 | | - * This is the list of preferred extensions for uploading files. Uploading files |
2166 | | - * with extensions not in this list will trigger a warning. |
2167 | | - */ |
2168 | | -$wgFileExtensions = array( 'png', 'gif', 'jpg', 'jpeg' ); |
2169 | | - |
2170 | | -/** Files with these extensions will never be allowed as uploads. */ |
2171 | | -$wgFileBlacklist = array( |
2172 | | - # HTML may contain cookie-stealing JavaScript and web bugs |
2173 | | - 'html', 'htm', 'js', 'jsb', 'mhtml', 'mht', 'xhtml', 'xht', |
2174 | | - # PHP scripts may execute arbitrary code on the server |
2175 | | - 'php', 'phtml', 'php3', 'php4', 'php5', 'phps', |
2176 | | - # Other types that may be interpreted by some servers |
2177 | | - 'shtml', 'jhtml', 'pl', 'py', 'cgi', |
2178 | | - # May contain harmful executables for Windows victims |
2179 | | - 'exe', 'scr', 'dll', 'msi', 'vbs', 'bat', 'com', 'pif', 'cmd', 'vxd', 'cpl' ); |
2180 | | - |
2181 | | -/** Files with these mime types will never be allowed as uploads |
2182 | | - * if $wgVerifyMimeType is enabled. |
2183 | | - */ |
2184 | | -$wgMimeTypeBlacklist= array( |
2185 | | - # HTML may contain cookie-stealing JavaScript and web bugs |
2186 | | - 'text/html', 'text/javascript', 'text/x-javascript', 'application/x-shellscript', |
2187 | | - # PHP scripts may execute arbitrary code on the server |
2188 | | - 'application/x-php', 'text/x-php', |
2189 | | - # Other types that may be interpreted by some servers |
2190 | | - 'text/x-python', 'text/x-perl', 'text/x-bash', 'text/x-sh', 'text/x-csh', |
2191 | | - # Client-side hazards on Internet Explorer |
2192 | | - 'text/scriptlet', 'application/x-msdownload', |
2193 | | - # Windows metafile, client-side vulnerability on some systems |
2194 | | - 'application/x-msmetafile', |
2195 | | - # A ZIP file may be a valid Java archive containing an applet which exploits the |
2196 | | - # same-origin policy to steal cookies |
2197 | | - 'application/zip', |
2198 | | -); |
2199 | | - |
2200 | | -/** This is a flag to determine whether or not to check file extensions on upload. */ |
2201 | | -$wgCheckFileExtensions = true; |
2202 | | - |
2203 | | -/** |
2204 | | - * If this is turned off, users may override the warning for files not covered |
2205 | | - * by $wgFileExtensions. |
2206 | | - */ |
2207 | | -$wgStrictFileExtensions = true; |
2208 | | - |
2209 | | -/** Warn if uploaded files are larger than this (in bytes), or false to disable*/ |
2210 | | -$wgUploadSizeWarning = false; |
2211 | | - |
2212 | | -/** For compatibility with old installations set to false */ |
2213 | | -$wgPasswordSalt = true; |
2214 | | - |
2215 | | -/** Which namespaces should support subpages? |
2216 | | - * See Language.php for a list of namespaces. |
2217 | | - */ |
2218 | | -$wgNamespacesWithSubpages = array( |
2219 | | - NS_TALK => true, |
2220 | | - NS_USER => true, |
2221 | | - NS_USER_TALK => true, |
2222 | | - NS_PROJECT_TALK => true, |
2223 | | - NS_FILE_TALK => true, |
2224 | | - NS_MEDIAWIKI => true, |
2225 | | - NS_MEDIAWIKI_TALK => true, |
2226 | | - NS_TEMPLATE_TALK => true, |
2227 | | - NS_HELP_TALK => true, |
2228 | | - NS_CATEGORY_TALK => true |
2229 | | -); |
2230 | | - |
2231 | | -/** |
2232 | | - * Which namespaces have special treatment where they should be preview-on-open |
2233 | | - * Internaly only Category: pages apply, but using this extensions (e.g. Semantic MediaWiki) |
2234 | | - * can specify namespaces of pages they have special treatment for |
2235 | | - */ |
2236 | | -$wgPreviewOnOpenNamespaces = array( |
2237 | | - NS_CATEGORY => true |
2238 | | -); |
2239 | | - |
2240 | 3797 | $wgNamespacesToBeSearchedDefault = array( |
2241 | 3798 | NS_MAIN => true, |
2242 | 3799 | ); |
— | — | @@ -2259,158 +3816,104 @@ |
2260 | 3817 | $wgSearchEverythingOnlyLoggedIn = false; |
2261 | 3818 | |
2262 | 3819 | /** |
2263 | | - * Site notice shown at the top of each page |
| 3820 | + * Disable the internal MySQL-based search, to allow it to be |
| 3821 | + * implemented by an extension instead. |
| 3822 | + */ |
| 3823 | +$wgDisableInternalSearch = false; |
| 3824 | + |
| 3825 | +/** |
| 3826 | + * Set this to a URL to forward search requests to some external location. |
| 3827 | + * If the URL includes '$1', this will be replaced with the URL-encoded |
| 3828 | + * search term. |
2264 | 3829 | * |
2265 | | - * MediaWiki:Sitenotice page, which will override this. You can also |
2266 | | - * provide a separate message for logged-out users using the |
2267 | | - * MediaWiki:Anonnotice page. |
| 3830 | + * For example, to forward to Google you'd have something like: |
| 3831 | + * $wgSearchForwardUrl = 'http://www.google.com/search?q=$1' . |
| 3832 | + * '&domains=http://example.com' . |
| 3833 | + * '&sitesearch=http://example.com' . |
| 3834 | + * '&ie=utf-8&oe=utf-8'; |
2268 | 3835 | */ |
2269 | | -$wgSiteNotice = ''; |
| 3836 | +$wgSearchForwardUrl = null; |
2270 | 3837 | |
2271 | | -# |
2272 | | -# Images settings |
2273 | | -# |
2274 | | - |
2275 | 3838 | /** |
2276 | | - * Plugins for media file type handling. |
2277 | | - * Each entry in the array maps a MIME type to a class name |
| 3839 | + * Search form behavior |
| 3840 | + * true = use Go & Search buttons |
| 3841 | + * false = use Go button & Advanced search link |
2278 | 3842 | */ |
2279 | | -$wgMediaHandlers = array( |
2280 | | - 'image/jpeg' => 'BitmapHandler', |
2281 | | - 'image/png' => 'BitmapHandler', |
2282 | | - 'image/gif' => 'GIFHandler', |
2283 | | - 'image/tiff' => 'TiffHandler', |
2284 | | - 'image/x-ms-bmp' => 'BmpHandler', |
2285 | | - 'image/x-bmp' => 'BmpHandler', |
2286 | | - 'image/svg+xml' => 'SvgHandler', // official |
2287 | | - 'image/svg' => 'SvgHandler', // compat |
2288 | | - 'image/vnd.djvu' => 'DjVuHandler', // official |
2289 | | - 'image/x.djvu' => 'DjVuHandler', // compat |
2290 | | - 'image/x-djvu' => 'DjVuHandler', // compat |
2291 | | -); |
| 3843 | +$wgUseTwoButtonsSearchForm = true; |
2292 | 3844 | |
2293 | | - |
2294 | 3845 | /** |
2295 | | - * Resizing can be done using PHP's internal image libraries or using |
2296 | | - * ImageMagick or another third-party converter, e.g. GraphicMagick. |
2297 | | - * These support more file formats than PHP, which only supports PNG, |
2298 | | - * GIF, JPG, XBM and WBMP. |
2299 | | - * |
2300 | | - * Use Image Magick instead of PHP builtin functions. |
| 3846 | + * Array of namespaces to generate a Google sitemap for when the |
| 3847 | + * maintenance/generateSitemap.php script is run, or false if one is to be ge- |
| 3848 | + * nerated for all namespaces. |
2301 | 3849 | */ |
2302 | | -$wgUseImageMagick = false; |
2303 | | -/** The convert command shipped with ImageMagick */ |
2304 | | -$wgImageMagickConvertCommand = '/usr/bin/convert'; |
| 3850 | +$wgSitemapNamespaces = false; |
2305 | 3851 | |
2306 | | -/** Sharpening parameter to ImageMagick */ |
2307 | | -$wgSharpenParameter = '0x0.4'; |
| 3852 | +/** @} */ # end of search settings |
2308 | 3853 | |
2309 | | -/** Reduction in linear dimensions below which sharpening will be enabled */ |
2310 | | -$wgSharpenReductionThreshold = 0.85; |
| 3854 | +/************************************************************************//** |
| 3855 | + * @name Edit user interface |
| 3856 | + * @{ |
| 3857 | + */ |
2311 | 3858 | |
2312 | 3859 | /** |
2313 | | - * Temporary directory used for ImageMagick. The directory must exist. Leave |
2314 | | - * this set to false to let ImageMagick decide for itself. |
| 3860 | + * Path to the GNU diff3 utility. If the file doesn't exist, edit conflicts will |
| 3861 | + * fall back to the old behaviour (no merging). |
2315 | 3862 | */ |
2316 | | -$wgImageMagickTempDir = false; |
| 3863 | +$wgDiff3 = '/usr/bin/diff3'; |
2317 | 3864 | |
2318 | 3865 | /** |
2319 | | - * Use another resizing converter, e.g. GraphicMagick |
2320 | | - * %s will be replaced with the source path, %d with the destination |
2321 | | - * %w and %h will be replaced with the width and height |
2322 | | - * |
2323 | | - * An example is provided for GraphicMagick |
2324 | | - * Leave as false to skip this |
| 3866 | + * Path to the GNU diff utility. |
2325 | 3867 | */ |
2326 | | -#$wgCustomConvertCommand = "gm convert %s -resize %wx%h %d" |
2327 | | -$wgCustomConvertCommand = false; |
| 3868 | +$wgDiff = '/usr/bin/diff'; |
2328 | 3869 | |
2329 | | -# Scalable Vector Graphics (SVG) may be uploaded as images. |
2330 | | -# Since SVG support is not yet standard in browsers, it is |
2331 | | -# necessary to rasterize SVGs to PNG as a fallback format. |
2332 | | -# |
2333 | | -# An external program is required to perform this conversion: |
2334 | | -$wgSVGConverters = array( |
2335 | | - 'ImageMagick' => '$path/convert -background white -thumbnail $widthx$height\! $input PNG:$output', |
2336 | | - 'sodipodi' => '$path/sodipodi -z -w $width -f $input -e $output', |
2337 | | - 'inkscape' => '$path/inkscape -z -w $width -f $input -e $output', |
2338 | | - 'batik' => 'java -Djava.awt.headless=true -jar $path/batik-rasterizer.jar -w $width -d $output $input', |
2339 | | - 'rsvg' => '$path/rsvg -w$width -h$height $input $output', |
2340 | | - 'imgserv' => '$path/imgserv-wrapper -i svg -o png -w$width $input $output', |
2341 | | - ); |
2342 | | -/** Pick one of the above */ |
2343 | | -$wgSVGConverter = 'ImageMagick'; |
2344 | | -/** If not in the executable PATH, specify */ |
2345 | | -$wgSVGConverterPath = ''; |
2346 | | -/** Don't scale a SVG larger than this */ |
2347 | | -$wgSVGMaxSize = 2048; |
2348 | 3870 | /** |
2349 | | - * Don't thumbnail an image if it will use too much working memory |
2350 | | - * Default is 50 MB if decompressed to RGBA form, which corresponds to |
2351 | | - * 12.5 million pixels or 3500x3500 |
| 3871 | + * Which namespaces have special treatment where they should be preview-on-open |
| 3872 | + * Internaly only Category: pages apply, but using this extensions (e.g. Semantic MediaWiki) |
| 3873 | + * can specify namespaces of pages they have special treatment for |
2352 | 3874 | */ |
2353 | | -$wgMaxImageArea = 1.25e7; |
2354 | | -/** |
2355 | | - * Force thumbnailing of animated GIFs above this size to a single |
2356 | | - * frame instead of an animated thumbnail. As of MW 1.17 this limit |
2357 | | - * is checked against the total size of all frames in the animation. |
2358 | | - * It probably makes sense to keep this equal to $wgMaxImageArea. |
2359 | | - */ |
2360 | | -$wgMaxAnimatedGifArea = 1.25e7; |
2361 | | -/** |
2362 | | - * Browsers don't support TIFF inline generally... |
2363 | | - * For inline display, we need to convert to PNG or JPEG. |
2364 | | - * Note scaling should work with ImageMagick, but may not with GD scaling. |
2365 | | - * // PNG is lossless, but inefficient for photos |
2366 | | - * $wgTiffThumbnailType = array( 'png', 'image/png' ); |
2367 | | - * // JPEG is good for photos, but has no transparency support. Bad for diagrams. |
2368 | | - * $wgTiffThumbnailType = array( 'jpg', 'image/jpeg' ); |
2369 | | - */ |
2370 | | - $wgTiffThumbnailType = false; |
| 3875 | +$wgPreviewOnOpenNamespaces = array( |
| 3876 | + NS_CATEGORY => true |
| 3877 | +); |
2371 | 3878 | |
2372 | 3879 | /** |
2373 | | - * If rendered thumbnail files are older than this timestamp, they |
2374 | | - * will be rerendered on demand as if the file didn't already exist. |
2375 | | - * Update if there is some need to force thumbs and SVG rasterizations |
2376 | | - * to rerender, such as fixes to rendering bugs. |
| 3880 | + * Activate external editor interface for files and pages |
| 3881 | + * See http://www.mediawiki.org/wiki/Manual:External_editors |
2377 | 3882 | */ |
2378 | | -$wgThumbnailEpoch = '20030516000000'; |
| 3883 | +$wgUseExternalEditor = true; |
2379 | 3884 | |
| 3885 | +/** Go button goes straight to the edit screen if the article doesn't exist. */ |
| 3886 | +$wgGoToEdit = false; |
| 3887 | + |
2380 | 3888 | /** |
2381 | | - * If set, inline scaled images will still produce <img> tags ready for |
2382 | | - * output instead of showing an error message. |
2383 | | - * |
2384 | | - * This may be useful if errors are transitory, especially if the site |
2385 | | - * is configured to automatically render thumbnails on request. |
2386 | | - * |
2387 | | - * On the other hand, it may obscure error conditions from debugging. |
2388 | | - * Enable the debug log or the 'thumbnail' log group to make sure errors |
2389 | | - * are logged to a file for review. |
| 3889 | + * Enable the UniversalEditButton for browsers that support it |
| 3890 | + * (currently only Firefox with an extension) |
| 3891 | + * See http://universaleditbutton.org for more background information |
2390 | 3892 | */ |
2391 | | -$wgIgnoreImageErrors = false; |
| 3893 | +$wgUniversalEditButton = true; |
2392 | 3894 | |
2393 | 3895 | /** |
2394 | | - * Allow thumbnail rendering on page view. If this is false, a valid |
2395 | | - * thumbnail URL is still output, but no file will be created at |
2396 | | - * the target location. This may save some time if you have a |
2397 | | - * thumb.php or 404 handler set up which is faster than the regular |
2398 | | - * webserver(s). |
| 3896 | + * If user doesn't specify any edit summary when making a an edit, MediaWiki |
| 3897 | + * will try to automatically create one. This feature can be disabled by set- |
| 3898 | + * ting this variable false. |
2399 | 3899 | */ |
2400 | | -$wgGenerateThumbnailOnParse = true; |
| 3900 | +$wgUseAutomaticEditSummaries = true; |
2401 | 3901 | |
2402 | | -/** |
2403 | | -* Show thumbnails for old images on the image description page |
2404 | | -*/ |
2405 | | -$wgShowArchiveThumbnails = true; |
| 3902 | +/** @} */ # end edit UI } |
2406 | 3903 | |
2407 | | -/** Obsolete, always true, kept for compatibility with extensions */ |
2408 | | -$wgUseImageResize = true; |
| 3904 | +/************************************************************************//** |
| 3905 | + * @name Maintenance |
| 3906 | + * See also $wgSiteNotice |
| 3907 | + * @{ |
| 3908 | + */ |
2409 | 3909 | |
2410 | | - |
2411 | | -/** Set $wgCommandLineMode if it's not set already, to avoid notices */ |
| 3910 | +/** |
| 3911 | + * @cond file_level_code |
| 3912 | + * Set $wgCommandLineMode if it's not set already, to avoid notices |
| 3913 | + */ |
2412 | 3914 | if( !isset( $wgCommandLineMode ) ) { |
2413 | 3915 | $wgCommandLineMode = false; |
2414 | 3916 | } |
| 3917 | +/** @endcond */ |
2415 | 3918 | |
2416 | 3919 | /** For colorized maintenance script output, is your terminal background dark ? */ |
2417 | 3920 | $wgCommandLineDarkBg = false; |
— | — | @@ -2422,13 +3925,32 @@ |
2423 | 3926 | */ |
2424 | 3927 | $wgMaintenanceScripts = array(); |
2425 | 3928 | |
2426 | | -# |
2427 | | -# Recent changes settings |
2428 | | -# |
| 3929 | +/** |
| 3930 | + * Set this to a string to put the wiki into read-only mode. The text will be |
| 3931 | + * used as an explanation to users. |
| 3932 | + * |
| 3933 | + * This prevents most write operations via the web interface. Cache updates may |
| 3934 | + * still be possible. To prevent database writes completely, use the read_only |
| 3935 | + * option in MySQL. |
| 3936 | + */ |
| 3937 | +$wgReadOnly = null; |
2429 | 3938 | |
2430 | | -/** Log IP addresses in the recentchanges table; can be accessed only by extensions (e.g. CheckUser) or a DB admin */ |
2431 | | -$wgPutIPinRC = true; |
| 3939 | +/*** |
| 3940 | + * If this lock file exists (size > 0), the wiki will be forced into read-only mode. |
| 3941 | + * Its contents will be shown to users as part of the read-only warning |
| 3942 | + * message. |
| 3943 | + * |
| 3944 | + * Defaults to "{$wgUploadDirectory}/lock_yBgMBwiR". |
| 3945 | + */ |
| 3946 | +$wgReadOnlyFile = false; |
2432 | 3947 | |
| 3948 | +/** @} */ # End of maintenance } |
| 3949 | + |
| 3950 | +/************************************************************************//** |
| 3951 | + * @name Recent changes, new pages, watchlist and history |
| 3952 | + * @{ |
| 3953 | + */ |
| 3954 | + |
2433 | 3955 | /** |
2434 | 3956 | * Recentchanges items are periodically purged; entries older than this many |
2435 | 3957 | * seconds will go. |
— | — | @@ -2437,14 +3959,17 @@ |
2438 | 3960 | $wgRCMaxAge = 13 * 7 * 24 * 3600; |
2439 | 3961 | |
2440 | 3962 | /** |
2441 | | - * Filter $wgRCLinkDays by $wgRCMaxAge to avoid showing links for numbers higher than what will be stored. |
2442 | | - * Note that this is disabled by default because we sometimes do have RC data which is beyond the limit |
2443 | | - * for some reason, and some users may use the high numbers to display that data which is still there. |
| 3963 | + * Filter $wgRCLinkDays by $wgRCMaxAge to avoid showing links for numbers |
| 3964 | + * higher than what will be stored. Note that this is disabled by default |
| 3965 | + * because we sometimes do have RC data which is beyond the limit for some |
| 3966 | + * reason, and some users may use the high numbers to display that data which |
| 3967 | + * is still there. |
2444 | 3968 | */ |
2445 | 3969 | $wgRCFilterByAge = false; |
2446 | 3970 | |
2447 | 3971 | /** |
2448 | | - * List of Days and Limits options to list in the Special:Recentchanges and Special:Recentchangeslinked pages. |
| 3972 | + * List of Days and Limits options to list in the Special:Recentchanges and |
| 3973 | + * Special:Recentchangeslinked pages. |
2449 | 3974 | */ |
2450 | 3975 | $wgRCLinkLimits = array( 50, 100, 250, 500 ); |
2451 | 3976 | $wgRCLinkDays = array( 1, 3, 7, 14, 30 ); |
— | — | @@ -2487,10 +4012,89 @@ |
2488 | 4013 | */ |
2489 | 4014 | $wgEnableNewpagesUserFilter = true; |
2490 | 4015 | |
2491 | | -# |
2492 | | -# Copyright and credits settings |
2493 | | -# |
| 4016 | +/** Use RC Patrolling to check for vandalism */ |
| 4017 | +$wgUseRCPatrol = true; |
2494 | 4018 | |
| 4019 | +/** Use new page patrolling to check new pages on Special:Newpages */ |
| 4020 | +$wgUseNPPatrol = true; |
| 4021 | + |
| 4022 | +/** Provide syndication feeds (RSS, Atom) for, e.g., Recentchanges, Newpages */ |
| 4023 | +$wgFeed = true; |
| 4024 | + |
| 4025 | +/** Set maximum number of results to return in syndication feeds (RSS, Atom) for |
| 4026 | + * eg Recentchanges, Newpages. */ |
| 4027 | +$wgFeedLimit = 50; |
| 4028 | + |
| 4029 | +/** _Minimum_ timeout for cached Recentchanges feed, in seconds. |
| 4030 | + * A cached version will continue to be served out even if changes |
| 4031 | + * are made, until this many seconds runs out since the last render. |
| 4032 | + * |
| 4033 | + * If set to 0, feed caching is disabled. Use this for debugging only; |
| 4034 | + * feed generation can be pretty slow with diffs. |
| 4035 | + */ |
| 4036 | +$wgFeedCacheTimeout = 60; |
| 4037 | + |
| 4038 | +/** When generating Recentchanges RSS/Atom feed, diffs will not be generated for |
| 4039 | + * pages larger than this size. */ |
| 4040 | +$wgFeedDiffCutoff = 32768; |
| 4041 | + |
| 4042 | +/** Override the site's default RSS/ATOM feed for recentchanges that appears on |
| 4043 | + * every page. Some sites might have a different feed they'd like to promote |
| 4044 | + * instead of the RC feed (maybe like a "Recent New Articles" or "Breaking news" one). |
| 4045 | + * Ex: $wgSiteFeed['format'] = "http://example.com/somefeed.xml"; Format can be one |
| 4046 | + * of either 'rss' or 'atom'. |
| 4047 | + */ |
| 4048 | +$wgOverrideSiteFeed = array(); |
| 4049 | + |
| 4050 | +/** |
| 4051 | + * Which feed types should we provide by default? This can include 'rss', |
| 4052 | + * 'atom', neither, or both. |
| 4053 | + */ |
| 4054 | +$wgAdvertisedFeedTypes = array( 'atom' ); |
| 4055 | + |
| 4056 | +/** Show watching users in recent changes, watchlist and page history views */ |
| 4057 | +$wgRCShowWatchingUsers = false; # UPO |
| 4058 | +/** Show watching users in Page views */ |
| 4059 | +$wgPageShowWatchingUsers = false; |
| 4060 | +/** Show the amount of changed characters in recent changes */ |
| 4061 | +$wgRCShowChangedSize = true; |
| 4062 | + |
| 4063 | +/** |
| 4064 | + * If the difference between the character counts of the text |
| 4065 | + * before and after the edit is below that value, the value will be |
| 4066 | + * highlighted on the RC page. |
| 4067 | + */ |
| 4068 | +$wgRCChangedSizeThreshold = 500; |
| 4069 | + |
| 4070 | +/** |
| 4071 | + * Show "Updated (since my last visit)" marker in RC view, watchlist and history |
| 4072 | + * view for watched pages with new changes */ |
| 4073 | +$wgShowUpdatedMarker = true; |
| 4074 | + |
| 4075 | +/** |
| 4076 | + * Disable links to talk pages of anonymous users (IPs) in listings on special |
| 4077 | + * pages like page history, Special:Recentchanges, etc. |
| 4078 | + */ |
| 4079 | +$wgDisableAnonTalk = false; |
| 4080 | + |
| 4081 | +/** |
| 4082 | + * Enable filtering of categories in Recentchanges |
| 4083 | + */ |
| 4084 | +$wgAllowCategorizedRecentChanges = false; |
| 4085 | + |
| 4086 | +/** |
| 4087 | + * Allow filtering by change tag in recentchanges, history, etc |
| 4088 | + * Has no effect if no tags are defined in valid_tag. |
| 4089 | + */ |
| 4090 | +$wgUseTagFilter = true; |
| 4091 | + |
| 4092 | +/** @} */ # end RC/watchlist } |
| 4093 | + |
| 4094 | +/************************************************************************//** |
| 4095 | + * @name Copyright and credits settings |
| 4096 | + * @{ |
| 4097 | + */ |
| 4098 | + |
2495 | 4099 | /** RDF metadata toggles */ |
2496 | 4100 | $wgEnableDublinCoreRdf = false; |
2497 | 4101 | $wgEnableCreativeCommonsRdf = false; |
— | — | @@ -2526,29 +4130,14 @@ |
2527 | 4131 | * Otherwise, link to a separate credits page. */ |
2528 | 4132 | $wgShowCreditsIfMax = true; |
2529 | 4133 | |
| 4134 | +/** @} */ # end of copyright and credits settings } |
2530 | 4135 | |
2531 | | - |
2532 | | -/** |
2533 | | - * Set this to false to avoid forcing the first letter of links to capitals. |
2534 | | - * WARNING: may break links! This makes links COMPLETELY case-sensitive. Links |
2535 | | - * appearing with a capital at the beginning of a sentence will *not* go to the |
2536 | | - * same place as links in the middle of a sentence using a lowercase initial. |
| 4136 | +/************************************************************************//** |
| 4137 | + * @name Import / Export |
| 4138 | + * @{ |
2537 | 4139 | */ |
2538 | | -$wgCapitalLinks = true; |
2539 | 4140 | |
2540 | 4141 | /** |
2541 | | - * @since 1.16 - This can now be set per-namespace. Some special namespaces (such |
2542 | | - * as Special, see MWNamespace::$alwaysCapitalizedNamespaces for the full list) must be |
2543 | | - * true by default (and setting them has no effect), due to various things that |
2544 | | - * require them to be so. Also, since Talk namespaces need to directly mirror their |
2545 | | - * associated content namespaces, the values for those are ignored in favor of the |
2546 | | - * subject namespace's setting. Setting for NS_MEDIA is taken automatically from |
2547 | | - * NS_FILE. |
2548 | | - * EX: $wgCapitalLinkOverrides[ NS_FILE ] = false; |
2549 | | - */ |
2550 | | -$wgCapitalLinkOverrides = array(); |
2551 | | - |
2552 | | -/** |
2553 | 4142 | * List of interwiki prefixes for wikis we'll accept as sources for |
2554 | 4143 | * Special:Import (for sysops). Since complete page history can be imported, |
2555 | 4144 | * these should be 'trusted'. |
— | — | @@ -2604,206 +4193,14 @@ |
2605 | 4194 | */ |
2606 | 4195 | $wgExportFromNamespaces = false; |
2607 | 4196 | |
2608 | | -/** |
2609 | | - * Edits matching these regular expressions in body text |
2610 | | - * will be recognised as spam and rejected automatically. |
2611 | | - * |
2612 | | - * There's no administrator override on-wiki, so be careful what you set. :) |
2613 | | - * May be an array of regexes or a single string for backwards compatibility. |
2614 | | - * |
2615 | | - * See http://en.wikipedia.org/wiki/Regular_expression |
2616 | | - * Note that each regex needs a beginning/end delimiter, eg: # or / |
2617 | | - */ |
2618 | | -$wgSpamRegex = array(); |
| 4197 | +/** @} */ # end of import/export } |
2619 | 4198 | |
2620 | | -/** Same as the above except for edit summaries */ |
2621 | | -$wgSummarySpamRegex = array(); |
2622 | | - |
2623 | | -/** Similarly you can get a function to do the job. The function will be given |
2624 | | - * the following args: |
2625 | | - * - a Title object for the article the edit is made on |
2626 | | - * - the text submitted in the textarea (wpTextbox1) |
2627 | | - * - the section number. |
2628 | | - * The return should be boolean indicating whether the edit matched some evilness: |
2629 | | - * - true : block it |
2630 | | - * - false : let it through |
2631 | | - * |
2632 | | - * For a complete example, have a look at the SpamBlacklist extension. |
| 4199 | +/*************************************************************************//** |
| 4200 | + * @name Extensions |
| 4201 | + * @{ |
2633 | 4202 | */ |
2634 | | -$wgFilterCallback = false; |
2635 | 4203 | |
2636 | | -/** Go button goes straight to the edit screen if the article doesn't exist. */ |
2637 | | -$wgGoToEdit = false; |
2638 | | - |
2639 | | -/** Allow raw, unchecked HTML in <html>...</html> sections. |
2640 | | - * THIS IS VERY DANGEROUS on a publically editable site, so USE wgGroupPermissions |
2641 | | - * TO RESTRICT EDITING to only those that you trust |
2642 | | - */ |
2643 | | -$wgRawHtml = false; |
2644 | | - |
2645 | 4204 | /** |
2646 | | - * $wgUseTidy: use tidy to make sure HTML output is sane. |
2647 | | - * Tidy is a free tool that fixes broken HTML. |
2648 | | - * See http://www.w3.org/People/Raggett/tidy/ |
2649 | | - * $wgTidyBin should be set to the path of the binary and |
2650 | | - * $wgTidyConf to the path of the configuration file. |
2651 | | - * $wgTidyOpts can include any number of parameters. |
2652 | | - * |
2653 | | - * $wgTidyInternal controls the use of the PECL extension to use an in- |
2654 | | - * process tidy library instead of spawning a separate program. |
2655 | | - * Normally you shouldn't need to override the setting except for |
2656 | | - * debugging. To install, use 'pear install tidy' and add a line |
2657 | | - * 'extension=tidy.so' to php.ini. |
2658 | | - */ |
2659 | | -$wgUseTidy = false; |
2660 | | -$wgAlwaysUseTidy = false; |
2661 | | -$wgTidyBin = 'tidy'; |
2662 | | -$wgTidyConf = $IP.'/includes/tidy.conf'; |
2663 | | -$wgTidyOpts = ''; |
2664 | | -$wgTidyInternal = extension_loaded( 'tidy' ); |
2665 | | - |
2666 | | -/** |
2667 | | - * Put tidy warnings in HTML comments |
2668 | | - * Only works for internal tidy. |
2669 | | - */ |
2670 | | -$wgDebugTidy = false; |
2671 | | - |
2672 | | -/** |
2673 | | - * Validate the overall output using tidy and refuse |
2674 | | - * to display the page if it's not valid. |
2675 | | - */ |
2676 | | -$wgValidateAllHtml = false; |
2677 | | - |
2678 | | -/** |
2679 | | - * Default skin, for new users and anonymous visitors. Registered users may |
2680 | | - * change this to any one of the other available skins in their preferences. |
2681 | | - * This have to be completely lowercase; see the "skins" directory for the list |
2682 | | - * of available skins. |
2683 | | - */ |
2684 | | -$wgDefaultSkin = 'vector'; |
2685 | | - |
2686 | | -/** |
2687 | | -* Should we allow the user's to select their own skin that will override the default? |
2688 | | -* @deprecated in 1.16, use $wgHiddenPrefs[] = 'skin' to disable it |
2689 | | -*/ |
2690 | | -$wgAllowUserSkin = true; |
2691 | | - |
2692 | | -/** |
2693 | | - * Optionally, we can specify a stylesheet to use for media="handheld". |
2694 | | - * This is recognized by some, but not all, handheld/mobile/PDA browsers. |
2695 | | - * If left empty, compliant handheld browsers won't pick up the skin |
2696 | | - * stylesheet, which is specified for 'screen' media. |
2697 | | - * |
2698 | | - * Can be a complete URL, base-relative path, or $wgStylePath-relative path. |
2699 | | - * Try 'chick/main.css' to apply the Chick styles to the MonoBook HTML. |
2700 | | - * |
2701 | | - * Will also be switched in when 'handheld=yes' is added to the URL, like |
2702 | | - * the 'printable=yes' mode for print media. |
2703 | | - */ |
2704 | | -$wgHandheldStyle = false; |
2705 | | - |
2706 | | -/** |
2707 | | - * If set, 'screen' and 'handheld' media specifiers for stylesheets are |
2708 | | - * transformed such that they apply to the iPhone/iPod Touch Mobile Safari, |
2709 | | - * which doesn't recognize 'handheld' but does support media queries on its |
2710 | | - * screen size. |
2711 | | - * |
2712 | | - * Consider only using this if you have a *really good* handheld stylesheet, |
2713 | | - * as iPhone users won't have any way to disable it and use the "grown-up" |
2714 | | - * styles instead. |
2715 | | - */ |
2716 | | -$wgHandheldForIPhone = false; |
2717 | | - |
2718 | | -/** |
2719 | | - * Settings added to this array will override the default globals for the user |
2720 | | - * preferences used by anonymous visitors and newly created accounts. |
2721 | | - * For instance, to disable section editing links: |
2722 | | - * $wgDefaultUserOptions ['editsection'] = 0; |
2723 | | - * |
2724 | | - */ |
2725 | | -$wgDefaultUserOptions = array( |
2726 | | - 'ccmeonemails' => 0, |
2727 | | - 'cols' => 80, |
2728 | | - 'contextchars' => 50, |
2729 | | - 'contextlines' => 5, |
2730 | | - 'date' => 'default', |
2731 | | - 'diffonly' => 0, |
2732 | | - 'disablemail' => 0, |
2733 | | - 'disablesuggest' => 0, |
2734 | | - 'editfont' => 'default', |
2735 | | - 'editondblclick' => 0, |
2736 | | - 'editsection' => 1, |
2737 | | - 'editsectiononrightclick' => 0, |
2738 | | - 'enotifminoredits' => 0, |
2739 | | - 'enotifrevealaddr' => 0, |
2740 | | - 'enotifusertalkpages' => 1, |
2741 | | - 'enotifwatchlistpages' => 0, |
2742 | | - 'extendwatchlist' => 0, |
2743 | | - 'externaldiff' => 0, |
2744 | | - 'externaleditor' => 0, |
2745 | | - 'fancysig' => 0, |
2746 | | - 'forceeditsummary' => 0, |
2747 | | - 'gender' => 'unknown', |
2748 | | - 'hideminor' => 0, |
2749 | | - 'hidepatrolled' => 0, |
2750 | | - 'highlightbroken' => 1, |
2751 | | - 'imagesize' => 2, |
2752 | | - 'justify' => 0, |
2753 | | - 'math' => 1, |
2754 | | - 'minordefault' => 0, |
2755 | | - 'newpageshidepatrolled' => 0, |
2756 | | - 'nocache' => 0, |
2757 | | - 'noconvertlink' => 0, |
2758 | | - 'norollbackdiff' => 0, |
2759 | | - 'numberheadings' => 0, |
2760 | | - 'previewonfirst' => 0, |
2761 | | - 'previewontop' => 1, |
2762 | | - 'quickbar' => 1, |
2763 | | - 'rcdays' => 7, |
2764 | | - 'rclimit' => 50, |
2765 | | - 'rememberpassword' => 0, |
2766 | | - 'rows' => 25, |
2767 | | - 'searchlimit' => 20, |
2768 | | - 'showhiddencats' => 0, |
2769 | | - 'showjumplinks' => 1, |
2770 | | - 'shownumberswatching' => 1, |
2771 | | - 'showtoc' => 1, |
2772 | | - 'showtoolbar' => 1, |
2773 | | - 'skin' => false, |
2774 | | - 'stubthreshold' => 0, |
2775 | | - 'thumbsize' => 2, |
2776 | | - 'underline' => 2, |
2777 | | - 'uselivepreview' => 0, |
2778 | | - 'usenewrc' => 0, |
2779 | | - 'watchcreations' => 0, |
2780 | | - 'watchdefault' => 0, |
2781 | | - 'watchdeletion' => 0, |
2782 | | - 'watchlistdays' => 3.0, |
2783 | | - 'watchlisthideanons' => 0, |
2784 | | - 'watchlisthidebots' => 0, |
2785 | | - 'watchlisthideliu' => 0, |
2786 | | - 'watchlisthideminor' => 0, |
2787 | | - 'watchlisthideown' => 0, |
2788 | | - 'watchlisthidepatrolled' => 0, |
2789 | | - 'watchmoves' => 0, |
2790 | | - 'wllimit' => 250, |
2791 | | -); |
2792 | | - |
2793 | | -/** |
2794 | | - * Whether or not to allow and use real name fields. |
2795 | | - * @deprecated in 1.16, use $wgHiddenPrefs[] = 'realname' below to disable real |
2796 | | - * names |
2797 | | - */ |
2798 | | -$wgAllowRealName = true; |
2799 | | - |
2800 | | -/** An array of preferences to not show for the user */ |
2801 | | -$wgHiddenPrefs = array(); |
2802 | | - |
2803 | | -/***************************************************************************** |
2804 | | - * Extensions |
2805 | | - */ |
2806 | | - |
2807 | | -/** |
2808 | 4205 | * A list of callback functions which are called once MediaWiki is fully initialised |
2809 | 4206 | */ |
2810 | 4207 | $wgExtensionFunctions = array(); |
— | — | @@ -2892,198 +4289,79 @@ |
2893 | 4290 | * 'descriptionmsg' => array( 'exampleextension-desc', param1, param2, ... ), |
2894 | 4291 | */ |
2895 | 4292 | $wgExtensionCredits = array(); |
2896 | | -/* |
2897 | | - * end extensions |
2898 | | - ******************************************************************************/ |
2899 | 4293 | |
2900 | 4294 | /** |
2901 | | - * Allow user Javascript page? |
2902 | | - * This enables a lot of neat customizations, but may |
2903 | | - * increase security risk to users and server load. |
| 4295 | + * Authentication plugin. |
2904 | 4296 | */ |
2905 | | -$wgAllowUserJs = false; |
| 4297 | +$wgAuth = null; |
2906 | 4298 | |
2907 | 4299 | /** |
2908 | | - * Allow user Cascading Style Sheets (CSS)? |
2909 | | - * This enables a lot of neat customizations, but may |
2910 | | - * increase security risk to users and server load. |
| 4300 | + * Global list of hooks. |
| 4301 | + * Add a hook by doing: |
| 4302 | + * $wgHooks['event_name'][] = $function; |
| 4303 | + * or: |
| 4304 | + * $wgHooks['event_name'][] = array($function, $data); |
| 4305 | + * or: |
| 4306 | + * $wgHooks['event_name'][] = array($object, 'method'); |
2911 | 4307 | */ |
2912 | | -$wgAllowUserCss = false; |
| 4308 | +$wgHooks = array(); |
2913 | 4309 | |
2914 | 4310 | /** |
2915 | | - * Allow user-preferences implemented in CSS? |
2916 | | - * This allows users to customise the site appearance to a greater |
2917 | | - * degree; disabling it will improve page load times. |
| 4311 | + * Maps jobs to their handling classes; extensions |
| 4312 | + * can add to this to provide custom jobs |
2918 | 4313 | */ |
2919 | | -$wgAllowUserCssPrefs = true; |
| 4314 | +$wgJobClasses = array( |
| 4315 | + 'refreshLinks' => 'RefreshLinksJob', |
| 4316 | + 'refreshLinks2' => 'RefreshLinksJob2', |
| 4317 | + 'htmlCacheUpdate' => 'HTMLCacheUpdateJob', |
| 4318 | + 'html_cache_update' => 'HTMLCacheUpdateJob', // backwards-compatible |
| 4319 | + 'sendMail' => 'EmaillingJob', |
| 4320 | + 'enotifNotify' => 'EnotifNotifyJob', |
| 4321 | + 'fixDoubleRedirect' => 'DoubleRedirectJob', |
| 4322 | + 'uploadFromUrl' => 'UploadFromUrlJob', |
| 4323 | +); |
2920 | 4324 | |
2921 | | -/** Use the site's Javascript page? */ |
2922 | | -$wgUseSiteJs = true; |
2923 | | - |
2924 | | -/** Use the site's Cascading Style Sheets (CSS)? */ |
2925 | | -$wgUseSiteCss = true; |
2926 | | - |
2927 | 4325 | /** |
2928 | | - * Version of jQuery to use. Currently available versions are 1.3.2 and 1.4.2 . |
2929 | | - * Other versions can be installed by hand at your own risk, see |
2930 | | - * http://www.mediawiki.org/wiki/Manual:$wgJQueryVersion |
| 4326 | + * Additional functions to be performed with updateSpecialPages. |
| 4327 | + * Expensive Querypages are already updated. |
2931 | 4328 | */ |
2932 | | -$wgJQueryVersion = '1.4.2'; |
| 4329 | +$wgSpecialPageCacheUpdates = array( |
| 4330 | + 'Statistics' => array('SiteStatsUpdate','cacheUpdate') |
| 4331 | +); |
2933 | 4332 | |
2934 | 4333 | /** |
2935 | | - * Use a minified version of jQuery. If enabled, jquery-versionnumber.min.js |
2936 | | - * will be used instead of jquery-versionnumber.js . It is recommended you only |
2937 | | - * disable this for debugging purposes. |
| 4334 | + * Hooks that are used for outputting exceptions. Format is: |
| 4335 | + * $wgExceptionHooks[] = $funcname |
| 4336 | + * or: |
| 4337 | + * $wgExceptionHooks[] = array( $class, $funcname ) |
| 4338 | + * Hooks should return strings or false |
2938 | 4339 | */ |
2939 | | -$wgJQueryMinified = true; |
| 4340 | +$wgExceptionHooks = array(); |
2940 | 4341 | |
2941 | 4342 | /** |
2942 | | - * Include jQuery on every page served by MediaWiki. You can disable this if |
2943 | | - * your user/site-wide JS doesn't need it and you want to save bandwidth. |
| 4343 | + * Page property link table invalidation lists. When a page property |
| 4344 | + * changes, this may require other link tables to be updated (eg |
| 4345 | + * adding __HIDDENCAT__ means the hiddencat tracking category will |
| 4346 | + * have been added, so the categorylinks table needs to be rebuilt). |
| 4347 | + * This array can be added to by extensions. |
2944 | 4348 | */ |
2945 | | -$wgJQueryOnEveryPage = true; |
| 4349 | +$wgPagePropLinkInvalidations = array( |
| 4350 | + 'hiddencat' => 'categorylinks', |
| 4351 | +); |
2946 | 4352 | |
2947 | | -/** |
2948 | | - * Filter for Special:Randompage. Part of a WHERE clause |
2949 | | - * @deprecated as of 1.16, use the SpecialRandomGetRandomTitle hook |
2950 | | -*/ |
| 4353 | +/** @} */ # End extensions } |
2951 | 4354 | |
2952 | | -$wgExtraRandompageSQL = false; |
2953 | | - |
2954 | | -/** Allow the "info" action, very inefficient at the moment */ |
2955 | | -$wgAllowPageInfo = false; |
2956 | | - |
2957 | | -/** Maximum indent level of toc. */ |
2958 | | -$wgMaxTocLevel = 999; |
2959 | | - |
2960 | | -/** Name of the external diff engine to use */ |
2961 | | -$wgExternalDiffEngine = false; |
2962 | | - |
2963 | | -/** Use RC Patrolling to check for vandalism */ |
2964 | | -$wgUseRCPatrol = true; |
2965 | | - |
2966 | | -/** Use new page patrolling to check new pages on Special:Newpages */ |
2967 | | -$wgUseNPPatrol = true; |
2968 | | - |
2969 | | -/** Provide syndication feeds (RSS, Atom) for, e.g., Recentchanges, Newpages */ |
2970 | | -$wgFeed = true; |
2971 | | - |
2972 | | -/** Set maximum number of results to return in syndication feeds (RSS, Atom) for |
2973 | | - * eg Recentchanges, Newpages. */ |
2974 | | -$wgFeedLimit = 50; |
2975 | | - |
2976 | | -/** _Minimum_ timeout for cached Recentchanges feed, in seconds. |
2977 | | - * A cached version will continue to be served out even if changes |
2978 | | - * are made, until this many seconds runs out since the last render. |
2979 | | - * |
2980 | | - * If set to 0, feed caching is disabled. Use this for debugging only; |
2981 | | - * feed generation can be pretty slow with diffs. |
| 4355 | +/*************************************************************************//** |
| 4356 | + * @name Categories |
| 4357 | + * @{ |
2982 | 4358 | */ |
2983 | | -$wgFeedCacheTimeout = 60; |
2984 | 4359 | |
2985 | | -/** When generating Recentchanges RSS/Atom feed, diffs will not be generated for |
2986 | | - * pages larger than this size. */ |
2987 | | -$wgFeedDiffCutoff = 32768; |
2988 | | - |
2989 | | -/** Override the site's default RSS/ATOM feed for recentchanges that appears on |
2990 | | - * every page. Some sites might have a different feed they'd like to promote |
2991 | | - * instead of the RC feed (maybe like a "Recent New Articles" or "Breaking news" one). |
2992 | | - * Ex: $wgSiteFeed['format'] = "http://example.com/somefeed.xml"; Format can be one |
2993 | | - * of either 'rss' or 'atom'. |
2994 | | - */ |
2995 | | -$wgOverrideSiteFeed = array(); |
2996 | | - |
2997 | 4360 | /** |
2998 | | - * Which feed types should we provide by default? This can include 'rss', |
2999 | | - * 'atom', neither, or both. |
| 4361 | + * Use experimental, DMOZ-like category browser |
3000 | 4362 | */ |
3001 | | -$wgAdvertisedFeedTypes = array( 'atom' ); |
| 4363 | +$wgUseCategoryBrowser = false; |
3002 | 4364 | |
3003 | 4365 | /** |
3004 | | - * Additional namespaces. If the namespaces defined in Language.php and |
3005 | | - * Namespace.php are insufficient, you can create new ones here, for example, |
3006 | | - * to import Help files in other languages. |
3007 | | - * PLEASE NOTE: Once you delete a namespace, the pages in that namespace will |
3008 | | - * no longer be accessible. If you rename it, then you can access them through |
3009 | | - * the new namespace name. |
3010 | | - * |
3011 | | - * Custom namespaces should start at 100 to avoid conflicting with standard |
3012 | | - * namespaces, and should always follow the even/odd main/talk pattern. |
3013 | | - */ |
3014 | | -#$wgExtraNamespaces = |
3015 | | -# array(100 => "Hilfe", |
3016 | | -# 101 => "Hilfe_Diskussion", |
3017 | | -# 102 => "Aide", |
3018 | | -# 103 => "Discussion_Aide" |
3019 | | -# ); |
3020 | | -$wgExtraNamespaces = null; |
3021 | | - |
3022 | | -/** |
3023 | | - * Namespace aliases |
3024 | | - * These are alternate names for the primary localised namespace names, which |
3025 | | - * are defined by $wgExtraNamespaces and the language file. If a page is |
3026 | | - * requested with such a prefix, the request will be redirected to the primary |
3027 | | - * name. |
3028 | | - * |
3029 | | - * Set this to a map from namespace names to IDs. |
3030 | | - * Example: |
3031 | | - * $wgNamespaceAliases = array( |
3032 | | - * 'Wikipedian' => NS_USER, |
3033 | | - * 'Help' => 100, |
3034 | | - * ); |
3035 | | - */ |
3036 | | -$wgNamespaceAliases = array(); |
3037 | | - |
3038 | | -/** |
3039 | | - * Limit images on image description pages to a user-selectable limit. In order |
3040 | | - * to reduce disk usage, limits can only be selected from a list. |
3041 | | - * The user preference is saved as an array offset in the database, by default |
3042 | | - * the offset is set with $wgDefaultUserOptions['imagesize']. Make sure you |
3043 | | - * change it if you alter the array (see bug 8858). |
3044 | | - * This is the list of settings the user can choose from: |
3045 | | - */ |
3046 | | -$wgImageLimits = array ( |
3047 | | - array(320,240), |
3048 | | - array(640,480), |
3049 | | - array(800,600), |
3050 | | - array(1024,768), |
3051 | | - array(1280,1024), |
3052 | | - array(10000,10000) ); |
3053 | | - |
3054 | | -/** |
3055 | | - * Adjust thumbnails on image pages according to a user setting. In order to |
3056 | | - * reduce disk usage, the values can only be selected from a list. This is the |
3057 | | - * list of settings the user can choose from: |
3058 | | - */ |
3059 | | -$wgThumbLimits = array( |
3060 | | - 120, |
3061 | | - 150, |
3062 | | - 180, |
3063 | | - 200, |
3064 | | - 250, |
3065 | | - 300 |
3066 | | -); |
3067 | | - |
3068 | | -/** |
3069 | | - * Adjust width of upright images when parameter 'upright' is used |
3070 | | - * This allows a nicer look for upright images without the need to fix the width |
3071 | | - * by hardcoded px in wiki sourcecode. |
3072 | | - */ |
3073 | | -$wgThumbUpright = 0.75; |
3074 | | - |
3075 | | -/** |
3076 | | - * Default parameters for the <gallery> tag |
3077 | | - */ |
3078 | | - |
3079 | | -$wgGalleryOptions = array ( |
3080 | | - 'imagesPerRow' => 4, // Default number of images per-row in the gallery |
3081 | | - 'imageWidth' => 120, // Width of the cells containing images in galleries (in "px") |
3082 | | - 'imageHeight' => 120, // Height of the cells containing images in galleries (in "px") |
3083 | | - 'captionLength' => 20, // Length of caption to truncate (in characters) |
3084 | | - 'showBytes' => true, // Show the filesize in bytes in categories |
3085 | | -); |
3086 | | - |
3087 | | -/** |
3088 | 4366 | * On category pages, show thumbnail gallery for images belonging to that |
3089 | 4367 | * category instead of listing them as articles. |
3090 | 4368 | */ |
— | — | @@ -3100,120 +4378,14 @@ |
3101 | 4379 | */ |
3102 | 4380 | $wgCategoryPrefixedDefaultSortkey = true; |
3103 | 4381 | |
3104 | | -/** |
3105 | | - * Browser Blacklist for unicode non compliant browsers |
3106 | | - * Contains a list of regexps : "/regexp/" matching problematic browsers |
3107 | | - */ |
3108 | | -$wgBrowserBlackList = array( |
3109 | | - /** |
3110 | | - * Netscape 2-4 detection |
3111 | | - * The minor version may contain strings such as "Gold" or "SGoldC-SGI" |
3112 | | - * Lots of non-netscape user agents have "compatible", so it's useful to check for that |
3113 | | - * with a negative assertion. The [UIN] identifier specifies the level of security |
3114 | | - * in a Netscape/Mozilla browser, checking for it rules out a number of fakers. |
3115 | | - * The language string is unreliable, it is missing on NS4 Mac. |
3116 | | - * |
3117 | | - * Reference: http://www.psychedelix.com/agents/index.shtml |
3118 | | - */ |
3119 | | - '/^Mozilla\/2\.[^ ]+ [^(]*?\((?!compatible).*; [UIN]/', |
3120 | | - '/^Mozilla\/3\.[^ ]+ [^(]*?\((?!compatible).*; [UIN]/', |
3121 | | - '/^Mozilla\/4\.[^ ]+ [^(]*?\((?!compatible).*; [UIN]/', |
| 4382 | +/** @} */ # End categories } |
3122 | 4383 | |
3123 | | - /** |
3124 | | - * MSIE on Mac OS 9 is teh sux0r, converts þ to <thorn>, ð to <eth>, Þ to <THORN> and Ð to <ETH> |
3125 | | - * |
3126 | | - * Known useragents: |
3127 | | - * - Mozilla/4.0 (compatible; MSIE 5.0; Mac_PowerPC) |
3128 | | - * - Mozilla/4.0 (compatible; MSIE 5.15; Mac_PowerPC) |
3129 | | - * - Mozilla/4.0 (compatible; MSIE 5.23; Mac_PowerPC) |
3130 | | - * - [...] |
3131 | | - * |
3132 | | - * @link http://en.wikipedia.org/w/index.php?title=User%3A%C6var_Arnfj%F6r%F0_Bjarmason%2Ftestme&diff=12356041&oldid=12355864 |
3133 | | - * @link http://en.wikipedia.org/wiki/Template%3AOS9 |
3134 | | - */ |
3135 | | - '/^Mozilla\/4\.0 \(compatible; MSIE \d+\.\d+; Mac_PowerPC\)/', |
3136 | | - |
3137 | | - /** |
3138 | | - * Google wireless transcoder, seems to eat a lot of chars alive |
3139 | | - * http://it.wikipedia.org/w/index.php?title=Luciano_Ligabue&diff=prev&oldid=8857361 |
3140 | | - */ |
3141 | | - '/^Mozilla\/4\.0 \(compatible; MSIE 6.0; Windows NT 5.0; Google Wireless Transcoder;\)/' |
3142 | | -); |
3143 | | - |
3144 | | -/** |
3145 | | - * Fake out the timezone that the server thinks it's in. This will be used for |
3146 | | - * date display and not for what's stored in the DB. Leave to null to retain |
3147 | | - * your server's OS-based timezone value. |
3148 | | - * |
3149 | | - * This variable is currently used only for signature formatting and for local |
3150 | | - * time/date parser variables ({{LOCALTIME}} etc.) |
3151 | | - * |
3152 | | - * Timezones can be translated by editing MediaWiki messages of type |
3153 | | - * timezone-nameinlowercase like timezone-utc. |
| 4384 | +/*************************************************************************//** |
| 4385 | + * @name Logging |
| 4386 | + * @{ |
3154 | 4387 | */ |
3155 | | -# $wgLocaltimezone = 'GMT'; |
3156 | | -# $wgLocaltimezone = 'PST8PDT'; |
3157 | | -# $wgLocaltimezone = 'Europe/Sweden'; |
3158 | | -# $wgLocaltimezone = 'CET'; |
3159 | | -$wgLocaltimezone = null; |
3160 | 4388 | |
3161 | 4389 | /** |
3162 | | - * Set an offset from UTC in minutes to use for the default timezone setting |
3163 | | - * for anonymous users and new user accounts. |
3164 | | - * |
3165 | | - * This setting is used for most date/time displays in the software, and is |
3166 | | - * overrideable in user preferences. It is *not* used for signature timestamps. |
3167 | | - * |
3168 | | - * You can set it to match the configured server timezone like this: |
3169 | | - * $wgLocalTZoffset = date("Z") / 60; |
3170 | | - * |
3171 | | - * If your server is not configured for the timezone you want, you can set |
3172 | | - * this in conjunction with the signature timezone and override the PHP default |
3173 | | - * timezone like so: |
3174 | | - * $wgLocaltimezone="Europe/Berlin"; |
3175 | | - * date_default_timezone_set( $wgLocaltimezone ); |
3176 | | - * $wgLocalTZoffset = date("Z") / 60; |
3177 | | - * |
3178 | | - * Leave at NULL to show times in universal time (UTC/GMT). |
3179 | | - */ |
3180 | | -$wgLocalTZoffset = null; |
3181 | | - |
3182 | | - |
3183 | | -/** |
3184 | | - * When translating messages with wfMsg(), it is not always clear what should |
3185 | | - * be considered UI messages and what should be content messages. |
3186 | | - * |
3187 | | - * For example, for the English Wikipedia, there should be only one 'mainpage', |
3188 | | - * so when getting the link for 'mainpage', we should treat it as site content |
3189 | | - * and call wfMsgForContent(), but for rendering the text of the link, we call |
3190 | | - * wfMsg(). The code behaves this way by default. However, sites like the |
3191 | | - * Wikimedia Commons do offer different versions of 'mainpage' and the like for |
3192 | | - * different languages. This array provides a way to override the default |
3193 | | - * behavior. For example, to allow language-specific main page and community |
3194 | | - * portal, set |
3195 | | - * |
3196 | | - * $wgForceUIMsgAsContentMsg = array( 'mainpage', 'portal-url' ); |
3197 | | - */ |
3198 | | -$wgForceUIMsgAsContentMsg = array(); |
3199 | | - |
3200 | | - |
3201 | | -/** |
3202 | | - * Authentication plugin. |
3203 | | - */ |
3204 | | -$wgAuth = null; |
3205 | | - |
3206 | | -/** |
3207 | | - * Global list of hooks. |
3208 | | - * Add a hook by doing: |
3209 | | - * $wgHooks['event_name'][] = $function; |
3210 | | - * or: |
3211 | | - * $wgHooks['event_name'][] = array($function, $data); |
3212 | | - * or: |
3213 | | - * $wgHooks['event_name'][] = array($object, 'method'); |
3214 | | - */ |
3215 | | -$wgHooks = array(); |
3216 | | - |
3217 | | -/** |
3218 | 4390 | * The logging system has two levels: an event type, which describes the |
3219 | 4391 | * general category and can be viewed as a named subset of all logs; and |
3220 | 4392 | * an action, which is a specific kind of event that can exist in that |
— | — | @@ -3360,7 +4532,25 @@ |
3361 | 4533 | */ |
3362 | 4534 | $wgLogAutocreatedAccounts = false; |
3363 | 4535 | |
| 4536 | +/** @} */ # end logging } |
| 4537 | + |
| 4538 | +/*************************************************************************//** |
| 4539 | + * @name Special pages (general and miscellaneous) |
| 4540 | + * @{ |
| 4541 | + */ |
| 4542 | + |
3364 | 4543 | /** |
| 4544 | + * Allow special page inclusions such as {{Special:Allpages}} |
| 4545 | + */ |
| 4546 | +$wgAllowSpecialInclusion = true; |
| 4547 | + |
| 4548 | +/** |
| 4549 | + * Set this to an array of special page names to prevent |
| 4550 | + * maintenance/updateSpecialPages.php from updating those pages. |
| 4551 | + */ |
| 4552 | +$wgDisableQueryPageUpdate = false; |
| 4553 | + |
| 4554 | +/** |
3365 | 4555 | * List of special pages, followed by what subtitle they should go under |
3366 | 4556 | * at Special:SpecialPages |
3367 | 4557 | */ |
— | — | @@ -3462,56 +4652,35 @@ |
3463 | 4653 | 'Booksources' => 'other', |
3464 | 4654 | ); |
3465 | 4655 | |
3466 | | -/** |
3467 | | - * Disable the internal MySQL-based search, to allow it to be |
3468 | | - * implemented by an extension instead. |
3469 | | - */ |
3470 | | -$wgDisableInternalSearch = false; |
| 4656 | +/** Whether or not to sort special pages in Special:Specialpages */ |
3471 | 4657 | |
3472 | | -/** |
3473 | | - * Set this to a URL to forward search requests to some external location. |
3474 | | - * If the URL includes '$1', this will be replaced with the URL-encoded |
3475 | | - * search term. |
3476 | | - * |
3477 | | - * For example, to forward to Google you'd have something like: |
3478 | | - * $wgSearchForwardUrl = 'http://www.google.com/search?q=$1' . |
3479 | | - * '&domains=http://example.com' . |
3480 | | - * '&sitesearch=http://example.com' . |
3481 | | - * '&ie=utf-8&oe=utf-8'; |
3482 | | - */ |
3483 | | -$wgSearchForwardUrl = null; |
| 4658 | +$wgSortSpecialPages = true; |
3484 | 4659 | |
3485 | 4660 | /** |
3486 | | - * Set a default target for external links, e.g. _blank to pop up a new window |
| 4661 | + * Filter for Special:Randompage. Part of a WHERE clause |
| 4662 | + * @deprecated as of 1.16, use the SpecialRandomGetRandomTitle hook |
3487 | 4663 | */ |
3488 | | -$wgExternalLinkTarget = false; |
| 4664 | +$wgExtraRandompageSQL = false; |
3489 | 4665 | |
3490 | 4666 | /** |
3491 | | - * If true, external URL links in wiki text will be given the |
3492 | | - * rel="nofollow" attribute as a hint to search engines that |
3493 | | - * they should not be followed for ranking purposes as they |
3494 | | - * are user-supplied and thus subject to spamming. |
| 4667 | + * On Special:Unusedimages, consider images "used", if they are put |
| 4668 | + * into a category. Default (false) is not to count those as used. |
3495 | 4669 | */ |
3496 | | -$wgNoFollowLinks = true; |
| 4670 | +$wgCountCategorizedImagesAsUsed = false; |
3497 | 4671 | |
3498 | 4672 | /** |
3499 | | - * Namespaces in which $wgNoFollowLinks doesn't apply. |
3500 | | - * See Language.php for a list of namespaces. |
| 4673 | + * Maximum number of links to a redirect page listed on |
| 4674 | + * Special:Whatlinkshere/RedirectDestination |
3501 | 4675 | */ |
3502 | | -$wgNoFollowNsExceptions = array(); |
| 4676 | +$wgMaxRedirectLinksRetrieved = 500; |
3503 | 4677 | |
3504 | | -/** |
3505 | | - * If this is set to an array of domains, external links to these domain names |
3506 | | - * (or any subdomains) will not be set to rel="nofollow" regardless of the |
3507 | | - * value of $wgNoFollowLinks. For instance: |
3508 | | - * |
3509 | | - * $wgNoFollowDomainExceptions = array( 'en.wikipedia.org', 'wiktionary.org' ); |
3510 | | - * |
3511 | | - * This would add rel="nofollow" to links to de.wikipedia.org, but not |
3512 | | - * en.wikipedia.org, wiktionary.org, en.wiktionary.org, us.en.wikipedia.org, |
3513 | | - * etc. |
| 4678 | +/** @} */ # end special pages } |
| 4679 | + |
| 4680 | +/*************************************************************************//** |
| 4681 | + * @name Robot (search engine crawler) policy |
| 4682 | + * See also $wgNoFollowLinks. |
| 4683 | + * @{ |
3514 | 4684 | */ |
3515 | | -$wgNoFollowDomainExceptions = array(); |
3516 | 4685 | |
3517 | 4686 | /** |
3518 | 4687 | * Default robot policy. The default policy is to encourage indexing and fol- |
— | — | @@ -3562,253 +4731,78 @@ |
3563 | 4732 | */ |
3564 | 4733 | $wgExemptFromUserRobotsControl = null; |
3565 | 4734 | |
3566 | | -/** |
3567 | | - * Specifies the minimal length of a user password. If set to 0, empty pass- |
3568 | | - * words are allowed. |
3569 | | - */ |
3570 | | -$wgMinimalPasswordLength = 1; |
| 4735 | +/** @} */ # End robot policy } |
3571 | 4736 | |
3572 | | -/** |
3573 | | - * Activate external editor interface for files and pages |
3574 | | - * See http://www.mediawiki.org/wiki/Manual:External_editors |
| 4737 | +/************************************************************************//** |
| 4738 | + * @name AJAX and API |
| 4739 | + * Note: The AJAX entry point which this section refers to is gradually being |
| 4740 | + * replaced by the API entry point, api.php. They are essentially equivalent. |
| 4741 | + * Both of them are used for dynamic client-side features, via XHR. |
| 4742 | + * @{ |
3575 | 4743 | */ |
3576 | | -$wgUseExternalEditor = true; |
3577 | 4744 | |
3578 | | -/** Whether or not to sort special pages in Special:Specialpages */ |
3579 | | - |
3580 | | -$wgSortSpecialPages = true; |
3581 | | - |
3582 | 4745 | /** |
3583 | | - * Specify the name of a skin that should not be presented in the list of a- |
3584 | | - * vailable skins. Use for blacklisting a skin which you do not want to remove |
3585 | | - * from the .../skins/ directory |
3586 | | - */ |
3587 | | -$wgSkipSkin = ''; |
3588 | | -$wgSkipSkins = array(); # More of the same |
3589 | | - |
3590 | | -/** |
3591 | | - * Array of disabled article actions, e.g. view, edit, dublincore, delete, etc. |
3592 | | - */ |
3593 | | -$wgDisabledActions = array(); |
3594 | | - |
3595 | | -/** |
3596 | | - * Disable redirects to special pages and interwiki redirects, which use a 302 |
3597 | | - * and have no "redirected from" link. |
3598 | | - */ |
3599 | | -$wgDisableHardRedirects = false; |
3600 | | - |
3601 | | -/** |
3602 | | - * Set to false to disable application of access keys and tooltips, |
3603 | | - * eg to avoid keyboard conflicts with system keys or as a low-level |
3604 | | - * optimization. |
3605 | | - */ |
3606 | | -$wgEnableTooltipsAndAccesskeys = true; |
3607 | | - |
3608 | | -/** |
3609 | | - * Whether to use DNS blacklists in $wgDnsBlacklistUrls to check for open proxies |
3610 | | - * @since 1.16 |
3611 | | - */ |
3612 | | -$wgEnableDnsBlacklist = false; |
3613 | | - |
3614 | | -/** |
3615 | | - * @deprecated Use $wgEnableDnsBlacklist instead, only kept for backward |
3616 | | - * compatibility |
3617 | | - */ |
3618 | | -$wgEnableSorbs = false; |
3619 | | - |
3620 | | -/** |
3621 | | - * List of DNS blacklists to use, if $wgEnableDnsBlacklist is true |
3622 | | - * @since 1.16 |
3623 | | - */ |
3624 | | -$wgDnsBlacklistUrls = array( 'http.dnsbl.sorbs.net.' ); |
3625 | | - |
3626 | | -/** |
3627 | | - * @deprecated Use $wgDnsBlacklistUrls instead, only kept for backward |
3628 | | - * compatibility |
3629 | | - */ |
3630 | | -$wgSorbsUrl = array(); |
3631 | | - |
3632 | | -/** |
3633 | | - * Proxy whitelist, list of addresses that are assumed to be non-proxy despite |
3634 | | - * what the other methods might say. |
3635 | | - */ |
3636 | | -$wgProxyWhitelist = array(); |
3637 | | - |
3638 | | -/** |
3639 | | - * Simple rate limiter options to brake edit floods. Maximum number actions |
3640 | | - * allowed in the given number of seconds; after that the violating client re- |
3641 | | - * ceives HTTP 500 error pages until the period elapses. |
| 4746 | + * Enable the MediaWiki API for convenient access to |
| 4747 | + * machine-readable data via api.php |
3642 | 4748 | * |
3643 | | - * array( 4, 60 ) for a maximum of 4 hits in 60 seconds. |
3644 | | - * |
3645 | | - * This option set is experimental and likely to change. Requires memcached. |
| 4749 | + * See http://www.mediawiki.org/wiki/API |
3646 | 4750 | */ |
3647 | | -$wgRateLimits = array( |
3648 | | - 'edit' => array( |
3649 | | - 'anon' => null, // for any and all anonymous edits (aggregate) |
3650 | | - 'user' => null, // for each logged-in user |
3651 | | - 'newbie' => null, // for each recent (autoconfirmed) account; overrides 'user' |
3652 | | - 'ip' => null, // for each anon and recent account |
3653 | | - 'subnet' => null, // ... with final octet removed |
3654 | | - ), |
3655 | | - 'move' => array( |
3656 | | - 'user' => null, |
3657 | | - 'newbie' => null, |
3658 | | - 'ip' => null, |
3659 | | - 'subnet' => null, |
3660 | | - ), |
3661 | | - 'mailpassword' => array( |
3662 | | - 'anon' => null, |
3663 | | - ), |
3664 | | - 'emailuser' => array( |
3665 | | - 'user' => null, |
3666 | | - ), |
3667 | | - ); |
| 4751 | +$wgEnableAPI = true; |
3668 | 4752 | |
3669 | 4753 | /** |
3670 | | - * Set to a filename to log rate limiter hits. |
| 4754 | + * Allow the API to be used to perform write operations |
| 4755 | + * (page edits, rollback, etc.) when an authorised user |
| 4756 | + * accesses it |
3671 | 4757 | */ |
3672 | | -$wgRateLimitLog = null; |
| 4758 | +$wgEnableWriteAPI = true; |
3673 | 4759 | |
3674 | 4760 | /** |
3675 | | - * Array of groups which should never trigger the rate limiter |
3676 | | - * |
3677 | | - * @deprecated as of 1.13.0, the preferred method is using |
3678 | | - * $wgGroupPermissions[]['noratelimit']. However, this will still |
3679 | | - * work if desired. |
3680 | | - * |
3681 | | - * $wgRateLimitsExcludedGroups = array( 'sysop', 'bureaucrat' ); |
| 4761 | + * API module extensions |
| 4762 | + * Associative array mapping module name to class name. |
| 4763 | + * Extension modules may override the core modules. |
3682 | 4764 | */ |
3683 | | -$wgRateLimitsExcludedGroups = array(); |
| 4765 | +$wgAPIModules = array(); |
| 4766 | +$wgAPIMetaModules = array(); |
| 4767 | +$wgAPIPropModules = array(); |
| 4768 | +$wgAPIListModules = array(); |
3684 | 4769 | |
3685 | 4770 | /** |
3686 | | - * Array of IPs which should be excluded from rate limits. |
3687 | | - * This may be useful for whitelisting NAT gateways for conferences, etc. |
| 4771 | + * Maximum amount of rows to scan in a DB query in the API |
| 4772 | + * The default value is generally fine |
3688 | 4773 | */ |
3689 | | -$wgRateLimitsExcludedIPs = array(); |
| 4774 | +$wgAPIMaxDBRows = 5000; |
3690 | 4775 | |
3691 | 4776 | /** |
3692 | | - * On Special:Unusedimages, consider images "used", if they are put |
3693 | | - * into a category. Default (false) is not to count those as used. |
| 4777 | + * The maximum size (in bytes) of an API result. |
| 4778 | + * Don't set this lower than $wgMaxArticleSize*1024 |
3694 | 4779 | */ |
3695 | | -$wgCountCategorizedImagesAsUsed = false; |
| 4780 | +$wgAPIMaxResultSize = 8388608; |
3696 | 4781 | |
3697 | 4782 | /** |
3698 | | - * External stores allow including content |
3699 | | - * from non database sources following URL links |
3700 | | - * |
3701 | | - * Short names of ExternalStore classes may be specified in an array here: |
3702 | | - * $wgExternalStores = array("http","file","custom")... |
3703 | | - * |
3704 | | - * CAUTION: Access to database might lead to code execution |
| 4783 | + * The maximum number of uncached diffs that can be retrieved in one API |
| 4784 | + * request. Set this to 0 to disable API diffs altogether |
3705 | 4785 | */ |
3706 | | -$wgExternalStores = false; |
| 4786 | +$wgAPIMaxUncachedDiffs = 1; |
3707 | 4787 | |
3708 | 4788 | /** |
3709 | | - * An array of external mysql servers, e.g. |
3710 | | - * $wgExternalServers = array( 'cluster1' => array( 'srv28', 'srv29', 'srv30' ) ); |
3711 | | - * Used by LBFactory_Simple, may be ignored if $wgLBFactoryConf is set to another class. |
| 4789 | + * Log file or URL (TCP or UDP) to log API requests to, or false to disable |
| 4790 | + * API request logging |
3712 | 4791 | */ |
3713 | | -$wgExternalServers = array(); |
| 4792 | +$wgAPIRequestLog = false; |
3714 | 4793 | |
3715 | 4794 | /** |
3716 | | - * The place to put new revisions, false to put them in the local text table. |
3717 | | - * Part of a URL, e.g. DB://cluster1 |
3718 | | - * |
3719 | | - * Can be an array instead of a single string, to enable data distribution. Keys |
3720 | | - * must be consecutive integers, starting at zero. Example: |
3721 | | - * |
3722 | | - * $wgDefaultExternalStore = array( 'DB://cluster1', 'DB://cluster2' ); |
3723 | | - * |
| 4795 | + * Cache the API help text for up to an hour. Disable this during API |
| 4796 | + * debugging and development |
3724 | 4797 | */ |
3725 | | -$wgDefaultExternalStore = false; |
| 4798 | +$wgAPICacheHelp = true; |
3726 | 4799 | |
3727 | 4800 | /** |
3728 | | - * Revision text may be cached in $wgMemc to reduce load on external storage |
3729 | | - * servers and object extraction overhead for frequently-loaded revisions. |
3730 | | - * |
3731 | | - * Set to 0 to disable, or number of seconds before cache expiry. |
| 4801 | + * Set the timeout for the API help text cache. Ignored if $wgAPICacheHelp |
| 4802 | + * is false. |
3732 | 4803 | */ |
3733 | | -$wgRevisionCacheExpiry = 0; |
| 4804 | +$wgAPICacheHelpTimeout = 60*60; |
3734 | 4805 | |
3735 | 4806 | /** |
3736 | | - * list of trusted media-types and mime types. |
3737 | | - * Use the MEDIATYPE_xxx constants to represent media types. |
3738 | | - * This list is used by Image::isSafeFile |
3739 | | - * |
3740 | | - * Types not listed here will have a warning about unsafe content |
3741 | | - * displayed on the images description page. It would also be possible |
3742 | | - * to use this for further restrictions, like disabling direct |
3743 | | - * [[media:...]] links for non-trusted formats. |
3744 | | - */ |
3745 | | -$wgTrustedMediaFormats= array( |
3746 | | - MEDIATYPE_BITMAP, //all bitmap formats |
3747 | | - MEDIATYPE_AUDIO, //all audio formats |
3748 | | - MEDIATYPE_VIDEO, //all plain video formats |
3749 | | - "image/svg+xml", //svg (only needed if inline rendering of svg is not supported) |
3750 | | - "application/pdf", //PDF files |
3751 | | - #"application/x-shockwave-flash", //flash/shockwave movie |
3752 | | -); |
3753 | | - |
3754 | | -/** |
3755 | | - * Allow special page inclusions such as {{Special:Allpages}} |
3756 | | - */ |
3757 | | -$wgAllowSpecialInclusion = true; |
3758 | | - |
3759 | | -/** |
3760 | | - * Timeout for HTTP requests done internally |
3761 | | - */ |
3762 | | -$wgHTTPTimeout = 25; |
3763 | | - |
3764 | | -/** |
3765 | | - * Timeout for Asynchronous (background) HTTP requests |
3766 | | - */ |
3767 | | -$wgAsyncHTTPTimeout = 25; |
3768 | | - |
3769 | | -/** |
3770 | | - * Proxy to use for CURL requests. |
3771 | | - */ |
3772 | | -$wgHTTPProxy = false; |
3773 | | - |
3774 | | -/** |
3775 | | - * Enable interwiki transcluding. Only when iw_trans=1. |
3776 | | - */ |
3777 | | -$wgEnableScaryTranscluding = false; |
3778 | | -/** |
3779 | | - * Expiry time for interwiki transclusion |
3780 | | - */ |
3781 | | -$wgTranscludeCacheExpiry = 3600; |
3782 | | - |
3783 | | -/** |
3784 | | - * Support blog-style "trackbacks" for articles. See |
3785 | | - * http://www.sixapart.com/pronet/docs/trackback_spec for details. |
3786 | | - */ |
3787 | | -$wgUseTrackbacks = false; |
3788 | | - |
3789 | | -/** |
3790 | | - * Enable filtering of categories in Recentchanges |
3791 | | - */ |
3792 | | -$wgAllowCategorizedRecentChanges = false ; |
3793 | | - |
3794 | | -/** |
3795 | | - * Number of jobs to perform per request. May be less than one in which case |
3796 | | - * jobs are performed probabalistically. If this is zero, jobs will not be done |
3797 | | - * during ordinary apache requests. In this case, maintenance/runJobs.php should |
3798 | | - * be run periodically. |
3799 | | - */ |
3800 | | -$wgJobRunRate = 1; |
3801 | | - |
3802 | | -/** |
3803 | | - * Number of rows to update per job |
3804 | | - */ |
3805 | | -$wgUpdateRowsPerJob = 500; |
3806 | | - |
3807 | | -/** |
3808 | | - * Number of rows to update per query |
3809 | | - */ |
3810 | | -$wgUpdateRowsPerQuery = 100; |
3811 | | - |
3812 | | -/** |
3813 | 4807 | * Enable AJAX framework |
3814 | 4808 | */ |
3815 | 4809 | $wgUseAjax = true; |
— | — | @@ -3837,44 +4831,40 @@ |
3838 | 4832 | $wgAjaxLicensePreview = true; |
3839 | 4833 | |
3840 | 4834 | /** |
3841 | | - * Allow DISPLAYTITLE to change title display |
| 4835 | + * Settings for incoming cross-site AJAX requests: |
| 4836 | + * Newer browsers support cross-site AJAX when the target resource allows requests |
| 4837 | + * from the origin domain by the Access-Control-Allow-Origin header. |
| 4838 | + * This is currently only used by the API (requests to api.php) |
| 4839 | + * $wgCrossSiteAJAXdomains can be set using a wildcard syntax: |
| 4840 | + * |
| 4841 | + * '*' matches any number of characters |
| 4842 | + * '?' matches any 1 character |
| 4843 | + * |
| 4844 | + * Example: |
| 4845 | + $wgCrossSiteAJAXdomains = array( |
| 4846 | + 'www.mediawiki.org', |
| 4847 | + '*.wikipedia.org', |
| 4848 | + '*.wikimedia.org', |
| 4849 | + '*.wiktionary.org', |
| 4850 | + ); |
| 4851 | + * |
3842 | 4852 | */ |
3843 | | -$wgAllowDisplayTitle = true; |
| 4853 | +$wgCrossSiteAJAXdomains = array(); |
3844 | 4854 | |
3845 | 4855 | /** |
3846 | | - * for consistency, restrict DISPLAYTITLE to titles that normalize to the same canonical DB key |
| 4856 | + * Domains that should not be allowed to make AJAX requests, |
| 4857 | + * even if they match one of the domains allowed by $wgCrossSiteAJAXdomains |
| 4858 | + * Uses the same syntax as $wgCrossSiteAJAXdomains |
3847 | 4859 | */ |
3848 | | -$wgRestrictDisplayTitle = true; |
3849 | 4860 | |
3850 | | -/** |
3851 | | - * Array of usernames which may not be registered or logged in from |
3852 | | - * Maintenance scripts can still use these |
3853 | | - */ |
3854 | | -$wgReservedUsernames = array( |
3855 | | - 'MediaWiki default', // Default 'Main Page' and MediaWiki: message pages |
3856 | | - 'Conversion script', // Used for the old Wikipedia software upgrade |
3857 | | - 'Maintenance script', // Maintenance scripts which perform editing, image import script |
3858 | | - 'Template namespace initialisation script', // Used in 1.2->1.3 upgrade |
3859 | | - 'msg:double-redirect-fixer', // Automatic double redirect fix |
3860 | | - 'msg:usermessage-editor', // Default user for leaving user messages |
3861 | | -); |
| 4861 | +$wgCrossSiteAJAXdomainExceptions = array(); |
3862 | 4862 | |
3863 | | -/** |
3864 | | - * MediaWiki will reject HTMLesque tags in uploaded files due to idiotic browsers which can't |
3865 | | - * perform basic stuff like MIME detection and which are vulnerable to further idiots uploading |
3866 | | - * crap files as images. When this directive is on, <title> will be allowed in files with |
3867 | | - * an "image/svg+xml" MIME type. You should leave this disabled if your web server is misconfigured |
3868 | | - * and doesn't send appropriate MIME types for SVG images. |
3869 | | - */ |
3870 | | -$wgAllowTitlesInSVG = false; |
| 4863 | +/** @} */ # End AJAX and API } |
3871 | 4864 | |
3872 | | -/** |
3873 | | - * Array of namespaces which can be deemed to contain valid "content", as far |
3874 | | - * as the site statistics are concerned. Useful if additional namespaces also |
3875 | | - * contain "content" which should be considered when generating a count of the |
3876 | | - * number of articles in the wiki. |
| 4865 | +/************************************************************************//** |
| 4866 | + * @name Shell and process control |
| 4867 | + * @{ |
3877 | 4868 | */ |
3878 | | -$wgContentNamespaces = array( NS_MAIN ); |
3879 | 4869 | |
3880 | 4870 | /** |
3881 | 4871 | * Maximum amount of virtual memory available to shell processes under linux, in KB. |
— | — | @@ -3898,193 +4888,85 @@ |
3899 | 4889 | $wgPhpCli = '/usr/bin/php'; |
3900 | 4890 | |
3901 | 4891 | /** |
3902 | | - * DJVU settings |
3903 | | - * Path of the djvudump executable |
3904 | | - * Enable this and $wgDjvuRenderer to enable djvu rendering |
| 4892 | + * Locale for LC_CTYPE, to work around http://bugs.php.net/bug.php?id=45132 |
| 4893 | + * For Unix-like operating systems, set this to to a locale that has a UTF-8 |
| 4894 | + * character set. Only the character set is relevant. |
3905 | 4895 | */ |
3906 | | -# $wgDjvuDump = 'djvudump'; |
3907 | | -$wgDjvuDump = null; |
| 4896 | +$wgShellLocale = 'en_US.utf8'; |
3908 | 4897 | |
3909 | | -/** |
3910 | | - * Path of the ddjvu DJVU renderer |
3911 | | - * Enable this and $wgDjvuDump to enable djvu rendering |
3912 | | - */ |
3913 | | -# $wgDjvuRenderer = 'ddjvu'; |
3914 | | -$wgDjvuRenderer = null; |
| 4898 | +/** @} */ # End shell } |
3915 | 4899 | |
3916 | | -/** |
3917 | | - * Path of the djvutxt DJVU text extraction utility |
3918 | | - * Enable this and $wgDjvuDump to enable text layer extraction from djvu files |
| 4900 | +/************************************************************************//** |
| 4901 | + * @name HTTP client |
| 4902 | + * @{ |
3919 | 4903 | */ |
3920 | | -# $wgDjvuTxt = 'djvutxt'; |
3921 | | -$wgDjvuTxt = null; |
3922 | 4904 | |
3923 | 4905 | /** |
3924 | | - * Path of the djvutoxml executable |
3925 | | - * This works like djvudump except much, much slower as of version 3.5. |
3926 | | - * |
3927 | | - * For now I recommend you use djvudump instead. The djvuxml output is |
3928 | | - * probably more stable, so we'll switch back to it as soon as they fix |
3929 | | - * the efficiency problem. |
3930 | | - * http://sourceforge.net/tracker/index.php?func=detail&aid=1704049&group_id=32953&atid=406583 |
| 4906 | + * Timeout for HTTP requests done internally |
3931 | 4907 | */ |
3932 | | -# $wgDjvuToXML = 'djvutoxml'; |
3933 | | -$wgDjvuToXML = null; |
| 4908 | +$wgHTTPTimeout = 25; |
3934 | 4909 | |
3935 | | - |
3936 | 4910 | /** |
3937 | | - * Shell command for the DJVU post processor |
3938 | | - * Default: pnmtopng, since ddjvu generates ppm output |
3939 | | - * Set this to false to output the ppm file directly. |
| 4911 | + * Timeout for Asynchronous (background) HTTP requests |
3940 | 4912 | */ |
3941 | | -$wgDjvuPostProcessor = 'pnmtojpeg'; |
3942 | | -/** |
3943 | | - * File extension for the DJVU post processor output |
3944 | | - */ |
3945 | | -$wgDjvuOutputExtension = 'jpg'; |
| 4913 | +$wgAsyncHTTPTimeout = 25; |
3946 | 4914 | |
3947 | 4915 | /** |
3948 | | - * Enable the MediaWiki API for convenient access to |
3949 | | - * machine-readable data via api.php |
3950 | | - * |
3951 | | - * See http://www.mediawiki.org/wiki/API |
| 4916 | + * Proxy to use for CURL requests. |
3952 | 4917 | */ |
3953 | | -$wgEnableAPI = true; |
| 4918 | +$wgHTTPProxy = false; |
3954 | 4919 | |
3955 | | -/** |
3956 | | - * Allow the API to be used to perform write operations |
3957 | | - * (page edits, rollback, etc.) when an authorised user |
3958 | | - * accesses it |
3959 | | - */ |
3960 | | -$wgEnableWriteAPI = true; |
| 4920 | +/** @} */ # End HTTP client } |
3961 | 4921 | |
3962 | | -/** |
3963 | | - * API module extensions |
3964 | | - * Associative array mapping module name to class name. |
3965 | | - * Extension modules may override the core modules. |
| 4922 | +/************************************************************************//** |
| 4923 | + * @name Job queue |
| 4924 | + * See also $wgEnotifUseJobQ. |
| 4925 | + * @{ |
3966 | 4926 | */ |
3967 | | -$wgAPIModules = array(); |
3968 | | -$wgAPIMetaModules = array(); |
3969 | | -$wgAPIPropModules = array(); |
3970 | | -$wgAPIListModules = array(); |
3971 | 4927 | |
3972 | 4928 | /** |
3973 | | - * Maximum amount of rows to scan in a DB query in the API |
3974 | | - * The default value is generally fine |
| 4929 | + * Number of jobs to perform per request. May be less than one in which case |
| 4930 | + * jobs are performed probabalistically. If this is zero, jobs will not be done |
| 4931 | + * during ordinary apache requests. In this case, maintenance/runJobs.php should |
| 4932 | + * be run periodically. |
3975 | 4933 | */ |
3976 | | -$wgAPIMaxDBRows = 5000; |
| 4934 | +$wgJobRunRate = 1; |
3977 | 4935 | |
3978 | 4936 | /** |
3979 | | - * The maximum size (in bytes) of an API result. |
3980 | | - * Don't set this lower than $wgMaxArticleSize*1024 |
| 4937 | + * Number of rows to update per job |
3981 | 4938 | */ |
3982 | | -$wgAPIMaxResultSize = 8388608; |
| 4939 | +$wgUpdateRowsPerJob = 500; |
3983 | 4940 | |
3984 | 4941 | /** |
3985 | | - * The maximum number of uncached diffs that can be retrieved in one API |
3986 | | - * request. Set this to 0 to disable API diffs altogether |
| 4942 | + * Number of rows to update per query |
3987 | 4943 | */ |
3988 | | -$wgAPIMaxUncachedDiffs = 1; |
| 4944 | +$wgUpdateRowsPerQuery = 100; |
3989 | 4945 | |
3990 | | -/** |
3991 | | - * Log file or URL (TCP or UDP) to log API requests to, or false to disable |
3992 | | - * API request logging |
3993 | | - */ |
3994 | | -$wgAPIRequestLog = false; |
| 4946 | +/** @} */ # End job queue } |
3995 | 4947 | |
3996 | | -/** |
3997 | | - * Cache the API help text for up to an hour. Disable this during API |
3998 | | - * debugging and development |
| 4948 | +/************************************************************************//** |
| 4949 | + * @name Miscellaneous |
| 4950 | + * @{ |
3999 | 4951 | */ |
4000 | | -$wgAPICacheHelp = true; |
4001 | 4952 | |
4002 | | -/** |
4003 | | - * Set the timeout for the API help text cache. Ignored if $wgAPICacheHelp |
4004 | | - * is false. |
4005 | | - */ |
4006 | | -$wgAPICacheHelpTimeout = 60*60; |
| 4953 | +/** Allow the "info" action, very inefficient at the moment */ |
| 4954 | +$wgAllowPageInfo = false; |
4007 | 4955 | |
4008 | | -/** |
4009 | | - * Parser test suite files to be run by parserTests.php when no specific |
4010 | | - * filename is passed to it. |
4011 | | - * |
4012 | | - * Extensions may add their own tests to this array, or site-local tests |
4013 | | - * may be added via LocalSettings.php |
4014 | | - * |
4015 | | - * Use full paths. |
4016 | | - */ |
4017 | | -$wgParserTestFiles = array( |
4018 | | - "$IP/maintenance/parserTests.txt", |
4019 | | - "$IP/maintenance/ExtraParserTests.txt" |
4020 | | -); |
| 4956 | +/** Name of the external diff engine to use */ |
| 4957 | +$wgExternalDiffEngine = false; |
4021 | 4958 | |
4022 | 4959 | /** |
4023 | | - * If configured, specifies target CodeReview installation to send test |
4024 | | - * result data from 'parserTests.php --upload' |
4025 | | - * |
4026 | | - * Something like this: |
4027 | | - * $wgParserTestRemote = array( |
4028 | | - * 'api-url' => 'http://www.mediawiki.org/w/api.php', |
4029 | | - * 'repo' => 'MediaWiki', |
4030 | | - * 'suite' => 'ParserTests', |
4031 | | - * 'path' => '/trunk/phase3', // not used client-side; for reference |
4032 | | - * 'secret' => 'qmoicj3mc4mcklmqw', // Shared secret used in HMAC validation |
4033 | | - * ); |
| 4960 | + * Array of disabled article actions, e.g. view, edit, dublincore, delete, etc. |
4034 | 4961 | */ |
4035 | | -$wgParserTestRemote = false; |
| 4962 | +$wgDisabledActions = array(); |
4036 | 4963 | |
4037 | 4964 | /** |
4038 | | - * Break out of framesets. This can be used to prevent external sites from |
4039 | | - * framing your site with ads. |
| 4965 | + * Disable redirects to special pages and interwiki redirects, which use a 302 |
| 4966 | + * and have no "redirected from" link. |
4040 | 4967 | */ |
4041 | | -$wgBreakFrames = false; |
| 4968 | +$wgDisableHardRedirects = false; |
4042 | 4969 | |
4043 | 4970 | /** |
4044 | | - * Set this to an array of special page names to prevent |
4045 | | - * maintenance/updateSpecialPages.php from updating those pages. |
4046 | | - */ |
4047 | | -$wgDisableQueryPageUpdate = false; |
4048 | | - |
4049 | | -/** |
4050 | | - * Disable output compression (enabled by default if zlib is available) |
4051 | | - */ |
4052 | | -$wgDisableOutputCompression = false; |
4053 | | - |
4054 | | -/** |
4055 | | - * If lag is higher than $wgSlaveLagWarning, show a warning in some special |
4056 | | - * pages (like watchlist). If the lag is higher than $wgSlaveLagCritical, |
4057 | | - * show a more obvious warning. |
4058 | | - */ |
4059 | | -$wgSlaveLagWarning = 10; |
4060 | | -$wgSlaveLagCritical = 30; |
4061 | | - |
4062 | | -/** |
4063 | | - * Parser configuration. Associative array with the following members: |
4064 | | - * |
4065 | | - * class The class name |
4066 | | - * |
4067 | | - * preprocessorClass The preprocessor class. Two classes are currently available: |
4068 | | - * Preprocessor_Hash, which uses plain PHP arrays for tempoarary |
4069 | | - * storage, and Preprocessor_DOM, which uses the DOM module for |
4070 | | - * temporary storage. Preprocessor_DOM generally uses less memory; |
4071 | | - * the speed of the two is roughly the same. |
4072 | | - * |
4073 | | - * If this parameter is not given, it uses Preprocessor_DOM if the |
4074 | | - * DOM module is available, otherwise it uses Preprocessor_Hash. |
4075 | | - * |
4076 | | - * The entire associative array will be passed through to the constructor as |
4077 | | - * the first parameter. Note that only Setup.php can use this variable -- |
4078 | | - * the configuration will change at runtime via $wgParser member functions, so |
4079 | | - * the contents of this variable will be out-of-date. The variable can only be |
4080 | | - * changed during LocalSettings.php, in particular, it can't be changed during |
4081 | | - * an extension setup function. |
4082 | | - */ |
4083 | | -$wgParserConf = array( |
4084 | | - 'class' => 'Parser', |
4085 | | - #'preprocessorClass' => 'Preprocessor_Hash', |
4086 | | -); |
4087 | | - |
4088 | | -/** |
4089 | 4971 | * LinkHolderArray batch size |
4090 | 4972 | * For debugging |
4091 | 4973 | */ |
— | — | @@ -4097,38 +4979,6 @@ |
4098 | 4980 | $wgRegisterInternalExternals = false; |
4099 | 4981 | |
4100 | 4982 | /** |
4101 | | - * Hooks that are used for outputting exceptions. Format is: |
4102 | | - * $wgExceptionHooks[] = $funcname |
4103 | | - * or: |
4104 | | - * $wgExceptionHooks[] = array( $class, $funcname ) |
4105 | | - * Hooks should return strings or false |
4106 | | - */ |
4107 | | -$wgExceptionHooks = array(); |
4108 | | - |
4109 | | -/** |
4110 | | - * Page property link table invalidation lists. When a page property |
4111 | | - * changes, this may require other link tables to be updated (eg |
4112 | | - * adding __HIDDENCAT__ means the hiddencat tracking category will |
4113 | | - * have been added, so the categorylinks table needs to be rebuilt). |
4114 | | - * This array can be added to by extensions. |
4115 | | - */ |
4116 | | -$wgPagePropLinkInvalidations = array( |
4117 | | - 'hiddencat' => 'categorylinks', |
4118 | | -); |
4119 | | - |
4120 | | -/** |
4121 | | - * Maximum number of links to a redirect page listed on |
4122 | | - * Special:Whatlinkshere/RedirectDestination |
4123 | | - */ |
4124 | | -$wgMaxRedirectLinksRetrieved = 500; |
4125 | | - |
4126 | | -/** |
4127 | | - * Maximum number of calls per parse to expensive parser functions such as |
4128 | | - * PAGESINCATEGORY. |
4129 | | - */ |
4130 | | -$wgExpensiveParserFunctionLimit = 100; |
4131 | | - |
4132 | | -/** |
4133 | 4983 | * Maximum number of pages to move at once when moving subpages with a page. |
4134 | 4984 | */ |
4135 | 4985 | $wgMaximumMovedPages = 100; |
— | — | @@ -4140,138 +4990,12 @@ |
4141 | 4991 | $wgFixDoubleRedirects = false; |
4142 | 4992 | |
4143 | 4993 | /** |
4144 | | - * Max number of redirects to follow when resolving redirects. |
4145 | | - * 1 means only the first redirect is followed (default behavior). |
4146 | | - * 0 or less means no redirects are followed. |
4147 | | - */ |
4148 | | -$wgMaxRedirects = 1; |
4149 | | - |
4150 | | -/** |
4151 | | - * Array of invalid page redirect targets. |
4152 | | - * Attempting to create a redirect to any of the pages in this array |
4153 | | - * will make the redirect fail. |
4154 | | - * Userlogout is hard-coded, so it does not need to be listed here. |
4155 | | - * (bug 10569) Disallow Mypage and Mytalk as well. |
4156 | | - * |
4157 | | - * As of now, this only checks special pages. Redirects to pages in |
4158 | | - * other namespaces cannot be invalidated by this variable. |
4159 | | - */ |
4160 | | -$wgInvalidRedirectTargets = array( 'Filepath', 'Mypage', 'Mytalk' ); |
4161 | | - |
4162 | | -/** |
4163 | | - * Array of namespaces to generate a sitemap for when the |
4164 | | - * maintenance/generateSitemap.php script is run, or false if one is to be ge- |
4165 | | - * nerated for all namespaces. |
4166 | | - */ |
4167 | | -$wgSitemapNamespaces = false; |
4168 | | - |
4169 | | - |
4170 | | -/** |
4171 | | - * If user doesn't specify any edit summary when making a an edit, MediaWiki |
4172 | | - * will try to automatically create one. This feature can be disabled by set- |
4173 | | - * ting this variable false. |
4174 | | - */ |
4175 | | -$wgUseAutomaticEditSummaries = true; |
4176 | | - |
4177 | | -/** |
4178 | | - * Limit password attempts to X attempts per Y seconds per IP per account. |
4179 | | - * Requires memcached. |
4180 | | - */ |
4181 | | -$wgPasswordAttemptThrottle = array( 'count' => 5, 'seconds' => 300 ); |
4182 | | - |
4183 | | -/** |
4184 | | - * Display user edit counts in various prominent places. |
4185 | | - */ |
4186 | | -$wgEdititis = false; |
4187 | | - |
4188 | | -/** |
4189 | | - * Enable the UniversalEditButton for browsers that support it |
4190 | | - * (currently only Firefox with an extension) |
4191 | | - * See http://universaleditbutton.org for more background information |
4192 | | - */ |
4193 | | -$wgUniversalEditButton = true; |
4194 | | - |
4195 | | -/** |
4196 | | - * Should we allow a broader set of characters in id attributes, per HTML5? If |
4197 | | - * not, use only HTML 4-compatible IDs. This option is for testing -- when the |
4198 | | - * functionality is ready, it will be on by default with no option. |
4199 | | - * |
4200 | | - * Currently this appears to work fine in Chrome 4 and 5, Firefox 3.5 and 3.6, IE6 |
4201 | | - * and 8, and Opera 10.50, but it fails in Opera 10.10: Unicode IDs don't seem |
4202 | | - * to work as anchors. So not quite ready for general use yet. |
4203 | | - */ |
4204 | | -$wgExperimentalHtmlIds = false; |
4205 | | - |
4206 | | -/** |
4207 | | - * Search form behavior |
4208 | | - * true = use Go & Search buttons |
4209 | | - * false = use Go button & Advanced search link |
4210 | | - */ |
4211 | | -$wgUseTwoButtonsSearchForm = true; |
4212 | | - |
4213 | | -/** |
4214 | | - * Search form behavior for Vector skin only |
4215 | | - * true = use an icon search button |
4216 | | - * false = use Go & Search buttons |
4217 | | - */ |
4218 | | -$wgVectorUseSimpleSearch = false; |
4219 | | - |
4220 | | -/** |
4221 | | - * Watch and unwatch as an icon rather than a link for Vector skin only |
4222 | | - * true = use an icon watch/unwatch button |
4223 | | - * false = use watch/unwatch text link |
4224 | | - */ |
4225 | | -$wgVectorUseIconWatch = false; |
4226 | | - |
4227 | | -/** |
4228 | | - * Show the name of the current variant as a label in the variants drop-down menu |
4229 | | - */ |
4230 | | -$wgVectorShowVariantName = false; |
4231 | | - |
4232 | | -/** |
4233 | | - * Add extra stylesheets for Vector - This is only being used so that we can play around with different options while |
4234 | | - * keeping our CSS code in the SVN and not having to change the main Vector styles. This will probably go away later on. |
4235 | | - * null = add no extra styles |
4236 | | - * array = list of style paths relative to skins/vector/ |
4237 | | - */ |
4238 | | -$wgVectorExtraStyles = null; |
4239 | | - |
4240 | | -/** |
4241 | | - * Preprocessor caching threshold |
4242 | | - */ |
4243 | | -$wgPreprocessorCacheThreshold = 1000; |
4244 | | - |
4245 | | -/** |
4246 | | - * Allow filtering by change tag in recentchanges, history, etc |
4247 | | - * Has no effect if no tags are defined in valid_tag. |
4248 | | - */ |
4249 | | -$wgUseTagFilter = true; |
4250 | | - |
4251 | | -/** |
4252 | 4994 | * Allow redirection to another page when a user logs in. |
4253 | 4995 | * To enable, set to a string like 'Main Page' |
4254 | 4996 | */ |
4255 | 4997 | $wgRedirectOnLogin = null; |
4256 | 4998 | |
4257 | 4999 | /** |
4258 | | - * Characters to prevent during new account creations. |
4259 | | - * This is used in a regular expression character class during |
4260 | | - * registration (regex metacharacters like / are escaped). |
4261 | | - */ |
4262 | | -$wgInvalidUsernameCharacters = '@'; |
4263 | | - |
4264 | | -/** |
4265 | | - * Character used as a delimiter when testing for interwiki userrights |
4266 | | - * (In Special:UserRights, it is possible to modify users on different |
4267 | | - * databases if the delimiter is used, e.g. Someuser@enwiki). |
4268 | | - * |
4269 | | - * It is recommended that you have this delimiter in |
4270 | | - * $wgInvalidUsernameCharacters above, or you will not be able to |
4271 | | - * modify the user rights of those users via Special:UserRights |
4272 | | - */ |
4273 | | -$wgUserrightsInterwikiDelimiter = '@'; |
4274 | | - |
4275 | | -/** |
4276 | 5000 | * Configuration for processing pool control, for use in high-traffic wikis. |
4277 | 5001 | * An implementation is provided in the PoolCounter extension. |
4278 | 5002 | * |
— | — | @@ -4288,104 +5012,12 @@ |
4289 | 5013 | $wgPoolCounterConf = null; |
4290 | 5014 | |
4291 | 5015 | /** |
4292 | | - * Use some particular type of external authentication. The specific |
4293 | | - * authentication module you use will normally require some extra settings to |
4294 | | - * be specified. |
4295 | | - * |
4296 | | - * null indicates no external authentication is to be used. Otherwise, |
4297 | | - * $wgExternalAuthType must be the name of a non-abstract class that extends |
4298 | | - * ExternalUser. |
4299 | | - * |
4300 | | - * Core authentication modules can be found in includes/extauth/. |
4301 | | - */ |
4302 | | -$wgExternalAuthType = null; |
4303 | | - |
4304 | | -/** |
4305 | | - * Configuration for the external authentication. This may include arbitrary |
4306 | | - * keys that depend on the authentication mechanism. For instance, |
4307 | | - * authentication against another web app might require that the database login |
4308 | | - * info be provided. Check the file where your auth mechanism is defined for |
4309 | | - * info on what to put here. |
4310 | | - */ |
4311 | | -$wgExternalAuthConfig = array(); |
4312 | | - |
4313 | | -/** |
4314 | | - * When should we automatically create local accounts when external accounts |
4315 | | - * already exist, if using ExternalAuth? Can have three values: 'never', |
4316 | | - * 'login', 'view'. 'view' requires the external database to support cookies, |
4317 | | - * and implies 'login'. |
4318 | | - * |
4319 | | - * TODO: Implement 'view' (currently behaves like 'login'). |
4320 | | - */ |
4321 | | -$wgAutocreatePolicy = 'login'; |
4322 | | - |
4323 | | -/** |
4324 | | - * Policies for how each preference is allowed to be changed, in the presence |
4325 | | - * of external authentication. The keys are preference keys, e.g., 'password' |
4326 | | - * or 'emailaddress' (see Preferences.php et al.). The value can be one of the |
4327 | | - * following: |
4328 | | - * |
4329 | | - * - local: Allow changes to this pref through the wiki interface but only |
4330 | | - * apply them locally (default). |
4331 | | - * - semiglobal: Allow changes through the wiki interface and try to apply them |
4332 | | - * to the foreign database, but continue on anyway if that fails. |
4333 | | - * - global: Allow changes through the wiki interface, but only let them go |
4334 | | - * through if they successfully update the foreign database. |
4335 | | - * - message: Allow no local changes for linked accounts; replace the change |
4336 | | - * form with a message provided by the auth plugin, telling the user how to |
4337 | | - * change the setting externally (maybe providing a link, etc.). If the auth |
4338 | | - * plugin provides no message for this preference, hide it entirely. |
4339 | | - * |
4340 | | - * Accounts that are not linked to an external account are never affected by |
4341 | | - * this setting. You may want to look at $wgHiddenPrefs instead. |
4342 | | - * $wgHiddenPrefs supersedes this option. |
4343 | | - * |
4344 | | - * TODO: Implement message, global. |
4345 | | - */ |
4346 | | -$wgAllowPrefChange = array(); |
4347 | | - |
4348 | | - |
4349 | | -/** |
4350 | | - * Settings for incoming cross-site AJAX requests: |
4351 | | - * Newer browsers support cross-site AJAX when the target resource allows requests |
4352 | | - * from the origin domain by the Access-Control-Allow-Origin header. |
4353 | | - * This is currently only used by the API (requests to api.php) |
4354 | | - * $wgCrossSiteAJAXdomains can be set using a wildcard syntax: |
4355 | | - * |
4356 | | - * '*' matches any number of characters |
4357 | | - * '?' matches any 1 character |
4358 | | - * |
4359 | | - * Example: |
4360 | | - $wgCrossSiteAJAXdomains = array( |
4361 | | - 'www.mediawiki.org', |
4362 | | - '*.wikipedia.org', |
4363 | | - '*.wikimedia.org', |
4364 | | - '*.wiktionary.org', |
4365 | | - ); |
4366 | | - * |
4367 | | - */ |
4368 | | -$wgCrossSiteAJAXdomains = array(); |
4369 | | - |
4370 | | -/** |
4371 | | - * Domains that should not be allowed to make AJAX requests, |
4372 | | - * even if they match one of the domains allowed by $wgCrossSiteAJAXdomains |
4373 | | - * Uses the same syntax as $wgCrossSiteAJAXdomains |
4374 | | - */ |
4375 | | - |
4376 | | -$wgCrossSiteAJAXdomainExceptions = array(); |
4377 | | - |
4378 | | -/** |
4379 | | - * The minimum amount of memory that MediaWiki "needs"; MediaWiki will try to raise PHP's memory limit if it's below this amount. |
4380 | | - */ |
4381 | | -$wgMemoryLimit = "50M"; |
4382 | | - |
4383 | | -/** |
4384 | 5016 | * To disable file delete/restore temporarily |
4385 | 5017 | */ |
4386 | 5018 | $wgUploadMaintenance = false; |
4387 | 5019 | |
4388 | 5020 | /** |
4389 | | - * Use old names for change_tags indices. |
| 5021 | + * For really cool vim folding this needs to be at the end: |
| 5022 | + * vim: foldmarker=@{,@} foldmethod=marker |
| 5023 | + * @} |
4390 | 5024 | */ |
4391 | | -$wgOldChangeTagsIndex = false; |
4392 | | - |