19.27 mod_proxy

Team-Fly    

 
Webmaster in a Nutshell, 3rd Edition
By Robert Eckstein, Stephen Spainhour
Table of Contents
Chapter 19.  Apache Modules


The mod_proxy module handles a multitude of proxying and caching capabilities for the server. Proxies enforce security by screening and relaying requests made by a client; caches help to optimize transfer by storing recently requested information.

CacheDefaultExpire

  CacheDefaultExpire   time  

[ server config or within <VirtualHost>]

This sets the default expiry time, in hours, of a document in the cache, assuming an expiry has not already been set. The default is one hour . After the document has been expired , the client must refetch it directly from the server.

CacheDirLength

  CacheDirLength   length  

[ server config or within <VirtualHost>]

This directive sets the number of characters a directory can contain in the proxy cache.

 CacheDirLength 1024768 
CacheDirLevels

  CacheDirLevels   level  

[ server config or within <VirtualHost>]

This directive sets the number of subdirectories in the cache.

 CacheDirLevels 10 
CacheForceCompletion

 CacheForceCompletion  percentage  

[ server config or within <VirtualHost>]

This directive specifies the minimum percentage of a document required in order for it to be cached. This is useful in the event a document is canceled before completing a transfer. The default is 90 percent.

CacheGcInterval

  CacheGcInterval   time  

[ server config or within <VirtualHost>]

This directive instructs the server to garbage-collect the cache if the space usage is greater than the size specified by the CacheSize directive. The collection is performed every time hours. You can specify a noninteger for the time if you want to perform garbage collections between hours.

CacheLastModifiedFactor

 CacheLastModifiedFactor  factor  

[ server config or within <VirtualHost>]

This directive estimates an expiry date for a document by multiplying the factor specified by the time since the last modification. This is effective only if an expiry date for a document has not been set already. If the expiration date is greater than CacheMaxExpire, CacheMaxExpire is used instead.

CacheMaxExpire

  CacheMaxExpire   time  

[ server config or within <VirtualHost>]

This directive specifies the maximum amount of time a document should remain active. Once past this time, it is considered "expired" and should be reloaded directly from the server.

CacheRoot

  CacheRoot   directory  

[ server config or within <VirtualHost>]

This directive sets the name of the directory that will contain cache files.

CacheSize

  CacheSize   size  

[ server config or within <VirtualHost>]

This directive sets the maximum size, in kilobytes, of the cache. Once this size is exceeded, no more data is written to the cache.

NoCache

  NoCache   word   host   domain  list 

[ server config or within <VirtualHost>]

This directive specifies a matching of documents that are not cached by the server. You can use one of three options:

word

The server searches for any such word in the title of the document. If one is found, the document is not cached.

host

A document that originates from the target host isn't cached.

domain list

Documents originating from any domain in the list are not cached.

For example:

 NoCache abc.com def.com ghi.com NoCache somecompany NoCache * 

Note that you are allowed to use wildcards. The last example forces the server not to cache any documents at all.

NoProxy

  NoProxy   domainsubnetiphostname  

[ server config or within <VirtualHost>]

Specifies a list of intranet addresses or domains the proxy should not attempt to intermediate between. The parameter can be one of the following:

domain

A domain name, like .oreilly.com ; hosts from the domain can bypass the proxy

hostname

A full hostname that can bypass the proxy

IP

An IP address of a host that can bypass the proxy

subnet

A subnet of addresses that can bypass the proxy

For example, the following disables the proxy for all addresses in the subnet 192.168:

 NoProxy 192.168.0.0 
ProxyBlock

  ProxyBlock   wordhostdomain  list 

[ server config or within <VirtualHost>]

Specifies a list of intranet addresses or domains which the proxy should block access to any documents on the server. The parameter can be one of the following:

word

The server searches for any such word in the title of the document. If one is found, the document is blocked.

host

A document that originates from the target host will be blocked.

domain list

Documents originating from any domain in the list are blocked.

For example, the following blocks all requests for documents from dirtyrotten.com and hackers.com:

 ProxyBlock dirtyrotten.com hackers.com 
ProxyDomain

  ProxyDomain   domain  

[ server config or within <VirtualHost>]

This directive specifies the default domain of the proxy. For example:

 ProxyDomain .oreilly.com 
ProxyPass

  ProxyPass   path  url 

[ server config or within <VirtualHost>]

This directive translates requests for a specific path to be redirected to the corresponding url . This allows remote servers to act as if they existed in the local filesystem. Note that this directive takes place regardless of whether the ProxyRequests directive is activated. For example:

 ProxyPass /mydir http://www.otherserver.com/mydir 
ProxyPassReverse

  ProxyPassReverse   path  url 

[ server config or within <VirtualHost>]

Handles redirects made by a server pointed to by the ProxyPass directive by modifying the Location header in the HTTP redirect response. This directive alters redirect references to a specific path to the corresponding url .

ProxyReceiveBufferSize

 ProxyReceiveBufferSize  bytes  

[ server config or within <VirtualHost>]

Specifies the networking buffer size for outgoing connections through the proxy. The value must be greater than 512. However, you can use the value 0 to indicate that the system's default buffer size should be used. For example:

 ProxyReceiveBufferSize 4096 
ProxyRemote

  ProxyRemote   match  remote-server 

[ server config or within <VirtualHost>]

This directive specifies a remote proxy that should be used under user -definable conditions. The match parameter is either a URL scheme (http, ftp, etc.) that the server supports, or a partial URL which should be redirected to the remote proxy. The remote-server parameter should be organized as a fully qualified URL, as shown below:

 ProxyRemote ftp http://ftpproxy.oreilly.com:8080 ProxyRemote * http://handle.everything.oreilly.com:9001 

Currently, http is the only scheme supported for the remote-server parameter.

ProxyRequests

  ProxyRequests  onoff 

[ server config or within <VirtualHost>]

This directive activates or deactivates proxy serving. The default is:

 ProxyRequests Off 

Note that even though proxy requests are deactivated, the ProxyPass directives are still valid.


Team-Fly    
Top


Webmaster in a Nutshell
Webmaster in a Nutshell, Third Edition
ISBN: 0596003579
EAN: 2147483647
Year: 2002
Pages: 412

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net