mirror of
https://github.com/usmannasir/cyberpanel.git
synced 2026-01-28 10:19:04 +01:00
181 lines
9.5 KiB
HTML
181 lines
9.5 KiB
HTML
<!DOCTYPE html>
|
||
<head>
|
||
<meta charset="utf-8" />
|
||
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" />
|
||
<title>OpenLiteSpeed Users' Manual - Configuration</title>
|
||
<meta name="description" content="OpenLiteSpeed Users' Manual - Configuration." />
|
||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||
<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/ols_logo.svg" alt="openlitespeed logo" width="150px"/>
|
||
</figure>
|
||
<h3 class="ls-text-thin">OpenLiteSpeed Web Server <a href="index.html"> Users' Manual</a></h3>
|
||
<h5 class="ls-text-muted">Version 1.4 — Rev. 6</h5>
|
||
<hr/>
|
||
<div>
|
||
<ul>
|
||
<li><a href="license.html">License</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="level2"><li><a href="ServerStat_Help.html">Service Manager</a></li></ul></li>
|
||
<li><a href="security.html">Security</a></li>
|
||
<li><span class="current"><a href="config.html">Configuration</a></span>
|
||
<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="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="Rails_Help.html">Rack/Rails Settings</a></li>
|
||
<li><a href="Module_Help.html">Module Configuration</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">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="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><a href="CGI_Context.html">CGI Context</a></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="Rails_Context.html">Rack/Rails Context</a></li>
|
||
<li><a href="Module_Context.html">Module Handler Context</a></li>
|
||
</ul>
|
||
<li><a href="VHWebSocket_Help.html">Web Socket Proxy</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="security.html">Security</a></div><div class="center"><a href="index.html">Home</a></div><div class="next"><a href="webconsole.html">Web Console</a> »</div></div>
|
||
<h1>Configuration</h1>
|
||
|
||
<section>
|
||
<a name="con"></a><h3><b>Concepts</b></h3>
|
||
|
||
<p>Here are some basic concepts you should know before going into the detail of the configuration.</p>
|
||
|
||
<a name="vh"></a><h3>Virtual Hosts</h3>
|
||
|
||
<p>LiteSpeed web server can host multiple web sites (virtual hosts) with one server instance.</p>
|
||
|
||
<p>Traditionally, virtual hosts are classified into two types: IP-based virtual hosts and
|
||
name-based virtual hosts.
|
||
IP-based virtual hosts are web sites that have their own unique IP addresses. Name-based
|
||
virtual hosts are web sites that are distinguished by their domain name and
|
||
thus may share an IP address with other sites. There is no clear
|
||
distinction between these two categories in LiteSpeed
|
||
Web Server. IP-based virtual hosts are considered just a special kind of
|
||
name-based virtual host. Both of them can be easily configured, or even mixed
|
||
together.</p>
|
||
<p>Unlike other web servers, LiteSpeed Web Server does not have a default web site.
|
||
Every web site is configured as a virtual host even if only one web site is hosted.</p>
|
||
|
||
<a name="l"></a><h3>Listeners</h3>
|
||
|
||
<p>In LiteSpeed Web Server, a listener is a server socket that listens on a
|
||
specific IP address and TCP port. If you imagine the web server as a building, the listeners are
|
||
the doors (each with its own IP address and port).
|
||
Clients (browsers) have to go through a door (a listener) to submit their requests.</p>
|
||
|
||
<p>For each listener, an IP address and a port number need to be specified.
|
||
IP address can be any valid local IP address, or you can set a wildcard IP
|
||
(*) that refers to all available IP addresses on that machine.
|
||
A port is an integer between 0 and 65535.
|
||
The default port for HTTP is 80 and 443 for HTTPS.
|
||
Other ports can be used, though, on UNIX machines, only the super user "root"
|
||
has permission to use ports below 1024.</p>
|
||
|
||
<p>Only one listener is allowed for each IP and port combination.
|
||
Thus, if a listener is configured to one port with the wildcard IP address,
|
||
you cannot configure another listener to the same port, even if you specify
|
||
a particular IP. For example, if there are multiple IP addresses on the web
|
||
server machine, and HTTP traffic needs to be allowed on port 8080 for all
|
||
IP addresses, this can be configured in two ways: set up one
|
||
listener using the wildcard IP (*) and port 8080, or set up multiple
|
||
listeners, one for each IP, all listening to port 8080. These two methods
|
||
cannot be mixed on a single port.</p>
|
||
|
||
<p>There are two types of listeners in LiteSpeed Web Server: plain and secure
|
||
(SSL). Each secure listener requires a paired SSL private key and SSL certificate.
|
||
The private key can be generated with an SSL toolkit like
|
||
OpenSSL. The SSL certificate can be self-signed or obtained from
|
||
an SSL certificate issuer like VeriSign or Thawte. You can share the same private
|
||
key and certificate pair among multiple listeners. </p>
|
||
|
||
<a name="map"></a><h3>Listener to Virtual Host Mapping</h3>
|
||
|
||
<p>LiteSpeed's Listener to Virtual Host Mapping provides extra flexibility, allowing you
|
||
to:</p>
|
||
<ul>
|
||
<li>map one listener to one virtual host.</li>
|
||
<li>map one listener to different virtual hosts for different domain names.</li>
|
||
<li>map multiple listeners to the same virtual host.</li>
|
||
<li>map multiple listeners to multiple virtual hosts depending on their domain names.</li>
|
||
</ul>
|
||
|
||
<p>In Listener to Virtual Host Mapping, every listener has a virtual host lookup table
|
||
with key-value pairs that specify a domain name (key) for
|
||
a particular virtual host (value).</p>
|
||
|
||
<p>When a browser tries to retrieve a web page from a web server, it first uses a DNS lookup to
|
||
find the IP address associated with that domain name. It then sends a request to establish a
|
||
TCP connection with the web server on a specific IP and port. If there is a listener assigned
|
||
to that IP and port, a connection is established. The browser then sends an HTTP
|
||
request, which includes, in the header, the domain name of the web site being accessed.
|
||
The web server checks the lookup table associated with that listener for the domain name
|
||
in the request. If a match is found, the request is routed to the virtual host for processing.</p>
|
||
|
||
<p>In order to make a virtual host accessible through a specific listener, you must
|
||
make sure that:</p>
|
||
<ol>
|
||
<li>DNS is configured properly to map the domain name of the web site to the
|
||
IP used by that listener. How to configure DNS is beyond the scope of this document.</li>
|
||
<li>A mapping to the virtual host for that domain name exists in the listener's
|
||
lookup table.</li>
|
||
</ol>
|
||
|
||
<p>A catchall virtual host can be specified for one listener with the wild card domain name
|
||
"*". When the server cannot find a matching virtual host, the request will be routed
|
||
to the catchall virtual host. If there is no such catchall virtual host configured,
|
||
the web server will return error code 404.</p>
|
||
|
||
|
||
</section>
|
||
</article><div class="ls-col-1-1"><footer class="copyright">Copyright © 2013-2017. <a href="https://www.litespeedtech.com">LiteSpeed Technologies Inc.</a> All rights reserved.</footer>
|
||
</div></div>
|
||
</body>
|
||
</html>
|