View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0011291 | mantisbt | attachments | public | 2009-12-16 21:42 | 2014-12-08 00:34 |
Reporter | dhx | Assigned To | dhx | ||
Priority | normal | Severity | feature | Reproducibility | N/A |
Status | closed | Resolution | fixed | ||
Product Version | 1.2.0 | ||||
Target Version | 1.3.0-beta.1 | Fixed in Version | 1.3.0-beta.1 | ||
Summary | 0011291: Add support for Lighttpd's X-Sendfile method for sending attachments stored locally | ||||
Description | See http://blog.lighttpd.net/articles/2006/07/02/x-sendfile for a brief overview of how this method works. Essentially, it's a high-performance method for serving up static attachments from the disk. MantisBT would add a X-Sendfile header pointing to a file to serve up to the client from a local disk. When Lighttpd sees this header in the output, it'll use super-efficient methods for serving the file directly to the network port (without duplicate buffering in PHP, etc). AFAIK there is also an X-Sendfile2 header that allows you to specify a range from within the file to return to the client (for resuming support). | ||||
Tags | No tags attached. | ||||
MantisBT: master b50a52a4 2010-01-05 03:36 Details Diff |
Issue 0011291: Add X-Sendfile support for high performance file downloads X-Sendfile is a header that is added to the output response from PHP that points to a local file on the disk. Upon receiving the header once the PHP script has terminated, the web server proceeds to replace all content in the HTTP response with the contents of the file served up locally from the disk. Headers set in the PHP script are usually kept in-tact (depending on the web server implementation as to what gets changed). This technique is meant to improve performance as it now becomes possible for the web server to use highly efficient file serving functions to serve up the static content. For example, a web server could use a zero-copy splice() call on Linux platforms to prevent unnecessary buffering, drastically improving performance. Servers that support X-Sendfile (or equivalent, as determined by the $g_file_download_xsendfile_header_name option) include: * Lighttpd * Cherokee * Apache (with mod_xsendfile) * nginx |
Affected Issues 0011291 |
|
mod - config_defaults_inc.php | Diff File | ||
mod - docbook/adminguide/en/configuration.sgml | Diff File | ||
mod - file_download.php | Diff File |