This is an old revision of the document!
This article describes how to install Dokuwiki on Free.fr
dokuwiki is a great wiki: lightweight, no need for SQL databases (all in text files) and easy to customize. So, naturally, I wanted to use it on Free.fr.
Unfortunately, it won't work there straight of the box (because of free - to my understanding): you have to install a patch.
It works !
Upgrade messages usually appear when you login. I successfully upgraded DokuWiki using the procedure detailed here. It just works without any problem, though I strongly recommend to backup your wiki first, in particular:
Also, remove unnecessary files listed in that link. Additionally, no need to upload install.php when you're doing an upgrade !
Finally, you have to patch lib/plugins/config/settings/extra.class.php. At line 50, replace glob by safe_glob and add the function's code:
//safe_glob() by BigueNique at yahoo dot ca //Function glob() is prohibited on some servers for security reasons as stated on: //http://seclists.org/fulldisclosure/2005/Sep/0001.html //(Message "Warning: glob() has been disabled for security reasons in (script) on line (line)") //safe_glob() intends to replace glob() for simple applications //using readdir() & fnmatch() instead. //Since fnmatch() is not available on Windows or other non-POSFIX, I rely //on soywiz at php dot net fnmatch clone. //On the final hand, safe_glob() supports basic wildcards on one directory. //Supported flags: GLOB_MARK. GLOB_NOSORT, GLOB_ONLYDIR //Return false if path doesn't exist, and an empty array is no file matches the pattern function safe_glob($pattern, $flags=0) { $split=explode('/',$pattern); $match=array_pop($split); $path=implode('/',$split); if (($dir=opendir($path))!==false) { $glob=array(); while(($file=readdir($dir))!==false) { if (fnmatch($match,$file)) { if ((is_dir("$path/$file"))||(!($flags&GLOB_ONLYDIR))) { if ($flags&GLOB_MARK) $file.='/'; $glob[]=$file; } } } closedir($dir); if (!($flags&GLOB_NOSORT)) sort($glob); return $glob; } else { return false; } }
This function is taken from this URL on the good advice of this website.