Spade
Mini Shell
<!DOCTYPE html>
<head>
<meta charset="utf-8" />
<meta http-equiv="X-UA-Compatible"
content="IE=edge,chrome=1" />
<title>LiteSpeed Web Server Users' Manual - CGI
Context</title>
<meta name="description" content="LiteSpeed Web Server
Users' Manual - CGI Context." />
<meta name="viewport" content="width=device-width,
initial-scale=1.0" />
<meta name="robots" content="noindex">
<link rel="shortcut icon" href="img/favicon.ico"
/>
<link rel="stylesheet" type="text/css"
href="css/hdoc.css">
</head>
<body>
<div class="pagewrapper clearfix"><aside
class="sidetree ls-col-1-5">
<figure>
<img src="img/lsws_logo.svg" alt="lightspeed web
server logo"
width="100px"/>
</figure>
<h2 class="ls-text-thin">
LiteSpeed Web Server
<br />
<span class="current"><a
href="index.html">Users' Manual</a></span>
</h2>
<h3 class="ls-text-muted">Version 6.3
— Rev. 0</h3>
<hr/>
<div>
<ul>
<li><a href="license.html">License
Enterprise</a></li>
<li><a
href="intro.html">Introduction</a></li>
<li><a
href="install.html">Installation</a></li>
<li>
<a href="admin.html">Administration</a>
<ul class="menu level2">
<li><a href="ServerStat_Help.html">Service
Manager</a></li>
<li><a
href="Real_Time_Stats_Help.html">Real-Time
Stats</a></li>
</ul>
</li>
<li><a
href="security.html">Security</a></li>
<li>
<a href="config.html">Configuration</a>
<ul class="level2">
<li><a href="ServGeneral_Help.html">Server
General</a></li>
<li><a href="ServLog_Help.html">Server
Log</a></li>
<li><a href="ServTuning_Help.html">Server
Tuning</a></li>
<li><a href="ServSecurity_Help.html">Server
Security</a></li>
<li><a href="Cache_Help.html">Page
Cache</a></li>
<li><a
href="PageSpeed_Config.html">PageSpeed
Config</a></li>
<li><a href="ExtApp_Help.html">External
Apps</a></li>
<ul class="level3">
<li><a href="External_FCGI.html">Fast CGI
App</a></li>
<li><a
href="External_FCGI_Auth.html">Fast CGI
Authorizer</a></li>
<li><a href="External_LSAPI.html">LSAPI
App</a></li>
<li><a
href="External_Servlet.html">Servlet
Engine</a></li>
<li><a href="External_WS.html">Web
Server</a></li>
<li><a href="External_PL.html">Piped
logger</a></li>
<li><a href="External_LB.html">Load
Balancer</a></li>
</ul>
<li><a
href="ScriptHandler_Help.html">Script
Handler</a></li>
<li><a
href="PHP_Help.html">PHP</a></li>
<li><a href="App_Server_Help.html">App
Server Settings</a></li>
<li><a
href="Listeners_General_Help.html">Listener
General</a></li>
<li><a
href="Listeners_SSL_Help.html">Listener
SSL</a></li>
<li><a href="Templates_Help.html">Virtual
Host Templates</a></li>
<li><a
href="VirtualHosts_Help.html">Virtual Host
Basic</a></li>
<li><a href="VHGeneral_Help.html">Virtual
Host General</a></li>
<li><a href="VHSecurity_Help.html">Virtual
Host Security</a></li>
<li><a href="VHSSL_Help.html">Virtual Host
SSL</a></li>
<li>
<a href="VHPageSpeed_Config.html">Virtual Host
PageSpeed Config</a>
</li>
<li><a
href="Rewrite_Help.html">Rewrite</a></li>
<li><a
href="Context_Help.html">Context</a></li>
<ul class="level3">
<li><a href="Static_Context.html">Static
Context</a></li>
<li>
<a href="Java_Web_App_Context.html">Java Web
App Context</a>
</li>
<li><a
href="Servlet_Context.html">Servlet
Context</a></li>
<li><a href="FCGI_Context.html">Fast CGI
Context</a></li>
<li><a href="LSAPI_Context.html">LSAPI
Context</a></li>
<li><a href="Proxy_Context.html">Proxy
Context</a></li>
<li><span class="current"><a
href="CGI_Context.html">CGI
Context</a></span></li>
<li><a href="LB_Context.html">Load
Balancer Context</a></li>
<li><a
href="Redirect_Context.html">Redirect
Context</a></li>
<li><a href="App_Server_Context.html">App
Server Context</a></li>
<li><a
href="Rails_Context.html">Rack/Rails
Context</a></li>
</ul>
<li><a
href="VHAddOns_Help.html">Add-ons</a></li>
</ul>
</li>
<li>
<a href="webconsole.html">Web Console</a>
<ul class="level2">
<li><a href="AdminGeneral_Help.html">Admin
Console General</a></li>
<li><a href="AdminSecurity_Help.html">Admin
Console Security</a></li>
<li>
<a href="AdminListeners_General_Help.html">
Admin Listener General
</a>
</li>
<li>
<a href="AdminListeners_SSL_Help.html">Admin
Listener SSL</a>
</li>
</ul>
</li>
</ul>
</div>
</aside>
<article class="contentwrapper ls-col-3-5 clearfix"><div
class="nav-bar ls-spacer-micro-top"><div
class="prev">« <a
href="Proxy_Context.html">Proxy
Context</a></div><div class="center"><a
href="Context_Help.html">Context</a></div><div
class="next"><a href="LB_Context.html">Load
Balancer Context</a> »</div></div>
<h1>CGI Context</h1><h2 id="top">Table of
Contents</h2><section class="toc"><section
class="toc-row"><header><a
href="#cgiContext">CGI
Context</a></header><p>
<a href="#expuri">URI</a> | <a
href="#cgi_path">Path</a> | <a
href="#extraHeaders">Header Operations</a> | <a
href="#allowSetUID">Allow Set UID</a> | <a
href="#allowOverride">Allow Override</a> | <a
href="#realm">Realm</a> | <a
href="#authName">Authentication Name</a> | <a
href="#required">Require (Authorized Users/Groups)</a> |
<a href="#accessAllowed">Access Allowed</a> | <a
href="#accessDenied">Access Denied</a> | <a
href="#extAuthorizer">Authorizer</a> | <a
href="#addDefaultCharset">Add Default Charset</a> |
<a href="#defaultCharsetCustomized">Customized Default
Charset</a> | <a href="#enableRewrite">Enable
Rewrite</a> | <a href="#rewriteInherit">Rewrite
Inherit</a> | <a href="#rewriteBase">Rewrite
Base</a> | <a href="#rewriteRules">Rewrite
Rules</a> | <a href="#cachePolicy:maxStaleAge">Cache
Stale Age (seconds)</a> | <a
href="#cachePolicy:enableCache">Publicly Cache All</a> |
<a href="#cachePolicy:expireInSeconds">Cache Expire Time
(seconds)</a> | <a
href="#cachePolicy:microCache5xx">Micro Cache 5XX
Response</a> | <a
href="#cachePolicy:enablePrivateCache">Privately Cache
All</a> | <a
href="#cachePolicy:privateExpireInSeconds">Private Cache
Expire Time (seconds)</a> | <a
href="#cachePolicy:enablePostCache">Enable POST
cache</a> | <a href="#enableIpGeo">Enable GeoLocation
Lookup</a> | <a href="#pagespeedEnabled">Enable
PageSpeed Optimization</a> | <a
href="#pagespeedParams">PageSpeed Settings</a> | <a
href="#apacheConf">Apache Style
Configurations</a></p></section>
</section>
<section><div class="helpitem"><article
class="ls-helpitem"><div><header
id="cgiContext"><h3>CGI Context<span
class="ls-permlink"><a
href="#cgiContext"></a></span><span
class="top"><a
href="#top">⇑</a></span></h3></header></div><h4>Description</h4><p>A
CGI context defines scripts in a particular directory as CGI scripts. This
directory can be inside or outside of the document root. When a file under
this directory is requested, the server will always try to execute it as a
CGI script, no matter if it's executable or not. In this way, file
content under a CGI Context is always protected and cannot be read as
static content. It is recommended that you put all your CGI scripts in a
directory and set up a CGI Context to access them.</p>
</article> </div>
<div class="helpitem"><article
class="ls-helpitem"><div><header
id="expuri"><h3>URI<span
class="ls-permlink"><a
href="#expuri"></a></span><span
class="top"><a
href="#top">⇑</a></span></h3></header></div><h4>Description</h4><p>Specifies
the URI for this context.</p> <h4>Syntax</h4><p>The
URI can be a plain URI (starting with "/") or a Perl compatible
regular expression URI (starting with "exp:"). If a plain URI
ends with a "/", then this context will include all sub-URIs
under this URI. If the context maps to a directory on the file system, a
trailing "/" must be added.</p> <h4>See
Also</h4><p class="ls-text-small"><span
class="tagl"><a
href="#location">Location</a></span></p>
</article> </div>
<div class="helpitem"><article
class="ls-helpitem"><div><header
id="cgi_path"><h3>Path<span
class="ls-permlink"><a
href="#cgi_path"></a></span><span
class="top"><a
href="#top">⇑</a></span></h3></header></div><h4>Description</h4><p>Specifies
the location of CGI scripts.</p>
<h4>Syntax</h4><p>The path can be a directory that
contains a group of CGI scripts, like <span
class="val">$VH_ROOT/myapp/cgi-bin/</span>. In this
case, the context <span class="tagl"><a
href="#expuri">URI</a></span> must end with
"/", like <span
class="val">/app1/cgi/</span>. The Path can also specify
only one CGI script, like <span
class="val">$VH_ROOT/myapp/myscript.pl</span>. This
script should have the corresponding <span
class="tagl"><a
href="#expuri">URI</a></span> <span
class="val">/myapp/myscript.pl</span>.</p>
</article> </div>
<div class="helpitem"><article
class="ls-helpitem"><div><header
id="extraHeaders"><h3>Header Operations<span
class="ls-permlink"><a
href="#extraHeaders"></a></span><span
class="top"><a
href="#top">⇑</a></span></h3></header></div><h4>Description</h4><p>Specifies
additional response/request headers to be added. Multiple header directives
can be added with one directive per line. "NONE" can be used to
disable parent header inheritance. If no directive is provided
'Header' is assumed.</p>
<h4>Syntax</h4><p>[Header]|RequestHeader [condition]
set|append|merge|add|unset header [value] [early|env=[!]variable]</p>
<h4>Example</h4><div class="ls-example">set
Cache-control no-cache<br/> append Cache-control no-store<br/>
Header set My-header cust_header_val<br/> RequestHeader set
My-req-header
cust_req_header_val</div><h4>Tips</h4><p><span
title="Information"
class="ls-icon-info"></span> Syntax and usage are
similar to <a
href="https://httpd.apache.org/docs/2.2/mod/mod_headers.html#header"
target="_blank" rel="noopener
noreferrer">Apache's mod_headers directives</a> for
supported operations.<br/><br/> <span
title="Information"
class="ls-icon-info"></span> The 'Header'
directive is is optional and can be excluded or left in when copying rules
from elsewhere without issue.</p> </article> </div>
<div class="helpitem"><article
class="ls-helpitem"><div><header
id="allowSetUID"><h3>Allow Set UID<span
class="ls-permlink"><a
href="#allowSetUID"></a></span><span
class="top"><a
href="#top">⇑</a></span></h3></header></div><h4>Description</h4><p>Specifies
whether the set UID bit is allowed for CGI scripts. If the set UID bit is
allowed and the set UID bit is enabled for a CGI script, no matter which
user the CGI script was started on behalf of, the user ID of the CGI
process will switch to the user ID of the owner of the CGI
script.<br/> The default is "Off".</p>
<h4>Syntax</h4><p>Select from radio box</p>
<h4>Tips</h4><p><span title="Security"
class="ls-icon-security"></span> Do not allow Set UID
CGI scripts whenever possible, as it is inherently a security
risk.</p> </article> </div>
<div class="helpitem"><article
class="ls-helpitem"><div><header
id="allowOverride"><h3>Allow Override<span
class="ls-permlink"><a
href="#allowOverride"></a></span><span
class="top"><a
href="#top">⇑</a></span></h3></header></div><h4>Description</h4><p>Specifies
what directives in an access control file are allowed. An access control
file can be placed in a directory to control the accessibility of files
under that directory.<br/> <ul> <li>When nothing is
checked, inherited default settings will be used.</li>
<li>When <span class="val">None</span> is
checked, access control files will be ignored.</li> <li>
When <span class="val">Limit</span> is checked,
directives "Allow", "Deny", and "Order" are
allowed. <Limit> and <LimitExcept>
directives are also allowed with limited support for GET, HEAD, and POST
requests. </li> <li> When <span
class="val">Auth</span> is checked, directives
"AuthGroupFile", "AuthName", "AuthType",
"AuthUserFile", "Require", and "Satisfy"
are allowed. <Limit> and <LimitExcept>
directives are also allowed with limited support for GET, HEAD, and
POST requests. </li> <li> When <span
class="val">FileInfo</span> is checked, directives
"AddDefaultCharset", "AddType",
"DefaultType", "ForceType", "Redirect",
"RedirectPermanent", "RedirectTemp",
"RewriteBase", "RewriteCond",
"RewriteEngine", "RewriteOptions", and
"RewriteRule" are allowed. </li> <li> When
<span class="val">Indexes</span> is checked,
directives "DirectoryIndex", "ExpiresActive",
"ExpiresByType", and "ExpiresDefault" are allowed.
</li> <li>When <span
class="val">Options</span> is checked, directive
"Options" is allowed.</li> </ul><br/> Allow
Override configuration is available at the Server, Virtual Host, and
Context levels. If a configuration is unchecked at the Server level, those
controlled directives will be disabled for the entire server regardless of
settings at lower levels. Lower levels can disable a setting that is
enabled at a higher level, but cannot enable a setting that is disabled at
an upper level.<br/><br/> Default values:<br/>
<b>Server level:</b> "None" (ignore access control
file)<br/> <b>VH level:</b> Inherit Server level
setting<br/> <b>Context level</b> Inherit VH level
setting</p> <h4>Syntax</h4><p>Select from
checkbox</p> <h4>Tips</h4><p><span
title="Performance"
class="ls-icon-performance"></span> If there is no need
for directory level configuration customization, check <span
class="val">None</span>.</p> </article>
</div>
<div class="helpitem"><article
class="ls-helpitem"><div><header
id="realm"><h3>Realm<span
class="ls-permlink"><a
href="#realm"></a></span><span
class="top"><a
href="#top">⇑</a></span></h3></header></div><h4>Description</h4><p>Specifies
the authorization realm for this context. When specified, a valid username
and password must be provided in order to access this context. <span
class="tagl"><a
href="VHSecurity_Help.html#realms">Authorization
Realms</a></span> are set up in the <span
class="tagP"><a
href="#VHSecurity_Help">Virtual Host
Security</a></span> section. This setting uses each
realm's <span class="tagl"><a
href="VHSecurity_Help.html#realmName">Realm
Name</a></span>.</p>
<h4>Syntax</h4><p>Select from drop down list</p>
</article> </div>
<div class="helpitem"><article
class="ls-helpitem"><div><header
id="authName"><h3>Authentication Name<span
class="ls-permlink"><a
href="#authName"></a></span><span
class="top"><a
href="#top">⇑</a></span></h3></header></div><h4>Description</h4><p>Specifies
an alternative name for the authorization realm for the current context. If
not specified, the original realm name will be used. The authentication
name is displayed on the browser's login pop-up.</p>
</article> </div>
<div class="helpitem"><article
class="ls-helpitem"><div><header
id="required"><h3>Require (Authorized
Users/Groups)<span class="ls-permlink"><a
href="#required"></a></span><span
class="top"><a
href="#top">⇑</a></span></h3></header></div><h4>Description</h4><p>Specifies
which user/group can access this context. This allows you to use one
user/group database (specified in <span class="tagl"><a
href="#realm">Realm</a></span>) across a number of
contexts, but only allow certain users/groups from that database to access
this context.</p> <h4>Syntax</h4><p>Syntax is
compatible with Apache's Require directive. For example: <ul>
<li><span class="val">user username [username
...]</span><br/> Only listed users can access this
context.</li> <li> <span class="val">group
groupid [groupid ...]</span><br/> Only users belonging to the
listed groups can access this context.</li> </ul> If this
setting is not specified, all valid users will be allowed to access this
resource.</p> </article> </div>
<div class="helpitem"><article
class="ls-helpitem"><div><header
id="accessAllowed"><h3>Access Allowed<span
class="ls-permlink"><a
href="#accessAllowed"></a></span><span
class="top"><a
href="#top">⇑</a></span></h3></header></div><h4>Description</h4><p>Specifies
which IPs or sub-networks are allowed to access resources under this
context. Together with <span class="tagl"><a
href="#accessDenied">Access Denied</a></span> and
server/virtual host level access control, accessibility is determined by
the smallest scope that a client's IP address falls into.</p>
<h4>Syntax</h4><p>Comma-delimited list of
IPs/sub-networks.</p> <h4>Example</h4><div
class="ls-example">Sub-networks can be written as <span
class="val">192.168.1.0/255.255.255.0</span>, <span
class="val">192.168.1</span>, or <span
class="val">192.168.1.*</span>.</div></article>
</div>
<div class="helpitem"><article
class="ls-helpitem"><div><header
id="accessDenied"><h3>Access Denied<span
class="ls-permlink"><a
href="#accessDenied"></a></span><span
class="top"><a
href="#top">⇑</a></span></h3></header></div><h4>Description</h4><p>Specifies
which IPs or sub-networks are NOT allowed to access resources under this
context. Together with <span class="tagl"><a
href="#accessAllowed">Access Allowed</a></span>
and server/virtual host-level access control, accessibility is determined
by the smallest scope that a client's IP address falls into.</p>
<h4>Syntax</h4><p>Comma-delimited list of
IPs/sub-networks.</p> <h4>Example</h4><div
class="ls-example">Sub-networks can be written as <span
class="val">192.168.1.0/255.255.255.0</span>, <span
class="val">192.168.1</span>, or <span
class="val">192.168.1.*</span>.</div></article>
</div>
<div class="helpitem"><article
class="ls-helpitem"><div><header
id="extAuthorizer"><h3>Authorizer<span
class="ls-permlink"><a
href="#extAuthorizer"></a></span><span
class="top"><a
href="#top">⇑</a></span></h3></header></div><h4>Description</h4><p>Specifies
an external application that can be used to generate
authorized/unauthorized decisions. Currently, only the FastCGI Authorizer
is available. For more details about the FastCGI Authorizer role, please
visit <a href=" https://fastcgi-archives.github.io/ "
target="_blank" rel="noopener noreferrer">
https://fastcgi-archives.github.io/ </a>.</p>
<h4>Syntax</h4><p>Select from drop down list</p>
</article> </div>
<div class="helpitem"><article
class="ls-helpitem"><div><header
id="addDefaultCharset"><h3>Add Default Charset<span
class="ls-permlink"><a
href="#addDefaultCharset"></a></span><span
class="top"><a
href="#top">⇑</a></span></h3></header></div><h4>Description</h4><p>Specifies
whether to add a character set tag to the "Content-Type"
response header, when content type is either "text/html" or
"text/plain" without any parameters. When set to <span
class="val">Off</span>, this function is disabled. When
set to <span class="val">On</span>, either the
character set specified by <span class="tagl"><a
href="#defaultCharsetCustomized">Customized Default
Charset</a></span> or the default "iso-8859-1" will
be added.</p> <h4>Syntax</h4><p>Select from radio
box</p> </article> </div>
<div class="helpitem"><article
class="ls-helpitem"><div><header
id="defaultCharsetCustomized"><h3>Customized Default
Charset<span class="ls-permlink"><a
href="#defaultCharsetCustomized"></a></span><span
class="top"><a
href="#top">⇑</a></span></h3></header></div><h4>Description</h4><p>Specifies
a character set to be used when <span class="tagl"><a
href="#addDefaultCharset">Add Default
Charset</a></span> is <span
class="val">On</span>. This is optional. The default
value is <span class="val">iso-8859-1</span>.
This entry has no effect when <span class="tagl"><a
href="#addDefaultCharset">Add Default
Charset</a></span> is <span
class="val">Off</span>.</p>
<h4>Syntax</h4><p>Name of a character set.</p>
<h4>Example</h4><div
class="ls-example">utf-8</div></article>
</div>
<div class="helpitem"><article
class="ls-helpitem"><div><header
id="enableRewrite"><h3>Enable Rewrite<span
class="ls-permlink"><a
href="#enableRewrite"></a></span><span
class="top"><a
href="#top">⇑</a></span></h3></header></div><h4>Description</h4><p>Specifies
whether to enable LiteSpeed's URL rewrite engine. This option can be
customized at the virtual host or context level, and is inherited along the
directory tree until it is explicitly overridden.</p>
<h4>Syntax</h4><p>Select from radio box</p>
</article> </div>
<div class="helpitem"><article
class="ls-helpitem"><div><header
id="rewriteInherit"><h3>Rewrite Inherit<span
class="ls-permlink"><a
href="#rewriteInherit"></a></span><span
class="top"><a
href="#top">⇑</a></span></h3></header></div><h4>Description</h4><p>Specifies
whether to inherit rewrite rules from parent contexts. If rewrite is
enabled and not inherited, rewrite base and rewrite rules defined in this
context will be used.</p> <h4>Syntax</h4><p>Select
from radio box</p> </article> </div>
<div class="helpitem"><article
class="ls-helpitem"><div><header
id="rewriteBase"><h3>Rewrite Base<span
class="ls-permlink"><a
href="#rewriteBase"></a></span><span
class="top"><a
href="#top">⇑</a></span></h3></header></div><h4>Description</h4><p>Specifies
the base URL for rewrite rules.</p>
<h4>Syntax</h4><p>URL</p> </article>
</div>
<div class="helpitem"><article
class="ls-helpitem"><div><header
id="rewriteRules"><h3>Rewrite Rules<span
class="ls-permlink"><a
href="#rewriteRules"></a></span><span
class="top"><a
href="#top">⇑</a></span></h3></header></div><h4>Description</h4><p>Specifies
a list of rewrite rules at the virtual host level.<br/><br/> Do
NOT add any document root level rewrite rules here. If you have any
document root level rewrite rules from .htaccess, you should instead create
a static context with uri "/" and add the rewrite rules
there.<br/><br/> A rewrite rule is comprised of one <span
class="val">RewriteRule</span> directive and optionally
preceded by multiple <span
class="val">RewriteCond</span> directives. <ul>
<li>Each directive should take only one line.</li> <li>
<span class="val">RewriteCond</span> and <span
class="val">RewriteRule</span> follow Apache's
rewrite directive syntax. Just copy and paste rewrite directives from
your Apache configuration files. </li> <li> There
are minor differences between LiteSpeed and Apache mod_rewrite
implementation: <ul> <li> <span
class="val">%\{LA-U:variable\}</span> and <span
class="val">%\{LA-F:variable\}</span> are ignored
by the LiteSpeed rewrite engine </li> <li>
Two new server variables are added in the LiteSpeed rewrite engine:
<span class="val">%\{CURRENT_URI\}</span> represents
the current URI being processed by the rewrite engine and <span
class="val">%\{SCRIPT_NAME\}</span> has the same
meaning as the corresponding CGI environment variable.
</li> <li> The LiteSpeed rewrite engine will stop
processing rewrite rules after encountering an <span
class="val">[L]</span> flag to avoid looping while
Apache mod_rewrite will stop processing rewrite rules for the
current iteration only. This behavior is similar to that of the
<span class="val">[END]</span> flag in Apache
mod_rewrite. </li> </ul> </li>
</ul><br/> The implementation of LiteSpeed's rewrite
engine follows Apache's rewrite engine specifications. For more
details about rewrite rules, please refer to <a
href="https://httpd.apache.org/docs/current/mod/mod_rewrite.html"
target="_blank" rel="noopener noreferrer">
Apache's mod_rewrite document </a> and <a
href="https://httpd.apache.org/docs/current/rewrite/"
target="_blank" rel="noopener noreferrer">
Apache's URL rewriting guide </a>.</p>
<h4>Syntax</h4><p>string</p> </article>
</div>
<div class="helpitem"><article
class="ls-helpitem"><div><header
id="cachePolicy:maxStaleAge"><h3>Cache Stale Age
(seconds)<span class="ls-permlink"><a
href="#cachePolicy:maxStaleAge"></a></span><span
class="top"><a
href="#top">⇑</a></span></h3></header></div><h4>Description</h4><p>Specifies
how long an object will continue to be served from cache after it has
expired but before a new cached copy is available. The default is
"10" seconds.</p>
<h4>Syntax</h4><p>Integer number</p>
</article> </div>
<div class="helpitem"><article
class="ls-helpitem"><div><header
id="cachePolicy:enableCache"><h3>Publicly Cache
All<span class="ls-permlink"><a
href="#cachePolicy:enableCache"></a></span><span
class="top"><a
href="#top">⇑</a></span></h3></header></div><h4>Description</h4><p>Publicly
cache all URLs served under the current context (virtual host, or context
level).<br/><br/> Virtual hosts configured through
Apache's httpd.conf can use the "CacheEnable" and
"CacheDisable" directives at the server, virtual host, context,
file, and location level or in .htaccess. "CacheEnable" and
"CacheDisable" directives are compatible with Apache mod_cache
directives. However, when used at the context, file, or location level, or
in .htaccess, "CacheEnable" and "CacheDisable" will
only be applied to directories below the current level. URL parameters will
be ignored.</p> <h4>Syntax</h4><p>Select from radio
box</p> <h4>Tips</h4><p><span
title="Information"
class="ls-icon-info"></span> Disabled by default. Do not
enabled this setting if you are using any LSCache plugins.</p>
</article> </div>
<div class="helpitem"><article
class="ls-helpitem"><div><header
id="cachePolicy:expireInSeconds"><h3>Cache Expire Time
(seconds)<span class="ls-permlink"><a
href="#cachePolicy:expireInSeconds"></a></span><span
class="top"><a
href="#top">⇑</a></span></h3></header></div><h4>Description</h4><p>Specifies
how long an object will be cached. The default is "86400" seconds
(one day).</p> <h4>Syntax</h4><p>Integer
number</p> </article> </div>
<div class="helpitem"><article
class="ls-helpitem"><div><header
id="cachePolicy:microCache5xx"><h3>Micro Cache 5XX
Response<span class="ls-permlink"><a
href="#cachePolicy:microCache5xx"></a></span><span
class="top"><a
href="#top">⇑</a></span></h3></header></div><h4>Description</h4><p>Cache
pages responding with HTTP status code 5xx (500, 503, etc) for 10 seconds
when the cache response header indicates that the page is
cacheable.<br/><br/> Default values:<br/> <b>Server
level:</b> Yes<br/> <b>VH level:</b> Inherit Server
level setting<br/> <b>Context-level</b> Inherit VH level
setting</p> <h4>Syntax</h4><p>Select from radio
box</p> <h4>Tips</h4><p><span
title="Performance"
class="ls-icon-performance"></span> Enabling this
setting is useful for avoiding bad requests but can also act as some added
DDoS protection.</p> </article> </div>
<div class="helpitem"><article
class="ls-helpitem"><div><header
id="cachePolicy:enablePrivateCache"><h3>Privately Cache
All<span class="ls-permlink"><a
href="#cachePolicy:enablePrivateCache"></a></span><span
class="top"><a
href="#top">⇑</a></span></h3></header></div><h4>Description</h4><p>Privately
cache all URLs served under the current context (virtual host, or context
level).<br/><br/> A separate cached copy will be made per user
based on their IP and set cookies.<br/><br/> Virtual hosts
configured through Apache's httpd.conf can use the "CacheEnable
private /url" and "CacheDisable private /url" directives at
server, virtual host, directory, file, and location levels or in a
.htaccess file. "CacheEnable private" and "CacheDisable
private" are compatible with Apache's mod_cache directives and
will be applied to all directories below the current level. However, when
used at the directory, file, or location level, or in a .htaccess file,
"CacheEnable private" and "CacheDisable private" will
only be applied to directories below the current level. URL parameters will
be ignored.</p> <h4>Syntax</h4><p>Select from radio
box</p> <h4>Tips</h4><p><span
title="Information"
class="ls-icon-info"></span> Disabled by default. Do not
enabled this setting if you are using any LSCache plugins.</p>
</article> </div>
<div class="helpitem"><article
class="ls-helpitem"><div><header
id="cachePolicy:privateExpireInSeconds"><h3>Private
Cache Expire Time (seconds)<span class="ls-permlink"><a
href="#cachePolicy:privateExpireInSeconds"></a></span><span
class="top"><a
href="#top">⇑</a></span></h3></header></div><h4>Description</h4><p>Specifies
how long an object will be cached in private cache. The default is
"60" seconds.</p>
<h4>Syntax</h4><p>Integer number</p>
</article> </div>
<div class="helpitem"><article
class="ls-helpitem"><div><header
id="cachePolicy:enablePostCache"><h3>Enable POST
cache<span class="ls-permlink"><a
href="#cachePolicy:enablePostCache"></a></span><span
class="top"><a
href="#top">⇑</a></span></h3></header></div><h4>Description</h4><p>Specifies
if POST requests can be cached using the
"x-litespeed-cache-control" header.<br/><br/> Default
value: <span class="val">No</span></p>
<h4>Syntax</h4><p>Select from radio box</p>
</article> </div>
<div class="helpitem"><article
class="ls-helpitem"><div><header
id="enableIpGeo"><h3>Enable GeoLocation Lookup<span
class="ls-permlink"><a
href="#enableIpGeo"></a></span><span
class="top"><a
href="#top">⇑</a></span></h3></header></div><h4>Description</h4><p><span
class="tag">Enterprise Edition Only</span> Specifies
whether to enable/disable IP Geolocation lookup. Can be set at server,
virtual host, or context level. IP Geolocation is disabled by default when
using value "Not Set".</p>
<h4>Syntax</h4><p>Select from radio box</p>
<h4>See Also</h4><p
class="ls-text-small"><span class="tagl"><a
href="ServGeneral_Help.html#useIpInProxyHeader">Use Client IP
in Header</a></span>, <span class="tagl"><a
href="ServGeneral_Help.html#geoipDBFile">DB File
Path</a></span>,</p> </article> </div>
<div class="helpitem"><article
class="ls-helpitem"><div><header
id="pagespeedEnabled"><h3>Enable PageSpeed
Optimization<span class="ls-permlink"><a
href="#pagespeedEnabled"></a></span><span
class="top"><a
href="#top">⇑</a></span></h3></header></div><h4>Description</h4><p>Choose
whether or not to enable PageSpeed optimization.</p>
<h4>Syntax</h4><p>Select from radio box</p>
<h4>Tips</h4><p><span title="Information"
class="ls-icon-info"></span> This can be set at the
Server Level and overridden at the Virtual Host and Context Levels. Context
Level settings will override Virtual Host Level settings.</p>
</article> </div>
<div class="helpitem"><article
class="ls-helpitem"><div><header
id="pagespeedParams"><h3>PageSpeed Settings<span
class="ls-permlink"><a
href="#pagespeedParams"></a></span><span
class="top"><a
href="#top">⇑</a></span></h3></header></div><h4>Description</h4><p>Set
parameters using Google default filter sets.</p>
<h4>Example</h4><div class="ls-example"><br
/> pagespeed FileCachePath /tmp/lshttpd/pagespeed;<br/> pagespeed
RewriteLevel CoreFilters;</div></article> </div>
<div class="helpitem"><article
class="ls-helpitem"><div><header
id="apacheConf"><h3>Apache Style Configurations<span
class="ls-permlink"><a
href="#apacheConf"></a></span><span
class="top"><a
href="#top">⇑</a></span></h3></header></div><h4>Description</h4><p>Specifies
Apache configuration directives (supported by LiteSpeed) that you want to
use in LiteSpeed native configuration file. For example, to override the
default PHP configurations (php.ini entries) the server will need four
directives: "php_value", "php_flag",
"php_admin_value" and "php_admin_flag".</p>
<h4>Syntax</h4><p>Same as Apache configuration
file.</p> </article> </div>
</section>
</article><div class="ls-col-1-1"><footer
class="copyright">Copyright © 2003-2020. <a
href="https://www.litespeedtech.com">LiteSpeed Technologies
Inc.</a> All rights reserved.</footer>
</div></div>
</body>
</html>