 <p>The Sitecore <code>LinkManager</code> is indeed not so clever. We also experienced this issue with a mix of proxy servers and load balancers. To remove the ports, we have created a custom <code>LinkProvider</code> which removes the port if needed (untested code sample):</p> <pre><code>public class LinkProvider : Sitecore.Links.LinkProvider { public override string GetItemUrl(Item item, UrlOptions options) { var url = base.GetItemUrl(item, options); if (url.StartsWith("https://")) { url = url.Replace(":443", string.Empty); } return url; } } </code></pre> <p>And configure the new <code>LinkProvider</code>:</p> <pre><code>&lt;configuration xmlns:set="http://www.sitecore.net/xmlconfig/set/"&gt; &lt;sitecore&gt; &lt;linkManager defaultProvider="sitecore"&gt; &lt;providers&gt; &lt;add name="sitecore" set:type="Website.LinkProvider, Website" /&gt; &lt;/providers&gt; &lt;/linkManager&gt; &lt;/sitecore&gt; &lt;/configuration&gt; </code></pre>