X-Git-Url: https://git.treefish.org/fex.git/blobdiff_plain/cdeb354c4dbb11b683f9f8c5db2861f3dc572c61..refs/heads/master:/doc/concept diff --git a/doc/concept b/doc/concept index fde9902..6203c43 100644 --- a/doc/concept +++ b/doc/concept @@ -51,7 +51,7 @@ program "fac" (F*EX admin control) or http://YOURFEXSERVER/fac Alternativly the users can register theirselves with http://YOURFEXSERVER/fur (F*EX user registration), if the admin allows them to do so. This is done by -setting the variables @local_domains and @local_hosts in FEXHOME/lib/fex.ph +setting the variables @local_domains and @local_hosts in $FEXHOME/lib/fex.ph Example: @local_hosts = qw(127.0.0.1 10.10.100.0-10.10.255.255); @@ -146,7 +146,7 @@ and more than once (until expiration date). If you want "delay autodelete" to be the default behaviour for all users and each transfer then set $autodelete = 'DELAY'; # or 'NO' for no autodelete -in FEXHOME/lib/fex.ph +in $FEXHOME/lib/fex.ph In addition, you can add to the "Recipient(s)" field of the fup CGI: ":autodelete=delay" or ":autodelete=no" or ":keep=x" (where x is the number @@ -193,18 +193,18 @@ The administrator can also forbid a user to fex to any recipient address, but the allowed ones with: fac -r USER -By standard installation the base directory FEXHOME is the same as the -login HOME of user fex, but you can move it if you want. FEXHOME is +By standard installation the base directory $FEXHOME is the same as the +login HOME of user fex, but you can move it if you want. $FEXHOME is determined by the full path of fexsrv as configured in -/etc/xinetd.d/fex . Change this when you move FEXHOME! +/etc/xinetd.d/fex . Change this when you move $FEXHOME! You can also add (name based) virtual hosts with fac. -Do not give write permission to any other user to any file in FEXHOME or +Do not give write permission to any other user to any file in $FEXHOME or below! -FEXHOME contains: +$FEXHOME contains: spool/ spool directory and user data htdocs/ directory for generic download files @@ -273,7 +273,7 @@ A registered full F*EX user is identified by the file $spooldir/$from/@ Only if this file contains his auth-ID this user is able to send files to others. Otherwise he is just an unpriviledged recipient. -You can customize the upload CGI fup by editing FEXHOME/lib/fup.pl +You can customize the upload CGI fup by editing $FEXHOME/lib/fup.pl Additional directories in spool: @@ -362,13 +362,13 @@ For streaming receiving you can use "fexget -s-" or "wget -O-". fexsrv also can do generic document output (via dop) like a normal web -server. For this, your files must be under FEXHOME/htdocs and they must -not have the same name as the CGIs under FEXHOME/cgi-bin, because the CGIs +server. For this, your files must be under $FEXHOME/htdocs and they must +not have the same name as the CGIs under $FEXHOME/cgi-bin, because the CGIs have priority. For security reasons, documents to be delivered by dop: - the file must be readable by group or world -- the file must be in FEXHOME/htdocs or a directory specified by @doc_dirs +- the file must be in $FEXHOME/htdocs or a directory specified by @doc_dirs - the filename must not start with a "." - the filename must not contain a "@" - the filename must not end with "~" @@ -387,15 +387,23 @@ fexsrv. *.html files may contain $VARIABLES$ which will be substituted with the value of the corresponding environment variable. See example -$SERVER_ADMIN$ in FEXHOME/htdocs/index.html +$SERVER_ADMIN$ in $FEXHOME/htdocs/index.html *.html files may contain <> (even multiline) which will be -evaluated and its output will be placed in. Same goes for <<>> -but without output catching. -See example FEXHOME/htdocs/dynamic.html -This perl-code must not contain '>>' strings itself! +evaluated. The output from print and printf statements will be placed +in. If the perl-code does not end with a ";" then its return value is also +added to the output. + +Same goes for <<>> but without output catching. + +This perl-code must not contain ">>" strings itself! + +See example $FEXHOME/htdocs/dynamic.html + +To chainload external perl-code do not use "require" but "do" statement. Pay attention: do not place security relevant data inside << >> because it -will be delivered to the client if the URL ends with '!'! See example: +will be delivered to the client if the URL ends with a "!" character, see +example: http://fex.rus.uni-stuttgart.de/index.html http://fex.rus.uni-stuttgart.de/index.html!