]> git.p6c8.net - devedit.git/blob - README
Wrote documentation for creating an user-dependent configuration
[devedit.git] / README
1 ReadMe for Dev-Editor 3.0 (CVS)
2 ===============================
3
4 Description
5 -----------
6
7 Dev-Editor is a simple CGI based editor written in Perl and licensed under the
8 terms of the Artistic License, which allows remote changes to files and
9 directory structures on a web server. That's useful if you aren't able to access
10 the files on your homepage directly, for example if you are on holiday.
11
12 Installation
13 ------------
14
15 First, you have to copy the files into a directory on your web server where you
16 are able to execute scripts (in most cases, this is "cgi-bin"). I suggest to
17 create a sub directory for Dev-Editor.
18 Then, you have to change the first line of devedit.pl: Just replace
19 /usr/bin/perl by the path to your Perl interpreter.
20 If you are on a UNIX based system, you have to set devedit.pl as executable
21 (chmod 755 in most cases).
22 You will also need to configure Dev-Editor. See the next section for details.
23
24 Note, that the directory where you installed Dev-Editor should be protected by
25 HTTP Authentication. If you don't do that, everybody will be able to access
26 Dev-Editor and use it for evil purposes.
27
28 Configuration
29 -------------
30
31 Open the file devedit.conf. This file contains keys and values separated by a
32 "=" sign. Lines beginning with a "#" sign are ignored.
33 Here is a list of the configuration options currently available:
34
35 Option Description
36 ------ -----------
37
38 fileroot The root directory Dev-Editor is allowed to access.
39 Nobody is allowed to access the files and directories
40 above this directory. Dev-Editor needs write access to
41 this directory and to the sub directories.
42
43 httproot This is the equivalent HTTP URL to the root directory.
44 It's just used for visual output, so it doesn't need to
45 be correct.
46
47 max_file_size Here you may define a maximum size for files (Bytes).
48 If the user wants to view or edit a file larger than
49 this defined size, Dev-Editor denies file access (but
50 the file can still be copied, renamed or removed).
51 If this is empty or 0, any file can be viewed or
52 edited.
53
54 timeformat The format of the time shown in directory listings.
55 These are the most important placeholders:
56
57 %a - short day name (Sun to Sat)
58 %A - long day name (Sunday to Saturday)
59 %b - short month name (Jan to Dec)
60 %B - long month name (January to December)
61 %d - day of the month (01 to 31)
62 %H - hour in 24 hour clock (00 to 23)
63 %I - hour in 12 hour clock (01 to 12)
64 %m - month of the year (01 to 12)
65 %M - minutes (00 to 59)
66 %p - AM or PM
67 %S - seconds (00 to 59)
68 %y - two digit year (03)
69 %Y - four digit year (2003)
70 %% - percent sign
71
72 There are a lot of other placeholders. A complete list
73 is found at:
74 http://www.opengroup.org/onlinepubs/7908799/xsh/strftime.html
75 Note that some systems don't support some of the
76 placeholders (for example %T on Windows).
77
78 This format is also used to format the system time in
79 the About dialogue.
80
81 use_gmt Set this option to 1 if you want to use Greenwich Mean
82 Time (GMT/UTC) in directory listing and in the About
83 dialogue instead of the local time.
84
85 forbidden Specify a list of filenames the user is not allowed to
86 access. The filenames have to be relative to the
87 virtual root directory (they must also begin with a
88 slash) and have to be separated by space characters. If
89 a filename contains space characters, you have to put
90 it into double quotation marks ("/filename").
91
92 userconf_file Specifies the path to a file which contains
93 user-dependent configuration options (see next section
94 for details).
95
96 error_file The path to the file which defines the error messages.
97 The file has the same format as this one.
98
99 template_file The path to the file which defines the paths to the
100 template files. The file has the same format as this
101 one.
102
103 User-dependent configuration
104 ----------------------------
105
106 If you have placed Dev-Editor inside a directory protected using HTTP
107 authentication, you may override some default configuration values for a defined
108 list of users. You may override the values for "fileroot", "httproot" and
109 "forbidden".
110
111 For overriding configuration values you need a special configuration file. The
112 path to this file is defined using the "userconf_file" configuration option in
113 the main configuration file (add the option if necessary). This file consists of
114 key-value-pairs and sections, marked by a string encapsulated in square brackets
115 (perhaps you know this format, it is nearly the same as the Windows INI files).
116 Each section in this file describes an individual configuration, whereby the
117 name of the section is the username for whom this configuration should be used.
118 Here is an example:
119
120 [homer]
121 fileroot = /var/www/homer/htdocs
122 httproot = /
123
124 This sets the physical file root directory to "/var/www/homer/htdocs" and the
125 virtual HTTP root to "/" - but only for the user whose HTTP authentication
126 username is "homer".
127
128 Using the "aliases" option, you may also define some other usernames for whom
129 this configuration should be used:
130
131 [homer]
132 fileroot = /var/www/homer/htdocs
133 httproot = /
134 aliases = marge bart
135
136 Using this, the users whose usernames are "marge" and "bart" use the same
137 configuration as "homer". Place any number of username seperated by whitespaces
138 here.
139 Note: If one of the users mentioned as an alias and an individual configuration
140 section for this user exists too, the one mentioned as an alias is ignored.
141
142 If there are some files marked as inaccessible using the "forbidden"
143 configuration option in the main configuration file, but some users should have
144 access to these files, you may clear the default value of "forbidden":
145
146 [homer]
147 fileroot = /var/www/homer/htdocs
148 httproot = /
149 forbidden =
150
151 Using this, "homer" has access to all files in "/var/www/homer/htdocs".
152
153 Notes
154 -----
155
156 Symbolic links are treated as files, no matter where they point to. The user is
157 just allowed to see the path where the link points to, he is allowed to delete
158 the link, to rename it and to overwrite it by renaming an other file. Nothing
159 else is allowed.
160 Accessing a symbolic link pointing to a directory also caused a very strange
161 effect: It was possible to access this directory, but you could not access the
162 objects in it.
163 I had to do it in this way because of the very stupid behaviour of abs_path()
164 from the Cwd module: This function is just able to detect the absolute path of
165 directories.
166 Hard links are not affected by this.
167
168 ------------------------------------------------
169
170 (C) 1999-2000 Roland Bluethgen, Frank Schoenmann
171 (C) 2003-2005 Patrick Canterino
172
173 E-Mail: patrick@patshaping.de
174 WWW: http://devedit.sourceforge.net/

patrick-canterino.de