Atozed Forums
Locker image + BaseRewriteURL - Printable Version

+- Atozed Forums (https://www.atozed.com/forums)
+-- Forum: Atozed Software Products (https://www.atozed.com/forums/forum-1.html)
+--- Forum: IntraWeb (https://www.atozed.com/forums/forum-3.html)
+---- Forum: English (https://www.atozed.com/forums/forum-16.html)
+----- Forum: IntraWeb General Discussion (https://www.atozed.com/forums/forum-4.html)
+----- Thread: Locker image + BaseRewriteURL (/thread-1185.html)



Locker image + BaseRewriteURL - MJS@mjs.us - 08-14-2019

Hello,

Updated to 15.1.3 and running as a service with reverse proxy.   The new SVG locker image logic looks to break if you are using BaseRewriteURL.  If I use BaseRewriteURL I get a 404 on 'loading_svg.svg', without using BaseRewriteURL the image locker displays fine.

Regards,
Mark


RE: Locker image + BaseRewriteURL - Alexandre Machado - 08-14-2019

Do you mean that you are setting URLBase property at design/runtime? Or, are you using OnRewriteUrl event?


RE: Locker image + BaseRewriteURL - MJS@mjs.us - 08-14-2019

Using the OnRewriteUrl event (I found a workaround so it's not critical).


RE: Locker image + BaseRewriteURL - Alexandre Machado - 08-16-2019

Are you using a custom image or changed anything from the standard locker? I can't recreate this issue at all.


RE: Locker image + BaseRewriteURL - MJS@mjs.us - 08-16-2019

Using the standard locker (working in 15.0.20).

If I use BaseRewriteURL like so and proxy through Abyss:

//
---------------------------------------------------------------------------

void __fastcall TIWServerController::IWServerControllerBaseRewriteURL(THttpRequest *ARequest,
          UnicodeString &ARewriteURL)
{
  ARewriteURL = "/DFWPE";
}


I get:

Edge -
HTTP404: NOT FOUND - The server has not found anything matching the requested URI (Uniform Resource Identifier).
GET - http://127.0.0.1/dfwpe/$/gfx/loading.gif

Chrome -
DFWPEForm.html:687 GET http://127.0.0.1/dfwpe/$/gfx/loading_svg.svg 404 (Not Found)


One odd thing is Edge is looking for a gif but Chrome is looking for the svg.


If I comment out 'ARewriteURL =' and don't proxy then all works as expected.

My temporary workaround was to create the path '/dfwpe/$/gfx/' under the Abyss root with the gif+svg files, they are then pulled correctly while proxying.


RE: Locker image + BaseRewriteURL - MJS@mjs.us - 08-16-2019

This seems to be the issue:
  • Note the upper case of the ARewriteURL value '/DFWPE'.
  • The locker url translates ARewriteURL to lower case - http://127.0.0.1/dfwpe/$/gfx/loading_svg.svg
If I change the locker url to http://127.0.0.1/DFWPE/$/gfx/loading_svg.svg then it correctly serves the file.  I checked some of the other internal file url's and the original ARewriteURL case is preserved.


RE: Locker image + BaseRewriteURL - Alexandre Machado - 08-17-2019

You are probably using Apache as a reverse proxy, correct?

We will get it fixed in the next release.