Differences

This shows you the differences between two versions of the page.

docs:phppathfinder [2010/01/10 01:00]
attilio pavone
docs:phppathfinder [2010/01/10 05:37] (current)
attilio pavone
Line 7: Line 7:
You can view an online demo here: You can view an online demo here:
[[http://lnx.utillyty.eu/utillyty.php/pathfinder|online demo]] [[http://lnx.utillyty.eu/utillyty.php/pathfinder|online demo]]
 +
 +<note warning>
 +Tested on
 +  * Firefox 3.5
 +  * Opera 10.10
 +  * Safari 3.0
 +  * Chrome 3.0
 +  * Internet Explorer 8.0
 +  * Konqueror 3.5
 +</note>
===== Download ===== ===== Download =====
-last stable version: **0.1.0, 09 Jan 2010**+last stable version: **0.1.0, 10 Jan 2010**
-You can get phpPathFinder from+phpPathFinder comes as part of **utillyt.php** (still under development).\\ 
 +You can get it from
[[http://sourceforge.net/projects/phppathfinder]] [[http://sourceforge.net/projects/phppathfinder]]
===== Install ===== ===== Install =====
-Download and extract the latest release archive.\\ +Download and extract the latest **utillyty.php** release archive from [[https://sourceforge.net/projects/phppathfinder/|sourceforge]].\\ 
-Edit config.php and .pfaccess for your requirements (see [[docs:phppathfinder#configuration|Configuration]] below).\\+Enter the pathfinder folder and edit config.php and .pfaccess for your requirements (see [[docs:phppathfinder#configuration|Configuration]] below).\\
FTP to your site.\\ FTP to your site.\\
<note>PHP 5.3.1 or later required</note> <note>PHP 5.3.1 or later required</note>
 +<note important>
 +phpPathFinder comes as part of utillyty.php.\\
 +You need the entire utillyty.php folder to get it working.
 +</note>
===== Configuration ===== ===== Configuration =====
 +
 +Before running phpPathFinder you must configure it.
 +Enter the ..utillyty.php/pathfinder folder. There are two file you must edit to set configuration:
 +  * config.php
 +  * .pfaccess (path-finder access)
 +Optionally you can change the styling editing the pathfinder.css file.
==== config.php ==== ==== config.php ====
Line 78: Line 99:
There are 8 configurable permission parameters: There are 8 configurable permission parameters:
  * **root**: the absolute or relative (to phpPathFinder.php) path of the top folder the user can work on (mandatory);   * **root**: the absolute or relative (to phpPathFinder.php) path of the top folder the user can work on (mandatory);
-  * **whitelist**: a dot ('.') separated list of file extension the user can work on (default = ''); +  * **whitelist**: a dot ('.') separated list of file extension the user can work on (default = empty); 
-  * **blacklist**: a dot ('.') separated list of file extension the user is forbidden to work on (default = '');+  * **blacklist**: a dot ('.') separated list of file extension the user is forbidden to work on (default = empty);
  * **browse**: 0 or 1. if 1 the user can browse files/folders (default = 0)   * **browse**: 0 or 1. if 1 the user can browse files/folders (default = 0)
  * **download**: 0 or 1. if 1 the user can download (default = 0)   * **download**: 0 or 1. if 1 the user can download (default = 0)
Line 86: Line 107:
  * **upload**: 0 or 1. if 1 the user can upload files (default = 0);   * **upload**: 0 or 1. if 1 the user can upload files (default = 0);
 +Only the root parameter is mandatory, all others have defaults.
Each permission is independent from the others Each permission is independent from the others
-The .pfaccess file contains user/group authorization information divided in 4 sections:+The .pfaccess file store information in records grouped in 4 sections.\\ 
 +A section is started with the '@' token. 
 +Each record is a text line with a comma separated name/value list of parameters.\\ 
 +Each parameter is in the form: 'name:value'.\\ 
 +You can put line comments anywhere in the file, **except the @passwords section**, using the '#' token.\\ 
 + 
 +== Sections ==
== @default == == @default ==
-This section contains one line with the default user permissions parameters either for anonymous user, or if a parameter is not explicitly declared neither in the group nor in the user record of a logged user.+This section contains one record with the default user permissions parameters either for anonymous user, or if a parameter is not explicitly declared neither in the group nor in the user record of a logged user.\\ 
 +Syntax:\\ 
 +username:@anonymous, group:@anonymous, root: [, browse: , download: , edit: , remove: , upload: , whitelist: , blacklist] 
 +<note important> 
 +'@anonymous' is a RESERVED key value for the @default user username, and group name and will be set automatically by the system. You cannot use this values for users records. 
 +</note>
== @groups == == @groups ==
-This section contains group permissions parameters for logged users.+This section contains group permissions parameters for logged users.\\ 
 +Syntax:\\ 
 +username:, group: [, root: , browse: , download: , edit: , remove: , upload: , whitelist: , blacklist]
== @users == == @users ==
-Each line on this section contains the user's user name and group name. Optionally authorization parameter in the group section can be overridden here.+Each line on this section contains the user's user name and group name. Optionally authorization parameter in the group section can be overridden here.\\ 
 +Syntax:\\ 
 +name: [, root: , browse: , download: , edit: , remove: , upload: , whitelist: , blacklist]
== @passwords == == @passwords ==
-Each line contain a record with username and MD5 encryped password.+Each line contain a record with username and MD5 encryped password.\\ 
 +Syntax:\\ 
 +username:MD5password\\ 
 + 
 +== Precedence ==
When a user log in to phpPathFinder, the system first check the username and password, When a user log in to phpPathFinder, the system first check the username and password,
Line 109: Line 150:
If no login is provided the @default section parameters are used. If no login is provided the @default section parameters are used.
-<note important> 
-'@anonymous' is a RESERVED key value for the @default user username, group, and password and will be set automatically by the system. You cannot use this values for users records. 
-</note> 
<note> <note>
If you don't want anonymous user not even browse list, remove the browse permission from the @default section (or set it to 0). If you don't want anonymous user not even browse list, remove the browse permission from the @default section (or set it to 0).
</note> </note>
-.htaccess+<note important> 
 +Remember to instruct your web server not to allow direct access to the root folder, i.e. by means of an .htaccess file (view .htacees_sample file). 
 +</note>
 +The full content of a .pfaccess sample file follows:
 +
 +<code>
 +# default ====================
 +
 +@default
 +root: ../test/playground, browse:1, blacklist:.php.asp.perl
 +
 +# groups =====================
 +
 +@groups
 +
 +name: admins, root: ../test/playground, download: 1, edit: 1, remove: 1, upload: 1
 +name: users, root: ../test/playground, download: 1, upload:1
 +name: guests, root: ../test/playground, download: 1
 +
 +# users ======================
 + 
 +@users
 +
 +username: admin, group: admins
 +username: user, group: users
 +username: guest, group: guests
 +
 +
 +# passwords ==================
 +#
 +# <username>:password
 +# NB: you can't put any comment below this section!
 +
 +@passwords
 +
 +admin:21232f297a57a5a743894a0e4a801fc3
 +user:ee11cbb19052e40b07aac0ca060c23ee
 +guest:084e0343a0486ff05530df6c705c8bb4
 +
 +</code>
===== Licence ===== ===== Licence =====
Line 143: Line 220:
===== Develope ===== ===== Develope =====
 +
 +**utillyty.php** cvs repository is stored at:
 +[[https://sourceforge.net/projects/u-omnibus/|UTillyty.Omnibus]] under the utillyty.php cvs module.
===== Revision history ===== ===== Revision history =====
Line 150: Line 230:
This is the first alpha version. This is the first alpha version.
 +===== Forum =====
 +
 +[[talk:docs:phppathfinder|Talk:phpPathFinder]]

Navigation
Personal Tools