[dokuwiki] Using mixed case users (was: Using uppercase filenames on Linux)
- From: Kite <kite@xxxxxxxxxxxx>
- To: dokuwiki@xxxxxxxxxxxxx
- Date: Sat, 16 Dec 2006 16:28:21 -0800
I know Dokuwiki requires lowercase for both page names and user IDs, I
really don't see a "why" discussed anywhere.
Is there a reason that lowercase is the requirement and mixed case is
not an option? I can see how it is a distinct advantage with page names
since it no longer matters how I address a page -- and I definitely
don't have a reason for [[puzzles]], [[Puzzles]], and [[PUzzles]] to
refer to three pages rather than one. And it is simpler to say
everything is lower case than to look for a mixed case match and
re-using the existing page. Besides, normally the page Title or a
"reference text" is shown to users, not the ID, anyway so people care
even less that its only lower case for pages files.
However, it appears to me that User IDs must be handled the same way
//only// because one function is used to enforce validity -- cleanid().
Again, the possible problem could be the case of the users with the same
ID in different cases which is a support headache. But, seen a
different way, this is a security hole since you've just greatly reduced
the combinations of characters to combine for a valid userID. As I
recall, Windows was forced to change a similar behavior for WinXP.
My problem is that I have more than a decade of legacy users from a
previous website to support. We had a system that allowed not only
mixed case, but some odder characters, as well. Rather than change how
several hundred users worked, I had to bend Dokuwiki: I created a copy
of cleanid() //just// for user IDs that allows mixed case (and a couple
odd characters). It wasn't bad; there are only three places my function
is used instead of the original cleanid() which still cleans up page
references.
I'd like to see this more formally built in as an option into the lower
workings of Dokuwiki. There are some things I could do, for example,
the check for an existing user should be case insensitive, too, to
prevent user IDs that are duplicates in everything but case. Just my
opinion; if its just me, then I can alter thee function calls as part of
my upgrade process. If its not just me, then maybe this should be a
feature request.
Kite
webmaster@xxxxxxxxxxxx
Paul Webster wrote:
Hi List,
I just moved Dokuwiki (latest from darcs) from a Windows-Apache
environment to an Linux-Apache environment and noticed that files
using upper-chased chars are not recognized (pages, and media files).
If I copy a file with upper-case chars via samba for example into the
media directory I see the filename correct in the mediabrowser and the
Link (in the edit view) is correct as well, but as html the link is
converted to all lowercase and the file is not found when I click on
the link.
Is there anything I am doing wrong or can i change that behaviour?
Thanks in advance,
Thomas
The file and folder names in the data directory must all be lower
case. Dokuwiki converts all namespaces and pages to lower case. Short
of writing a script to recurse the data directory and rename
everything, I'm not sure how you would resolve this.
One other thing to check when copying files onto a Linux machine over
samba is the resulting permissions on the Linux system, which in turn,
depends on how you have samba set up. Make sure Apache on Linux has at
least read access to the files and folders. It is also entirely
possible that you may be able to configure samba to force lower case
names, or vice versa on windows, but I'm not sure.
Paul W
--
DokuWiki mailing list - more info at
http://wiki.splitbrain.org/wiki:mailinglist
- Follow-Ups:
- References:
- [dokuwiki] Using uppercase filenames on Linux
- From: Thomas König
- [dokuwiki] Re: Using uppercase filenames on Linux
- From: Paul Webster
Other related posts:
- » [dokuwiki] Using mixed case users (was: Using uppercase filenames on Linux)
- » [dokuwiki] Re: Using mixed case users (was: Using uppercase filenames on Linux)
Hi List, I just moved Dokuwiki (latest from darcs) from a Windows-Apache environment to an Linux-Apache environment and noticed that files using upper-chased chars are not recognized (pages, and media files). If I copy a file with upper-case chars via samba for example into the media directory I see the filename correct in the mediabrowser and the Link (in the edit view) is correct as well, but as html the link is converted to all lowercase and the file is not found when I click on the link. Is there anything I am doing wrong or can i change that behaviour? Thanks in advance, Thomas
The file and folder names in the data directory must all be lower case. Dokuwiki converts all namespaces and pages to lower case. Short of writing a script to recurse the data directory and rename everything, I'm not sure how you would resolve this. One other thing to check when copying files onto a Linux machine over samba is the resulting permissions on the Linux system, which in turn, depends on how you have samba set up. Make sure Apache on Linux has at least read access to the files and folders. It is also entirely possible that you may be able to configure samba to force lower case names, or vice versa on windows, but I'm not sure. Paul W
- [dokuwiki] Using uppercase filenames on Linux
- From: Thomas König
- [dokuwiki] Re: Using uppercase filenames on Linux
- From: Paul Webster