Add a Website

Site (website) — a page or group of pages that are broadcast to the Internet and are available to users by URL. The appearance and content of the website are formed from its source files. When you add a website, a domain name is automatically created for it. Read more in Create a  domain name .
Before creating a website, set up a web server in the control panel. Read more in Install a web-server.
To add a website:
    .1In the Main menu choose Sites.
    .2In the form that opens, click the Create website button.
    .3Select the settings mode and complete the creation of the site:
  • Basic settings — you specify only the basic settings. Other settings will use default values (see  Basic settings );
  • Extended settings — all site settings are specified. (см.  Extended settings ).
Note
For stable operation of the ispmanager Host control panel, we do not recommend creating more than 100 sites.

Basic settings

To create a site in the basic settings mode:
    .1Enter the Domain name — the name by which users will access the website.
    .2Specify the root Website directory relative to the owner's home directory. The site files will be stored in this directory (by default, the path will look like www/{The domain name specified in paragraph 1}).
    .3Select the Handler for the site content:
    .4Specify the handler settings:
  • For a site with PHP:
  • Select the CMS (content management system) in the Website/CMS field. CMS is used to fill the website with content (articles, photos, pages, etc.) Without a CMS, adding new content or changing existing content will require editing the website’s source files. Ispmanager supports Drupal, Prestashop, WordPress, Joomla, phpBB, BItrix, HostCMS. CMS installation is not available for sites with Node.js handlers.
  • select the PHP mode:
  • Apache module — dynamic content is processed by the PHP module of the Apache web server;;
  • CGI —dynamic content is processed by Apache in CGI mode;
  • FastCGI (Apache) — dynamic content is processed by Apache in FastCGI mode;
  • FastCGI (Nginx + PHP-FPM) — PHP-FPM processes dynamic content;
  • LSAPI — PHP mode for the OpenLiteSpeed web server;
  • Not used — the website does not require PHP support;
  • Select the required PHP version;
  • For a site with Node.js: specify the Node.js version
    .5Select from the list the Database in which the website information will be stored:
  • when you select Create a new database, a window opens in which you need to specify its parameters:
  • Select the Database server.
  • Enter the Database name.
  • Select the Database user or Create new user. To create a new user, specify its Username and Password.
If the website should not use the database, select Do not assign database.
Read more in the  Databases  section.
6. Specify the settings for the  Let's Encrypt  SSL certificate. If an SSL certificate is not needed for the site, uncheck Enable SSL option.
7. Press Issue.

Extended settings

The extended settings form consists of the following sections:

Basic settings

    .1Specify the Domain name — the name by which users will access the website.
    .2Specify the Website aliases — additional names for accessing the website. For example,  www.example.com  or  wiki.example.com . By default, an alias "www." is entered after the domain name.
    .3Specify the Website directory relative to the owner's home directory. Files of the website will be stored in this directory.
    .4Select the Handler for the site content:
    .5For a site with PHP select the CMS (content management system) in the Website/CMS builder field. CMS is used to fill the website with content (articles, photos, pages, etc.). Without a CMS, adding new content or changing existing content will require editing the website's source files.
    .6Select the IP addresses that will be assigned to the site.
    .7Select the Website owner — an ispmanager user. In /vhosts a directory with the user's login is created. In this directory, an Nginx configuration file for the site named .conf. is  created.In  /conf/vhosts , a directory with the user's login is created. In this directory, an Apache configuration file for the site name is created.
    .8If necessary, enable the Default website option. This option is used if several websites are assigned to the same IP address and a user requests a website using an IP address or domain name that is not registered on the server with ispmanager. In this case, the control panel will open the default website. If this option is not specified for any website, the control panel will open the website whose domain name is the first alphabetically. The punycode encoding will be used to compare Cyrillic domain names.

Handler

If you selected the PHP handler:
    .1Select the PHP mode :
  • Apache module — dynamic content is processed by the PHP module of the Apache web server;
  • CGI — dynamic content is processed by Apache in CGI mode;
  • FastCGI (Apache) — dynamic content is processed by Apache in FastCGI mode;
  • FastCGI (Nginx + PHP-FPM) — PHP-FPM processes dynamic content;
  • LSAPI — PHP mode for the OpenLiteSpeed web server;
  • Not used — the website does not require PHP support.
    .2Select the required PHP version.
Read more in PHP modes.
If you selected the Node.js handler:
    .1Specify the Node.js version. The version will be installed only for the user who owns the website. The latest version of Node.js and LTS versions starting with 12.13.0 are available.
    .2Select Connection method:
  • Socket file — Node.js application will use Unix sockets to run;
  • Port — Node.js application will use the TCP port to run.
Ispmanager will automatically select a free TCP port for Node.js. The search for a free port starts with the value specified in the NodeJsBackendBind parameter of the ispmanager configuration file. The default value of the parameter — 127.0.0.1:10000.The directory /var/www//data/nodejs/ will be created to run Node.js through a Unix socket.

Database settings

Select from the list the Database in which the website information will be stored.
If you need to create a database, select Create a new database and fill in the same way as described in the  Basic Settings  section (point 5).
Read more in the section  Databases .

