Logo

The Ultimate Shared Hosting Setup Guide

Welcome to the most comprehensive guide available for mastering your KairoHost LLC Shared Hosting environment. Whether you are deploying your very first HTML page, migrating a complex PHP application, or optimizing a high-traffic CMS, this manual covers every configuration file, DNS setting, security protocol, and performance tuning required for a bulletproof production launch.

1. Understanding the Shared Environment

Shared hosting is the foundational infrastructure of the web. In this environment, your website resides on a powerful, enterprise-grade bare-metal server alongside other KairoHost LLC customers. This architecture allows us to offer immense computing power at a fraction of the cost of dedicated hardware. However, because resources like CPU cores, RAM, and Disk I/O are distributed, it requires your application to be efficient and properly configured.

Our servers run on highly optimized Linux environments utilizing CloudLinux OS. This ensures that no single user can exhaust the server's resources and bring down your website. You are sandboxed within a virtualized file system (CageFS), guaranteeing absolute privacy and security from other accounts on the same node.

Resource Limits (LVE)

Every shared hosting account is governed by Lightweight Virtual Environment (LVE) limits. These limits dictate exactly how much CPU (Speed), Physical Memory (RAM), Entry Processes (Concurrent connections), and Inodes (Total file count) your account can utilize. You can monitor your real-time usage directly from your hosting control panel under the 'Resource Usage' tab.

2. Account Provisioning & File Structure

The moment you complete your checkout, our automated orchestration systems provision your account. Before uploading a single image, you must understand your file directory structure.

Recommended workflow

  1. Log in to your KairoHost LLC Client Area and navigate to 'My Services' > 'Active Subscriptions'. Click on your newly purchased Shared Hosting plan to access the server management panel.
  2. Open the 'File Manager' tool. You will see several directories, but the most important is the `public_html` directory. This is your web root.
  3. Understand the Web Root: Any file placed inside `public_html` is accessible to the entire internet. Files placed outside of it (like in your `/home/username/` root) are secure and inaccessible via a web browser.
  4. Verify Default Permissions: Before uploading, ensure directories are set to `755` (Read/Execute for public, Write for owner) and files are set to `644`. Incorrect permissions are the #1 cause of '403 Forbidden' errors.
  5. Delete the Default Index: KairoHost LLC places a default `index.php` or `default.html` placeholder in your `public_html` folder. You must delete or rename this file before your actual website will load.

Notes and best practices

  • Addon Domains: If you purchase a higher-tier plan that supports multiple websites, do NOT place the files for Site B inside the `public_html` folder of Site A. Instead, route the Addon Domain to a completely separate folder (e.g., `/home/username/site-b.com/`) to ensure absolute security isolation.
  • Never store massive `.zip` backups in your `public_html` folder. Hackers regularly run automated scripts looking for files named `backup.zip` to steal your source code and database credentials.

3. Domain & SSL Configuration

A website without a secure connection is penalized by search engines and distrusted by modern browsers. Configuring your DNS and enforcing HTTPS is a mandatory step before public launch.

The Path to HTTPS

Follow this sequence to guarantee a secure, encrypted connection.

Step 1: DNS Resolution

Ensure your domain's A Record points exactly to your Shared Hosting IP address (found in the right sidebar of your control panel). Wait 1-4 hours for propagation.

Step 2: AutoSSL Generation

