Several things that can be confusing here.
Links can be inserted as either absolute or relative. Absolute will have either http:// or https://. Relative may have ../something, ./something, or /something BUT NEVER src="//.
There are two bad things about absolute links with http://something:
- The link actual forces the browser to go outside the site, get the file or image, and return to the site with the file. A TOTAL waste of time.
- Any http://something link on an https:// page will throw an error because you are telling the secure site to use an unsecure item from OUTSIDE the site. Even if the absolute link is an image in your images folder, you are still trying to get it and bring it back in an insecure manner.
There's a pretty good explanation at http://tinyurl.com/yp55ma.
Being secure, (https://) is controlled first of all by the configure.php files. The catalog/shop is controlled in yourSite/includes/configure.php.> /*************** NOTE: This file is similar, but DIFFERENT from the "admin" version of configure.php. ***********/
/*************** The 2 files should be kept separate and not used to overwrite each other. ***********/
// Define the webserver and path parameters
// HTTP_SERVER is your Main webserver: eg-http://www.your_domain.com
// HTTPS_SERVER is your Secure webserver: eg-https://www.your_domain.com
define('HTTP_SERVER', 'http://yourSite.com'); This can have the www. or not. It SHOULD be the same as your SSL certificate without the https.
define('HTTPS_SERVER', 'https://yourSite.com'); This can have the www. or not. It SHOULD be the same as your SSL certificate WITH the https.
// Use secure webserver for checkout procedure?
define('ENABLE_SSL', 'true'); This is so that the checkout process is secure and only used if your have an SSL installed.
// NOTE: be sure to leave the trailing '/' at the end of these lines if you make changes!
// * DIR_WS_* = Webserver directories (virtual/URL)
// these paths are relative to top of your webspace ... (ie: under the public_html or httpdocs folder)
define('DIR_WS_CATALOG', '/'); This is ONLY changed if your shop is in a subdirectory of your site.
define('DIR_WS_HTTPS_CATALOG', '/'); This is ONLY changed if your shop is in a subdirectory of your site.This should secure the log in and checkout for users UNLESS you have an absolute link on any of those pages. Oddly enough, this often happens when someone adds a relative link for an SSL cert.:blink:
The yourAdmin/includes/configure.php controls (in the most part) the yourAdmin area EXCEPT:> // secure webserver for storefront? Valid choices are 'true' or 'false' (including quotes).
define('ENABLE_SSL_CATALOG', 'false');It shouldn't need to be messed with in your case.
Most hosts should already be pointing www and non-www to the same URI. The mistake some folks make is that they purchase an SSL elsewhere not knowing which way their own host points.
You need to get with your host and review the SSL. Then set the configure settings to reflect the final status.
One thing at a time:
- Is my SSL www or not?
- If not, does my host point www to non-www?
- Make sure configure files reflect correctly whether www or non-www
- Search the entire site for http://. Any of them WILL be a problem of some kind. Make them relative to at least speed up the site.
P.S. Any absolute link will probably be missing some link info. So, while you're making it relative, remember title, target, and (if an image) alt tags.