Optimization and DDoS protection

    .1If you are using an Nginx web server, select the Compression level of static content on the website. Static content is files that rarely change: images, sounds, music, videos, etc. Such files, as a rule, occupy a large volume and slow down the loading of the website. File compression reduces the time it takes for users to load the website. The compression level can be set from 1 to 9. The recommended value is 5. To prevent the web server from compressing static content, select level 0. To enable static content compression for the OpenLiteSpeed web server, enable the Сompression option. The compression level for OpenLiteSpeed is not configurable.
    .2To cache the website content, enable the Cache configuration option. When caching, the result of slow operations, which are performed when opening the website, is stored for a given period of time. The website is accelerated by showing users pre-saved data. However, if the cached content on the website changes, users will receive the old data until the cache expires. To configure the cache settings, specify the Cache period and the Period value. For example, 2 hours.
    .3If you are using an Nginx or OpenLiteSpeed web server, you can Enable DDoS protection. Nginx completely blocks access to the server from the IP address, while OpenLiteSpeed limits bandwidth for the IP address. Specify the protection parameters:
  • Nginx:
    .iNumber of Requests per second from one IP address — if this parameter is exceeded, the IP address is blocked for 5 minutes.
    .iiMaximum peak attack size — the number of requests per second above which new requests are blocked.
  • OpenLiteSpeed:
    .iNumber of Requests per second from one IP address — if this parameter is exceeded, the bandwidth for the IP address is limited.
    .iiBandwidth, bytes/sec — the bandwidth for the IP address. The actual throughput may be slightly higher than this setting. The value will be rounded in 4 Kb increments. To not limit the speed, enter 0.

Additional settings

    .1Specify the Administrator email address — the email address that will be displayed on the web server error pages for this website. By default, after entering the domain name, the field specifies the mailbox webmaster@.
    .2To force a secure HTTPS connection when trying to open a website using the HTTP protocol, enable the Redirect HTTP-requests to HTTPS option. The option is available if an SSL certificate is connected to the website. When redirecting, the server returns a response code "301 Moved Permanently".
    .3Encoding. Encoding defines the set of characters that are used to represent the data of the website::
  • off — the default value for the database will be used;
  • UTF-8 (recommended) — includes all characters of the Unicode standard, including  Cyrillic. To change the encoding list, create a file /usr/local/mgr5/etc/charset and specify the required values in it.
    .4Specify the Index page of the website. This page opens for the user who goes to the website by domain name and does not specify a particular page. For example, in the case of request  www.example.com  , instead of  ww.example.com/index.php  Multiple pages can be listed in order of importance, separated by a space. If the first specified page does not exist, the second page will be checked and so on. If you do not specify index pages, the control panel will use values from the global web server settings.
    .5To force a secure HTTPS connection when connecting to the website, enable the HSTS option. The option is available if an SSL certificate is connected to the website. Redirection works if the user's browser has already connected to the website through a secure connection and has saved the connection parameters. When redirecting, the server returns a response code "301 Moved Permanently".
    .6For the server to be able to process SSI commands, enable the SSI option. SSI (Server Side Includes) is a programming language for dynamic page building on the server before displaying them. The option is only available for Apache and Nginx web servers.
    .7Select whether to Use open_basedir for the Apache module mode of PHP:
  • option enabled — PHP scripts have access only to the root directory of the website;
  • option disabled — PHP scripts have access to all server directories.
    .8If the site needs CGI script support, enable the CGI scripts option and specify the CGI script File extensions. The option is only available for Apache and Nginx web servers.
    .9Select the Website logs you want to keep. Read more in  Website statistics .
  • Access log — statistics on queries to the website;
  • Error log — web server error statistics for the website;
  • Do not use log — select to disable logging.
    .10Select the log Rotation period :
  • daily;
  • weekly;
  • monthly;
  • by → specify the Size, MB.
    .11In the Store archives field, specify the number of log files that will be stored in the archived form.
    .12Select the Report generator that will be used to collect statistics on website traffic. The option is available if you have installed the Apache web server with the awstats or webalizer module. Read more about installation in Install a web-server. Specify the generator settings:
    .aSelect the Period for collecting statistics on queries. Additionally, statistics will be collected at the time of log rotation.
    .bSelect the Statistics language .
    .cIf necessary, enable the option Restrict access to statistics, specify the Password for access and Confirm it. The name of the website owner will be used as the username.

Editing the website settings

To edit the WWW domain settings, select Sites → select the website → Edit button → Edit.
Note
If you change the website settings manually through the web server configuration files, a data mismatch warning will appear when you open the edit form. To apply the changes made manually, press Ok on the edit form.
To change the web server settings for the WWW domain, enter Sites → select the website → Configuration files button.
Note
We do not recommend changing the configuration files unless you are absolutely sure about what you are doing. Before saving the configuration, ispmanager checks only the file syntax, and not the correctness of the settings.

How to enable SEF URL (friendly URL)

SEF URL - the same as a human-readable URL - is a URL that consists of clear words instead of identifiers and reflects the file structure of the site. For example, /product/phone/Apple/ is used instead of /c11/2/33/ or /index.php?cat=10&subcat=2&id=41.

There are two ways to enable this function:
  • using the command line;
  • via the web interface.
In the command line
1. Open the configuration file.
/etc/nginx/vhosts/<username>/<website>.conf
Set the parameters.
  • Username - the name of the user who owns the site;
  • Site - site name specified in the list of sites.
2. Add the following line to the Nginx configuration file:
try_files $uri $uri/ /index.php?$args;
3. After making the configuration changes, save the file and restart the Nginx service to apply the new settings.
Via the control panel interface:
1. Open Main MenuSites → choose site → Edit
2. Open the Handler (PHP) drop-down tab.
Check the Enable human-readable url processing checkbox and click Save button.