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

patrick-canterino.de