ACL Management doesn't work
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
dokuwiki (Debian) |
Fix Released
|
Unknown
|
|||
dokuwiki (Ubuntu) |
Fix Released
|
Undecided
|
Tanguy Ortolo |
Bug Description
Binary package hint: dokuwiki
When trying to use the web based acl management of dokuwiki, nothing happens. Apache2 error log says:
PHP Fatal error: require_once(): Failed opening required '/var/lib/
System:
Ubuntu 10.04 LTS with all updates
dokuwiki 0.0.20091225c-3
apache2 2.2.14-5ubuntu8
Of course, $conf['useacl'] = 1; is set in /etc/dokuwiki/
ProblemType: Bug
DistroRelease: Ubuntu 10.04
Package: dokuwiki 0.0.20091225c-3
ProcVersionSign
Uname: Linux 2.6.32-22-generic x86_64
NonfreeKernelMo
Architecture: amd64
Date: Fri Jun 4 02:47:02 2010
InstallationMedia: Ubuntu 9.10 "Karmic Koala" - Release amd64 (20091027)
PackageArchitec
ProcEnviron:
LANG=en_US.UTF-8
SHELL=/bin/bash
SourcePackage: dokuwiki
Changed in dokuwiki (Debian): | |
status: | Unknown → Fix Released |
I have the same problem.
The problem is in the php script /var/lib/ dokuwiki/ plugins/ acl/ajax. php (acl plugin)
In the following line
if(!defined( 'DOKU_INC' )) define( 'DOKU_INC' ,dirname( __FILE_ _).'/.. /../../ ');
ajax.php defines path to 'DOKU_INC' wrongly (DOKU_INC is not defined at this point). dokuwiki/ plugins/ acl/../ ../../ where ajax.php searches for it.
DOKU_INC is not located at /var/lib/
In the ubunut installed dokuwiki, inc directory is located at /usr/share/ dokuwiki/
It is possible to temporarily work around this problem by modifing ajax.php
(first make a backup copy of ajax.php, just in case something goes wrong)
Replace the line
if(!defined( 'DOKU_INC' )) define( 'DOKU_INC' ,dirname( __FILE_ _).'/.. /../../ ');
with
if(!defined( 'DOKU_INC' )) define( 'DOKU_INC' ,'/usr/ share/dokuwiki/ ');