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
- Accessing the .htaccess File
- Generic mod_rewrite Rule
- WordPress/Drupal/Joomla mod_rewrite Rule
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.
- Login to your Bluehost cPanel
- Click the "File Manager", located in the Files section of the cPanel.
- Check the box "Show Hidden Files (dotfiles)."
- Right click the .htaccess file and choose "Edit" or "Code Edit
- 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.
- 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.
Recommended Help Content
Installing the WildCard SSL on a Reseller account
How to install the provided WildCard SSL on a reseller account
How To Activate Free SSL Certificate - Free Wordpress SSL Setup
Bluehost now provides free free SSL certificates for all WordPress sites. This article describes how to activate the free SSL for a WordPress site.
Purchasing or Renewing SSL certificates
How to renew an existing SSL certificate--or purchase a new one, within your cPanel
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?
How to Upload an SSL Certificate to SiteLock
This article will explain the process for uploading an SSL Certificate to SiteLock's dasboard. The steps for accessing the SSL Manager may vary depending on which user interface your account uses.
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.
How To Force SSL On All Pages In .htaccess File
How to force https on entire website.
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.