seeddms-code/doc
2021-10-08 13:11:40 +02:00
..
README.Converters add parameter '-d tab' to xlsx2csv 2021-10-08 13:11:40 +02:00
README.Dist-Layout fix commands for converting from old to new layout 2019-03-18 07:35:11 +01:00
README.Extensions mv README into doc dir 2017-02-23 06:56:59 +01:00
README.Fail2ban add readme on how to setup fail2ban 2019-01-16 09:32:20 +01:00
README.Hooks add more hooks (still incomplete) 2019-10-19 08:16:43 +02:00
README.Install.md min version of php is 7.3 2021-09-17 19:02:53 +02:00
README.Notification add info about email configuration 2018-03-09 10:23:21 +01:00
README.npm explain how to update js packages in views 2020-08-27 09:19:13 +02:00
README.ReviewApproval.md move all documentation into a directory 2016-02-16 06:55:15 +01:00
README.Synology.txt various improvements 2016-05-04 08:14:04 +02:00
README.Translation add documentation on how to contribute translations 2017-02-23 07:00:32 +01:00
README.Ubuntu move all documentation into a directory 2016-02-16 06:55:15 +01:00
README.WebDAV add section on how to use cadave with seeddms 2020-08-24 12:52:23 +02:00
README.Workflow move all documentation into a directory 2016-02-16 06:55:15 +01:00
README.xsendfile more info on how xsendfile is detected 2020-12-22 17:04:39 +01:00

Howto configure mod_xsendfile
==============================

Downloading large files from SeedDMS can be slow, because they are delivered
by the PHP download script. This is a common problem not specific to SeedDMS
but to PHP scripts of this kind in general. Granting direct access on the
download file is not a option as it circumvents the access restrictions of
SeedDMS.

The Apache module xsendfile is just for this kind of controlled downloads. If
is installed and configured, SeedDMS will hand over the download to the web
server which does a much better job than the PHP script. In order to make it
work, mod_xsendfile must be installed, turned on and the path to the download
files must be set to the directory containing the document files. If your document
root is /var/www and you extracted the quickstart archive into that directory,
then the document content directory will be at
/var/www/seeddms51x/data/ . Add the following to your apache configuration,
either globally or within a virtual host configuration. Setting the path in
an .htaccess file will not work.

XSendFile on
XSendFilePath /var/www/seeddms51x/data/

If the XSendFilePath is not set propperly, you will notice an error message
in your apache log file, probably telling you that the download file could not
be found.

A positive side effect of xsendfile is support for content ranges which are
currently *not* supported by seeddms' Download and ViewOnline scripts. This is
especially usefull when previewing videos. Without content ranges it is not
possible to jump to certain time in the video.

In order to check if the xsendfile module is loaded, php uses apache_get_modules()
which is only available if php is loaded as an apache module. Running php in fpm
mode will prevent php from checking for xsendfile and consequently xsendfile support
will not be available.