views:

887

answers:

6

I've googled and googled for an answer to this and have found loads of answers - all saying pretty much the same thing. Remove any absolute references to images, scripts etc. I did that, but it's made no difference.

I searched the code for the string "http://" and made them relative (I've then changed some of the outbound links back to http to prevent searchbots finding a duplicate (https) version of our entire site) - but I don't think that's a problem, is it?

Please, could anyone take a look at the code, and see if they can find anything? The page is here: https://www.droverholidays.co.uk/bikehireform.php

Many, many thanks in advance!

+1  A: 

On any page accessed with SSL, check that any Ajax requests are using SSL, or IE will complain. Also, if you have a Google Analytics on your page, change it from http://www.google-analytics.com/urchin.js to https://ssl.google-analytics.com/urchin.js.

Gav
There isn't any GA code, but the "new" GA code (been around for over a year) handles HTTPS fine. So if you're using urchin.js, I'd recommend upgrading to ga.js.
DisgruntledGoat
+1  A: 

There is a geotrust.com link on the page, is that https?
I also see a lot of http links to your .co.uk site itself.

nik
Thanks - yes, I think the geotrust link is https://. The links to our .co.uk site should be absolute, if I understand it right, so that they don't lead searchbots off into a duplicate, https version, of our entire site - but that shouldn't cause any errors, should it?
Luke Skinner
@Luke, I did a quick scan with something like `CptSkippy`. Felt the `geotrust.com` link was a problem.. guess its not.
nik
+1  A: 

Have you checked all the scripts and stylesheets you're using for external references? Maybe there's a background image referenced with http:// ?

I noticed a couple of things in the code. First, the geotrust.com script - does // at the start use the current protocol? I've never seen that before. Second, some AJAX - again, make sure this is calling https.

Try removing an element or two at a time and see if the problem goes away. Another thing you can do in scripts, is check for https ("paraphrased" from Google Analytics code):

var jsHost = ( (document.location.protocol == "https:") ? "https://" : "http://" );
document.write(unescape("%3Cscript src='" + jsHost + "YOURSITE.COM' type='text/javascript'%3E%3C/script%3E"));
DisgruntledGoat
+5  A: 

These are all the resources called when you load that page.

So on line 328 change...

<!-- GeoTrust QuickSSL [tm] Smart  Icon tag. Do not edit. -->
<SCRIPT LANGUAGE="JavaScript"  TYPE="text/javascript"  
SRC="//smarticon.geotrust.com/si.js"></SCRIPT>
<!-- end  GeoTrust Smart Icon tag -->

to...

<!-- GeoTrust QuickSSL [tm] Smart  Icon tag. Do not edit. -->
<SCRIPT LANGUAGE="JavaScript"  TYPE="text/javascript"  
SRC="https://smarticon.geotrust.com/si.js"&gt;&lt;/SCRIPT&gt;
<!-- end  GeoTrust Smart Icon tag -->
CptSkippy
BTW - I used Tamper Data(https://addons.mozilla.org/en-US/firefox/addon/966) for FireFox to generate that list. It's an invaluable tool for debugging and hacking the web.
CptSkippy
Thanks - I don't think this is it though (would be ironic, wouldn't it, if it were the Geotrust Seal causing these messages!). Both Fiddler and HttpFox say it's pulling those links through https:// - isn't that what the src="//" is intended to do? (Never seen it before, just guessing).
Luke Skinner
+2  A: 

I think it's your rotating image gallery. If that's removed, the error goes away. Move the "startGallery" script block after the "myGallery" div, then change this line...

window.onDomReady(startGallery);

to just

startGallery();
David
Brilliant - thanks. That seems to get rid of the non-secure malarkey, but now the JS isn't working and I wouldn't have a clue how to sort that. The error I'm getting is Webpage error detailsMessage: Object doesn't support this property or methodLine: 87Char: 3Code: 0"URI: https://www.droverholidays.co.uk/scripts/jd.gallery.js"
Luke Skinner
Doh - sorry, I'm going too quickly. I didn't read your full solution. I've now moved the script block as you said, it gets further, but still doesn't load the images:Webpage error detailsMessage: 'this.galleryData.0.image' is null or not an objectLine: 266Char: 4Code: 0"URI: https://www.droverholidays.co.uk/scripts/jd.gallery.js"
Luke Skinner
I had a similar issue using the cloud-zoom jquery plugin on IE7. I don't understand why, but moving it out of jQuery(document).ready solved the problem.
Alexandre L Telles
@David, How did you narrow down the issue causing that problem? I would love to know that, because I'm stuck on the same kind of problem. Don't know if you will reply, i'm commenting on a 1 year old thread.
Raja
To narrow down the problem, I would just start removing code until the problem goes away.
David
A: 

Thanks all - brilliant to be able to get access to so much expertise so quickly!

It seems David had the right answer, unofrtunately my lack of understanding of JS means that the script no longer works, but I've asked another question about that so hopefully someone can help me with that one too. Failing that we'll just have to have a stationary image on this particular page which is better than alarming visitors using IE, I guess!

Many thanks again to you all for your time.

Luke Skinner