ok

Mini Shell

Direktori : /opt/alt/ruby20/lib64/ruby/gems/2.0.0/doc/rack-1.6.4/ri/Rack/Sendfile/
Upload File :
Current File : //opt/alt/ruby20/lib64/ruby/gems/2.0.0/doc/rack-1.6.4/ri/Rack/Sendfile/cdesc-Sendfile.ri

U:RDoc::NormalClass[iI"
Sendfile:EFI"Rack::Sendfile;FI"Object;To:RDoc::Markup::Document:@parts[o;;[)S:RDoc::Markup::Heading:
leveli:	textI"
Sendfile;To:RDoc::Markup::BlankLineo:RDoc::Markup::Paragraph;[I"FThe Sendfile middleware intercepts responses whose body is being ;TI"Jserved from a file and replaces it with a server specific X-Sendfile ;TI"Nheader. The web server is then responsible for writing the file contents ;TI"Mto the client. This can dramatically reduce the amount of work required ;TI"Pby the Ruby backend and takes advantage of the web server's optimized file ;TI"delivery code.;T@o;
;[I"KIn order to take advantage of this middleware, the response body must ;TI"Jrespond to +to_path+ and the request must include an X-Sendfile-Type ;TI"Lheader. Rack::File and other components implement +to_path+ so there's ;TI"Mrarely anything you need to do in your application. The X-Sendfile-Type ;TI"Nheader is typically set in your web servers configuration. The following ;TI"!sections attempt to document;T@S;	;
i;I"
Nginx;T@o;
;[I"ONginx supports the X-Accel-Redirect header. This is similar to X-Sendfile ;TI"Jbut requires parts of the filesystem to be mapped into a private URL ;TI"hierarchy.;T@o;
;[I"LThe following example shows the Nginx configuration required to create ;TI"Ma private "/files/" area, enable X-Accel-Redirect, and pass the special ;TI"@X-Sendfile-Type and X-Accel-Mapping headers to the backend:;T@o:RDoc::Markup::Verbatim;[I"location ~ /files/(.*) {
;TI"  internal;
;TI"  alias /var/www/$1;
;TI"}
;TI"
;TI"location / {
;TI"  proxy_redirect     off;
;TI"
;TI"5  proxy_set_header   Host                $host;
;TI"<  proxy_set_header   X-Real-IP           $remote_addr;
;TI"J  proxy_set_header   X-Forwarded-For     $proxy_add_x_forwarded_for;
;TI"
;TI"@  proxy_set_header   X-Sendfile-Type     X-Accel-Redirect;
;TI"A  proxy_set_header   X-Accel-Mapping     /var/www/=/files/;
;TI"
;TI"2  proxy_pass         http://127.0.0.1:8080/;
;TI"}
;T:@format0o;
;[
I"NNote that the X-Sendfile-Type header must be set exactly as shown above. ;TI"PThe X-Accel-Mapping header should specify the location on the file system, ;TI"Nfollowed by an equals sign (=), followed name of the private URL pattern ;TI"Kthat it maps to. The middleware performs a simple substitution on the ;TI"resulting path.;T@o;
;[I"9See Also: http://wiki.codemongers.com/NginxXSendfile;T@S;	;
i;I"
lighttpd;T@o;
;[I"MLighttpd has supported some variation of the X-Sendfile header for some ;TI"Ntime, although only recent version support X-Sendfile in a reverse proxy ;TI"configuration.;T@o;;[I"&$HTTP["host"] == "example.com" {
;TI"%   proxy-core.protocol = "http"
;TI",   proxy-core.balancer = "round-robin"
;TI"    proxy-core.backends = (
;TI"     "127.0.0.1:8000",
;TI"     "127.0.0.1:8001",
;TI"     ...
;TI"
   )
;TI"
;TI"/   proxy-core.allow-x-sendfile = "enable"
;TI"'   proxy-core.rewrite-request = (
;TI"6     "X-Sendfile-Type" => (".*" => "X-Sendfile")
;TI"
   )
;TI" }
;T;0o;
;[I"JSee Also: http://redmine.lighttpd.net/wiki/lighttpd/Docs:ModProxyCore;T@S;	;
i;I"Apache;T@o;
;[I"FX-Sendfile is supported under Apache 2.x using a separate module:;T@o;
;[I"%https://tn123.org/mod_xsendfile/;T@o;
;[I"HOnce the module is compiled and installed, you can enable it using ;TI" XSendFile config directive:;T@o;;[I"2RequestHeader Set X-Sendfile-Type X-Sendfile
;TI"/ProxyPassReverse / http://localhost:8001/
;TI"XSendFile on
;T;0S;	;
i;I"Mapping parameter;T@o;
;[	I"CThe third parameter allows for an overriding extension of the ;TI"RX-Accel-Mapping header. Mappings should be provided in tuples of internal to ;TI"Oexternal. The internal values may contain regular expression syntax, they ;TI",will be matched with case indifference.;T:
@fileI"lib/rack/sendfile.rb;T:0@omit_headings_from_table_of_contents_below0;0;0[[U:RDoc::Constant[iI"F;FI"Rack::Sendfile::F;F00o;;[;@};0@}@cRDoc::NormalClass0[[[I"
class;T[[:public[[I"new;TI"lib/rack/sendfile.rb;T[:protected[[:private[[I"
instance;T[[;[[I"	call;F@�[;[[;[[I"map_accel_path;F@�[I"variation;F@�[[U:RDoc::Context::Section[i0o;;[;0;0[@}I"	Rack;FcRDoc::NormalModule

Zerion Mini Shell 1.0