It's better when it's simple

User Tools

Site Tools


Configuration Setting: fnencode

DokuWiki stores the content of a page in a .txt file named after the page's name. To avoid problems when the pagename contains special characters or non-ASCII letters and the underlying file system doesn't support them, DokuWiki uses an encoding mechanism. Which mechanism is used can be configured with this setting.

  • Type: String
  • Default: url
  • Possible values:
    • url – use URL encoding, can produce very long filenames
    • safe – use more compact encoding (recommended)
    • utf-8 – use no encoding at all and store filenames in UTF-8

Warning: Changing this option could cause unintended behaviour. By changing it you can make pages created under a previous setting inaccessible.

Please also note that storing UTF-8 filenames might not be possible with all file systems. Windows systems have been reported to not work with this setting. (See discussion below).

url encoding for non-latin languages makes filenames too long and this can cause a problem for systems that are limited to 255 characters per filename. That is why it is better to use safe encoding for non-latin languages, which is approximately 60% shorter than url encoding.

See also


On migrating in Windows to PHP 7.1

  • PHP has UTF-8 support for Windows since PHP 7.1. To convert “gibberish” utf-8 file names in Windows, created by previous versions of PHP, see this tool:
config/fnencode.txt · Last modified: 2020-11-04 20:18 by postscripter

Except where otherwise noted, content on this wiki is licensed under the following license: CC Attribution-Share Alike 4.0 International
CC Attribution-Share Alike 4.0 International Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki