I was working at a customer recently who’s Sitecore instance wasn’t accessible over HTTPS. It was a single server, and the site itself was working just fine over HTTPS, so that begged the question – why?
The error we were getting was:
Sitecore.Context.ContentDatabase returns null.
We were using HTTPS, and it’s worth noting that rather than redirecting all HTTP traffic to HTTPS with IIS, they were using C# code and a Response.Redirect() call in their page itself, which is… unusual. It also means that HTTP traffic to Sitecore shell is not redirected – the content page layout isn’t loaded, so their redirect wouldn’t happen.
Eventually, I found the following in a patch file:
<site name="shell">
<patch:attribute name="port">80</patch:attribute>
</site>
<site name="login">
<patch:attribute name="port">80</patch:attribute>
</site>
Interesting. Shell and login were being tied to port 80 – but HTTPS uses 443.
I removed this patch, and suddenly Sitecore was available over HTTPS again.