Once DNS resolves globally, our AutoSSL system (powered by Let's Encrypt or Sectigo) will automatically generate and install a 256-bit SSL certificate within 24 hours.

Step 3: Force HTTPS (.htaccess)

You must tell the server to redirect insecure traffic. Add the rewrite rules to your `.htaccess` file (see code snippet below) to force a 301 redirect to HTTPS.

Step 4: HSTS Header

For maximum security, enable HTTP Strict Transport Security (HSTS) to instruct browsers to never load your site over HTTP, even if the user manually types it.

Required .htaccess Rules for HTTPS Enforcing

RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

Mixed Content Warnings

If your browser shows a padlock with a yellow warning triangle, your SSL is working, but your website's HTML is actively loading unencrypted resources (like an image hardcoded as `http://domain.com/logo.png`). You must update your database or source code to ensure every single asset uses `https://`.

4. PHP Version & INI Tuning

KairoHost LLC supports multiple PHP versions, from legacy applications requiring PHP 7.4 to modern frameworks utilizing PHP 8.2 and 8.3. By default, your account is provisioned with the most stable, secure version recommended by the community. However, heavy applications often require you to increase your PHP memory limits.

Modifying your php.ini variables

Open the 'Select PHP Version' tool in your control panel, then navigate to the 'Options' tab. You should adjust the following parameters based on your CMS requirements:

  • 01
    memory_limit

    The maximum amount of RAM a single PHP script can consume. Increase this to `256M` or `512M` if you are running heavy plugins like WooCommerce or Elementor to prevent "Allowed memory size exhausted" fatal errors.

  • 02
    max_execution_time

    The maximum time (in seconds) a script is allowed to run before the server terminates it. For normal sites, `30` or `60` is perfect. If you are importing large demo data or running complex backup scripts, temporarily increase this to `300`.

  • 03
    upload_max_filesize & post_max_size

    These govern the maximum size of files you can upload via PHP (like uploading a theme zip file or a large video). Ensure `post_max_size` is always equal to or slightly larger than `upload_max_filesize`. Set both to `128M` for most modern needs.

5. Database Management (MySQL/MariaDB)

Your database is the heart of your dynamic application. Creating and connecting to it properly is where most beginners encounter fatal errors.

Recommended workflow

  1. Navigate to 'MySQL Databases' in your control panel.
  2. Under 'Create New Database', enter a name. Note that your hosting username will be permanently prefixed to the database name (e.g., `username_dbname`).
  3. Scroll down to 'Add New User'. Create a user and a highly complex password. Save this password in your password manager immediately.
  4. Crucial Step: Scroll down to 'Add User to Database'. Select your new user, select your new database, and click Add. You MUST check the 'All Privileges' box on the next screen.
  5. Update your application configuration file (e.g., `wp-config.php`, `.env`) with these exact details. The DB_HOST must ALWAYS be set to `localhost`.

Notes and best practices

  • phpMyAdmin Access: You can access your database visually via phpMyAdmin in the control panel. This allows you to run raw SQL queries, export `.sql` dumps, or modify rows manually.
  • Collations: Ensure your database collation is set to `utf8mb4_unicode_ci` to properly support emojis and international characters.

6. File Transfer: FTP vs File Manager

When it's time to upload your gigabytes of website data, you have two primary options. Choosing the wrong method will result in timeouts and corrupted uploads.

The Web File Manager

Built directly into the KairoHost LLC dashboard, the File Manager is perfect for quick edits, renaming files, changing permissions, and extracting `.zip` archives directly on the server.

Best for: Uploading a single compressed .zip file and extracting it on the server (Lightning fast).

FTP / SFTP Client

Using desktop software like FileZilla or Cyberduck allows you to queue thousands of individual files for upload. Use your main control panel username and password to connect via Port 21 (FTP) or Port 22 (SFTP).

Best for: Managing massive media libraries, doing bulk migrations, or working directly from an IDE.

7. Performance Optimization & Caching

Shared hosting thrives on caching. Because CPU time is limited, serving dynamically generated PHP pages to every visitor will quickly exhaust your LVE limits, resulting in 503 Service Unavailable errors. You must implement server-side caching.

  • LiteSpeed Web Server: KairoHost LLC utilizes LiteSpeed, which is up to 10x faster than traditional Apache. If you use WordPress, you MUST install the free LiteSpeed Cache (LSCache) plugin to unlock server-level page caching.
  • Enable Brotli/Gzip Compression: Ensure compression is enabled in your control panel under 'Optimize Website'. This compresses your HTML, CSS, and JS files by up to 80% before sending them to the browser.
  • Cloudflare CDN Integration: Navigate to the CDN section of your dashboard and enable Cloudflare. This acts as a reverse proxy, caching your static assets on hundreds of edge servers globally, blocking DDoS attacks, and massively reducing the bandwidth load on your shared server.
  • Database Optimization: Regularly clean your database of transient data, spam comments, and old post revisions. A bloated database takes longer to query, eating into your CPU execution time.

8. Shared Hosting Troubleshooting Hub

Encountering an error? Don't panic. Review our extensive library of deep-dive solutions for the most common issues faced on shared infrastructure.