Bluehost Web Hosting Help

Wildcard SSL Certificates

Overview

This article will show you how to use your WildCard SSL Certificate, on your Bluehost hosting account, using mod_rewrite. This is required due to a limitation in WHM that only allows there to be one virtualhost entry.



Folder Structure

The subdomain must be assigned to a folder that is underneath the folder its parent domain is assigned to. Because of the way subdomains are assigned, it's easy for a subdomain to not be put inside the parent domains folder. You will need to reassign the domain to a folder under the parent domain in this situation.
Example: Say you have a wildcard SSL certificate for example.com. Example.com is assigned to the public_html folder. I want to use my certificate on sub.example.com. In this case sub.example.com should be assigned to public_html/sub/ because sub is a directory underneath public_html.

Accessing the .htaccess File

The .htaccess file is located in the parent domain's folder. While you can use an FTP or an SSH client to access the file, for this article we will be using the File Manger.

  1. Login to your Bluehost cPanel
  2. Click the "File Manager", located in the Files section of the cPanel.
  3. Check the box "Show Hidden Files (dotfiles)."
  4. Right click the .htaccess file and choose "Edit" or "Code Edit
  5. For basic HTML sites follow the instructions under Generic mod_rewrite Rule and copy the code into the Editor. If you have a WordPress, Joomla or Drupal site follow the instructions under WordPress/Joomla/Drupal mod_rewrite Rule.
  6. Click Save Changes.

Generic mod_rewrite Rule

If you have a basic HTML site copy the following text into your public_html/.htaccess file.
Note: You should not use this if you have a WordPress, Joomla or Drupal site. Use the instructions under WordPress/Joomla/Drupal mod_rewrite Rule instead.

You will need to replace subdomain with your subdomain and example.com with your domain name.


        # BlueHost.com
        #.htaccess WildCard SSL
        RewriteEngine On
        RewriteCond %{HTTP_HOST} ^subdomain.example.com$
        RewriteCond %{REQUEST_URI} !^/subfolder/
        RewriteCond %{REQUEST_FILENAME} !-f
        RewriteCond %{REQUEST_FILENAME} !-d
        RewriteRule ^(.*)$ /subfolder/$1
        RewriteCond %{HTTP_HOST} ^subdomain.example.com$
        RewriteRule ^(/)?$ subfolder/index.php [L]
            

Once you have modified this code you may need to clear your browser cache to be able to see the redirect.

WordPress/Joomla/Drupal mod_rewrite Rule

For WordPress, Joomla or Drupal sites copy the following code:

If Just The Subdomain Holds either a WordPress, Joomla, or Drupal Site

If your subdomain holds either a WordPress, Joomla, or Drupal site but the parent domain does not, copy the following code.

You will need to replace subdomain with your subdomain and example.com with your domain name.

        # Custom subdomain .htaccess SSL + WordPress
        RewriteEngine On
        RewriteCond %{HTTP_HOST} ^subdomain.maindomain.com$
        RewriteCond %{REQUEST_URI} !^/subfolder/
        RewriteRule ^(.*)$ /subfolder/$1
        RewriteCond %{HTTP_HOST} ^subdomain.maindomain.com$
        RewriteRule ^(/)?$ subfolder/index.php [L]
        # End custom subdomain .htaccess
              

If The Parent Domain has WordPress

If both the parent domain and the subdomain have either a WordPress, Joomla, or Drupal site copy the following code into your .htaccess file. This code will replace the WordPress permalink code.

You will need to replace subdomain with your subdomain and example.com with your domain name.

        # Custom subdomain .htaccess SSL + WordPress
        RewriteEngine On
        RewriteCond %{HTTP_HOST} ^subdomain.maindomain.com$
        RewriteCond %{REQUEST_URI} !^/subfolder/
        RewriteRule ^(.*)$ /subfolder/$1
        RewriteCond %{HTTP_HOST} ^subdomain.maindomain.com$
        RewriteRule ^(/)?$ subfolder/index.php [L]
        # End custom subdomain .htaccess
        
        # Custom maindomain .htaccess WordPress
        RewriteEngine On
        RewriteBase /
        RewriteCond %{HTTP_HOST} ^(www.)?maindomain.com$
        RewriteRule ^index\.php$ - [L]
        RewriteCond %{HTTP_HOST} ^(www.)?maindomain.com$
        RewriteCond %{REQUEST_FILENAME} !-f
        RewriteCond %{REQUEST_FILENAME} !-d
        RewriteRule . /index.php [L]
        # End custom maindomain .htaccess
              

You may need to clear your browser cache for the new rules to work. After that your Wildcard SSL certificate should be working.

Knowledgebase Article 108,070 views bookmark tags: htaccess reseller ssl subdomain subfolder wildcard


Was this resource helpful?

Did this resolve your issue?


Please add any other comments or suggestions about this content:





Recommended Help Content

Installing the WildCard SSL on a Reseller account

How to install the provided WildCard SSL on a reseller account

Purchasing or Renewing SSL certificates

How to renew an existing SSL certificate--or purchase a new one, within your cPanel

How to activate a free WordPress SSL Certificate

Bluehost now provides free free SSL certificates for all WordPress sites. This article describes how to activate the free SSL for a WordPress site.

Related Help Content

How to Download your SSL Certificate

This article explains how to download a copy of your SSL certificate.

Wildcard Subdomains or DNS

Do you support wildcard subdomains or wildcard DNS entries?

Manage Service SSL Certificates

How to add a new SSL certificate for your different WM services.

SSL Installation of 3rd Party Certificate

I need to have an SSL 3rd Party Certificate installed for my domain.

VPS or Dedicated Hosting - Resetting the SSL certificates for your server's services

How to reset the SSL certificates for your servers services

SSL/TLS Certificates and Addon Domains

SSL/TLS Certificates and Addon Domains.

SSL Installation of Self-Signed Certificate

I need to have an SSL Self-Signed Certificate installed for my domain.

Protect Specific Pages With SSL

This article will show a way to protect specific pages of your website with SSL. This may have benefits for SEO and can be used on pages that contain forms, shopping carts or any other page where users might enter sensitive information.