For those of you who run Wordpress using SSL (https://www), and you have been having issues with your website, here’s a quick fix.
This guide will enable you to redirect all of the following combinations:
http://www.domain.com http://www.domain.com/subdir http://domain.com http://domain.com/subdir www.domain.com www.domain.com/subdir domain.com domain.com/sub
For me, all of the following had to be activated to achieve for a fully functioning website:
1. Updating your .htaccess file
I used the following in my HTACCESS:
# BEGIN WordPress RewriteEngine On RewriteCond %{HTTP_HOST} !^www\. [NC] RewriteRule ^ https://www.%{HTTP_HOST}%{REQUEST_URI} [NE,L,R=301] RewriteBase / RewriteRule ^index\.php$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L] # END WordPress
2. Changing WordPress Functions.php
My setup is much more modular so I don’t have this in my functions.php. However, for example purposes I’ve written and you can try it:
/* Force SSL */ function force_ssl () { if ( !is_ssl() ) { $request = 'https://' . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI']; wp_redirect( $request, 301 ); exit(); } } add_action( 'template_redirect', 'force_ssl', 1 ); /* Update siteurl and home url */ update_option('siteurl','https://' . $_SERVER['HTTP_HOST']); update_option('home','https://' . $_SERVER['HTTP_HOST']);
View More Tutorials
COMMENTS