SAP Content Server 7.5 behind SAP Cloud Connector
With the move of SAP systems from on-Premise to the Cloud, hybrid scenarios are becoming more prevalent. One such scenario arises when the SAP Content Server remains located on-Premise, and needs to be published to the Internet so that it can be reached by Cloud-based systems. One way to achieve this is to use the SAP Cloud Connector.
But there is a problem. The Cloud Connector periodically sends HTTP requests to the internal host to check its availability, These HTTP requests are generated as http/https://internal_host:port. However, by default, Content Server 7.5 only processes URLs that start with whatever prefix is defined with parameter icm/HTTP/contentserver_0 (typically /sapcs or /ContentServer/ContentSerer.dll.) Every other prefix result in a 500 Internal Server Error. In the Cloud Connector, the Content Server therefore remains in status Not Reachable.
Since the Cloud Connector does not offer the possibility to choose the URL prefix that is used to check the availability of the internal host, we need to make sure that the Content Server responds with 200 OK to the requests without prefix. The easiest solution is to configure a file access handler in the Content Server that returns an empty file:
icm/HTTP/file_access_0 = PREFIX=/, DOCROOT=$(DIR_GLOBAL)/status, BROWSEDIR=1, DIRINDEX=index.txt
Any directory can be specified with DOCROOT, but it should be an empty directory that has no sub directories or files in it. In this directory, create an empty file with name index.txt. If desired, the file could contain some kind of status text that would be returned as response body, but this is not necessary for the Cloud Connector.
Documentation for the file access handler:
With this file access handler in place (and after a restart of the Content Server to activate the change in the profile), the Content Server will return 200 OK and the content of the file index.txt for URL prefix “/”. The availability checks of the Cloud Connector will now be successful, and the internal host will become Reachable.
Remark: As a side effect, all other prefixes (except the prefix defined with icm/HTTP/contentserver_0 of course) will lead to error 404 Not Found instead of the 500 Internal Server Error. That should not be an issue for the functionality of the Content Server, with or without Cloud Connector.
Remark to earlier releases of SAP Content Server: SAP Content Server 6.5 does not have this problem with the Cloud Connector because it is based on a plugin within the Apache HTTP Server (Unix) or Microsoft IIS (Windows), both of which are typically configured with a default site that successfully responds to URL prefix “/”.