Use HTTPS for Acid3 Fix test 64 for running under https and redirect to HTTPS for this test. There's an alternative here that might be simpler: change test 64 to look for window.location.protocol using indexOf() === 0, but I think that this version will produce a better outcome for all involved. I haven't investigated it, but there is an outside chance that HSTS on the server is cleaner. Given the amount of stuff that server serves, I doubt that that change would be trivial though.
diff --git a/acid/acid3/test.html b/acid/acid3/test.html index 0c47530..56e9c28 100644 --- a/acid/acid3/test.html +++ b/acid/acid3/test.html
@@ -140,9 +140,17 @@ #\ #result, #\ #score { position: fixed; top: 10%; left: 10%; width: 4em; z-index: 1; color: yellow; font-size: 50px; background: fuchsia; border: solid 1em purple; } </style> + <!-- not part of the tests --> + <script type="text/javascript"> + if (window.location.protocol != "https:" && window.location.hostname.toLowerCase() != "localhost") { + window.location.href = window.location.href.replace(/^http:/, "https:"); + } + </script> + <!-- part of the HTTP tests --> <link rel="stylesheet" href="empty.css"><!-- text/html file (should be ignored, <h1> will go red if it isn't) --> - + + <!-- the next five script blocks are part of one of the tests --> <script type="text/javascript"> var d1 = "fail"; @@ -2300,7 +2308,7 @@ var obj2 = document.createElement('object'); obj2.setAttribute('data', './test.html'); assertEquals(obj1.data, obj2.data, "object elements didn't resolve URIs correctly"); - assert(obj1.data.match(/^http:/), "object.data isn't absolute"); + assert(obj1.data.match(/^https:/), "object.data isn't absolute"); obj1.appendChild(document.createElement('param')); assertEquals(obj1.getElementsByTagName('param').length, 1, "object is missing its only child"); // non-existent attributes