0
votes

I am working on SAP Fiori applications(HTML application), Fiori uses below url

/sap/opu/odata/UI2/PAGE_BUILDER_PERS/PageSets('%2FUI2%2FFiori2LaunchpadHome')?$expand=Pages/PageChipInstances/Chip/ChipBags/ChipProperties,Pages/PageChipInstances/RemoteCatalog,Pages/PageChipInstances/ChipInstanceBags/ChipInstanceProperties,AssignedPages,DefaultPage

The url works fine in the intranet,whereas in internet the above url is blocked by apache.Kindly suggest a solution

1
I have just checked on my own Apache reverse proxy configuration and this URL is not blocked by apache. Perhaps you can show a little more in terms of what error(message) you're getting, what you see in the logs and what you have already tried to resolve this. In fact, without that, your question already stands quite a chance of getting downvoted...jpenninkhof
Hi,Please find the error<error xmlns="schemas.microsoft.com/ado/2007/08/dataservices/metadata"> <code>005056A509B11EE1B9A8FEC11C21D78E</code> <message xml:lang="en">Resource not found for the segment 'PageSets(''.</message> <innererror xmlns="schemas.microsoft.com/ado/2007/08/dataservices/metadata"> <transactionid>5762346867270D40E100800091113133</transactionid> <timestamp>20160616135843.1531960</timestamp> <Error_Resolution> <SAP_TransactionThushar alva
That's an error message from SAP. You should try to dive into what's going wrong there using the transaction suggested in the error message.jpenninkhof
The Tcode shows the below error ..ERROR_INFO Resource not found for the segment 'Bags(pageId=''.I dont get this error in intranet.Thushar alva
If both requests are hitting your ABAP server, it might be good to compare the two requests and check the differences. This may give you a lead. I also noticed that your URL has '-signs. You may want to encode those to %27.jpenninkhof

1 Answers

0
votes

When we use Apache proxy, the reverses proxy automatically decodes the entire URL before forwarding the request to the backend. '%2F' is decoded to '/'.

Solution: Configure proxy server to make sure it will pass the request URL not decoded. Configure your virtual host using AllowEncodedSlashes NoDecode and nocanon

ProxyPreserveHost on
AllowEncodedSlashes NoDecode

ProxyPass /     https://IP:port/ nocanon
ProxyPassReverse /  https://IP:port/

You can see detail answer here