SP 2013 installed on Windows Server 2012 r2. I had checked this I don’t know how many times. Finally noticed that:
- I entered a url in Altrnate Access Mapping of http://mysites.company.com
- The bindings in IIS were added to point to that same value: Type = http, IP Address = All Unassigned, Port = 80, Host name = “mysites.company.com”
- A DNS entry was created, pointing mysites.company.com to the Web Front End server (we only have one, if there were multiple, I assume this would need to point to the load balancer instead).
- In the User Profile Service Application, Setup My Sites, I entered http://mysites.company.com in the “My Site Host Location” field.
- In the User Profile Service Application, Trusted My Site Host Locations, I had also set up a new link with a url of http://mysites.company.com.
So everything looks good, right? Its all the same, right?
Re-open User Profile Service Application, Setup My Sites and copy the value out of the “My Site Host Location” field, and paste it into NotePad so you can see the whole thing. SharePoint has changed what I typed from http://mysites.company.com to http://mysites.company.com:80/.
So that value saved does **NOT** match the value in the Trusted My Site Host Locations, which doesn’t update itself to include the port number.
Since SharePoint insists on putting the port number in the “My Site Host Location” field under Setup My Sites, I did the same in the Trusted My Site Host locations, and in the Alternate Access Mapping.
SharePoint stripped the port number out of the Alternate Access Mapping, but not out of the Trusted My Site Host Location, and Voila! It works now!
Stupid @#@#^$%^*&^ SharePoint! Do what I say, not make some obscure unplanned change that is hard to find and takes days to troubleshoot, damn it!
Hope this helps someone else in future.
Because that’s the way of SharePoint here…at least at this client on this occasion.