Lync 2013 Mobile Clients and Apache Reverse Proxy
Just a heads up: You may be experiencing issues using the new Lync 2013 mobile apps if your reverse proxy is Apache. I don’t have a solution at this time, but have confirmed replacing Apache with IIS ARR works just fine in the same environment. All other external web services and the old 2010 mobile clients work properly, but we observed the following behavior on the 2013 apps:
- First client sign-in attempt fails, but second sign-in succeeds.
- Presence for contacts is very slow to load.
- Client sign out generates an error that the connection to the server was lost.
- Voice and video calls will not connect.
There are no clues in the server-side logs, but if you review the mobile client logs you’ll find the following error after Apache sends the mobile client a response:
ERROR TRANSPORT TransportUtilityFunctions.cpp/1749:Accept-types (application/vnd.microsoft.com.ucwa+xml) not found in Content-Type response from server (text/plain). Not decoding.
Deciphering this, the client is expecting an HTTP header to be returned with the a Content-Type of application/vnd.microsoft.com.ucwa+xml to be returned with the server response. The mobile client logs also show the HTTP headers in each response, which include the following:
HttpHeader:Content-Type text/plain
Since the UCWA MIME type is not a default registration on Apache the server instead reverts to its default behavior of sending text/plain for any content type it does not understand. The response being returned as text/plain causes the mobile client to error out and disconnect the request.
We attempted to register the MIME type with the following command, but it proved unsuccessful.
AddType application/vnd.microsoft.com.ucwa+xml .xml
Maybe some other Apache guru can share a fix here, but I wanted to save others the troubleshooting time if you see this issue.