Hi,
We are experiencing cases where the links we add to our emails are navigating to pages (on our website) with multiple .html.html.html extensions and the error on the page is "Err_too_many_redirects". In most cases that I've seen these broken links we are adding web links to our own website, but I cannot speak to every case as I only provide technical assistance to our email marketing team. A few details to include on the links - we are including link tracking and the mkt_tok checkbox options.
Any thoughts and suggestions would be greatly appreciated!
Here is an example of a broken link:
Solved! Go to Solution.
This has nothing directly to do w/Marketo. Your website has a broken URL parser.
Marketo adds its mkt_tok query param for tracking. Your webserver looks at the entire URL (which of course does not end with .html, since the query string comes after the pathname) and decides it's missing an .html. It then adds .html to the very end and does an HTTP 302 redirect to what it believes is the canonical page.
But the pathname of the URL still doesn't include .html, since you added that to the query string. So it repeats the process: add .html to query string, fail to find .html in the pathname, add .html to query string again, fail to find .html in the pathname again, etc. Eventually the browser decides those are too many 302s and stops retrying. (Note this kind of redirect is a good way to do a self-DoS, since every hit reaches your server!)
Anyway, the solution is to fix your URL parser & redirect logic, no reason for it to be adding file extensions to the query string.
This has nothing directly to do w/Marketo. Your website has a broken URL parser.
Marketo adds its mkt_tok query param for tracking. Your webserver looks at the entire URL (which of course does not end with .html, since the query string comes after the pathname) and decides it's missing an .html. It then adds .html to the very end and does an HTTP 302 redirect to what it believes is the canonical page.
But the pathname of the URL still doesn't include .html, since you added that to the query string. So it repeats the process: add .html to query string, fail to find .html in the pathname, add .html to query string again, fail to find .html in the pathname again, etc. Eventually the browser decides those are too many 302s and stops retrying. (Note this kind of redirect is a good way to do a self-DoS, since every hit reaches your server!)
Anyway, the solution is to fix your URL parser & redirect logic, no reason for it to be adding file extensions to the query string.