Manual:$wgTmpDirectory

From MediaWiki.org
Jump to: navigation, search

Other languages:
العربية • ‎English • ‎español • ‎فارسی • ‎français • ‎日本語 • ‎polski • ‎português do Brasil • ‎中文
Paths: $wgTmpDirectory
The path of the temporary directory.
Introduced in version: pre 1.1.0
Removed in version: still in use
Allowed values: absolute path
Default value: The path to the directory for temporary files as determined by wfTempDir()[1]
"{$wgUploadDirectoryManual:$wgUploadDirectory}/tmp" prior to 1.20
(Note: The default value of this variable depends on other variables, such as the values set in Setup.phpManual:Setup.php, after LocalSettings.phpManual:LocalSettings.php is executed)
Other settings: Alphabetical | By function

Details[edit]

MediaWiki version: 1.20

The local filesystem path to a temporary directory. This is required to be writable. It is not required to be accessible from the web.

$wgTmpDirectory is used by wfTempDir() to control where MediaWiki writes temporary files to, including:

  • Old and new tempfiles for external executable based external diff engines configured by $wgExternalDiffEngine
  • TempFSFile - used for chunked uploading, some transformations, and various parts of the file backend code
  • UID Generator node and lock files.
  • Upload from URL
  • The directory which a CACHE_DBA cache places it's DBA database file. Can be overridden using $wgObjectCachesManual:$wgObjectCaches[CACHE_DBA]['dir']. (removed in 1.23)
  • Importing uploads from XML dumps
  • SvgHandler - used for SVG transformation
  • ...

Common pitfalls[edit]

If you are getting this error, an incorrect setting for $wgTmpDirectory often is the cause:

Warning: rename(/tmp/l10n_cache-en.cdb.tmp.335721450,/tmp/l10n_cache-en.cdb): Operation not permitted in /.../vendor/wikimedia/cdb/src/Writer/DBA.php on line 59

Fatal exception of type MWException: Warning: dba_close(): supplied resource is not a valid DBA identifier resource in /.../vendor/wikimedia/cdb/src/Writer/DBA.php on line 54

Fatal error: Uncaught Cdb\Exception: Unable to move the new CDB file into place. in /.../vendor/wikimedia/cdb/src/Writer/DBA.php:60 

The solution is to set $wgTmpDirectory to a folder, which actually is writable by the webserver user.

Sometimes it is useful to have separate directories for the web server and CLI user, if they require different permissions. For example:

$wgTmpDirectory = $IP . '/images/tmp-' . php_sapi_name();

See task T126736 for more information!


Usage in unsupported MediaWiki versions[edit]

MediaWiki version: 1.19

The path to the temporary directory. When using CACHE_DBA as your $wgMainCacheTypeManual:$wgMainCacheType, this allows you to select which directory is used.

References[edit]