Container already public and no issue with existing images. Only issue when I upload new, image showing in blob container means upload working but umbraco backoffice does not render this.
System.UriFormatException: A relative URI cannot be created because the 'uriString' parameter represents an absolute URI.
at System.Uri.CreateThis(String uri, Boolean dontEscape, UriKind uriKind)
at System.Uri..ctor(String uriString, UriKind uriKind)
at Umbraco.Web.Editors.ImagesController.GetResized(String imagePath, Int32 width, String sizeName)
at Umbraco.Web.Editors.ImagesController.GetBigThumbnail(String originalImagePath)
at lambda_method(Closure , Object , Object[] )
at System.Web.Http.Controllers.ReflectedHttpActionDescriptor.ActionExecutor.<>c__DisplayClass6_2.<GetExecutor>b__2(Object instance, Object[] methodParameters)
at System.Web.Http.Controllers.ReflectedHttpActionDescriptor.ActionExecutor.Execute(Object instance, Object[] arguments)
at System.Web.Http.Controllers.ReflectedHttpActionDescriptor.ExecuteAsync(HttpControllerContext controllerContext, IDictionary`2 arguments, CancellationToken cancellationToken)
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at System.Web.Http.Controllers.ApiControllerActionInvoker.<InvokeActionAsyncCore>d__1.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at System.Web.Http.Filters.ActionFilterAttribute.<CallOnActionExecutedAsync>d__6.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Web.Http.Filters.ActionFilterAttribute.<CallOnActionExecutedAsync>d__6.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at System.Web.Http.Filters.ActionFilterAttribute.<ExecuteActionFilterAsyncCore>d__5.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at System.Web.Http.Filters.ActionFilterAttribute.<CallOnActionExecutedAsync>d__6.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Web.Http.Filters.ActionFilterAttribute.<CallOnActionExecutedAsync>d__6.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at System.Web.Http.Filters.ActionFilterAttribute.<ExecuteActionFilterAsyncCore>d__5.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at System.Web.Http.Filters.ActionFilterAttribute.<CallOnActionExecutedAsync>d__6.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Web.Http.Filters.ActionFilterAttribute.<CallOnActionExecutedAsync>d__6.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at System.Web.Http.Filters.ActionFilterAttribute.<ExecuteActionFilterAsyncCore>d__5.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at System.Web.Http.Filters.ActionFilterAttribute.<CallOnActionExecutedAsync>d__6.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Web.Http.Filters.ActionFilterAttribute.<CallOnActionExecutedAsync>d__6.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at System.Web.Http.Filters.ActionFilterAttribute.<ExecuteActionFilterAsyncCore>d__5.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at System.Web.Http.Controllers.ActionFilterResult.<ExecuteAsync>d__5.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at System.Web.Http.Filters.AuthorizationFilterAttribute.<ExecuteAuthorizationFilterAsyncCore>d__3.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at System.Web.Http.Filters.AuthorizationFilterAttribute.<ExecuteAuthorizationFilterAsyncCore>d__3.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at System.Web.Http.Filters.AuthorizationFilterAttribute.<ExecuteAuthorizationFilterAsyncCore>d__3.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at System.Web.Http.Controllers.ExceptionFilterResult. <ExecuteAsync>d__6.MoveNext()
Still the same issue after upgrade image processor. I think no issue on image processor, issue on umbraco cms for version 7.15.
If /umbraco/backoffice/UmbracoApi/Images/GetBigThumbnail?originalImagePath=https://xxx/media/568260/FGD_hero.jpg&rnd=0.7155816642593931 then return 500.
ERROR MESSAGE: A relative URI cannot be created because the 'uriString' parameter represents an absolute URI
If /umbraco/backoffice/UmbracoApi/Images/GetBigThumbnail?originalImagePath=/media/568260/GTR_hero.jpg&rnd=0.7155816642593931 then working fine.
Image not showing from azure blob
I am using umbraco 7.15.4 and try to fetch images from blob media folder. I did all setup as per blog https://blog.nicolaayan.com/2018/05/how-to-setup-your-umbraco-media-folder-with-an-azure-storage-account/ but images still fetch from local.
Also cross check setup from https://our.umbraco.com/Documentation/Extending/FileSystemProviders/Azure-Blob-Storage/index-v7 but still same.
Could you please pointing anything I missed?
Here is my settings
Note: When I upload file from umbraco backoffice its sync to blob but not read but permission is there.
Is anyone please help me on this.
you should define blob container has anonymous access
Thanks for your reply.
Yes permission already there but still image source showing local instated of blob source.
Is there anything else instated of permission?
I think you need rename local folder to avoid missunderstanding, check what you have this part in web.config
web.config already have that section and media folder rename but still same.
Could you try adding a query string to the image path eg: ?width=100
if the image shows this way, Image Processor is properbly configured to only serve images when using query strings
if you want to avoid this you can either try adding this Web.config in the Media folder:
or try configuring ImageProcessor to intercept all requests this can be done in
/config/imageprocessor/processing.config
on the root
<processing>
element set the settinginterceptAllRequests="true"
Hi Thomas,
Great, working now but fonts not loading return 500 like (.ttf, bootstrap.min.css.map, ajax-loader.gif etc)
Happy to help! :)
if you see the image in blob, the issue is only what container is not public
Hi Yakov,
Container already public and no issue with existing images. Only issue when I upload new, image showing in blob container means upload working but umbraco backoffice does not render this.
Is the link shown in the image correct? If it is then it must be something in the image processor configuration that's wrong
As I remember Umbraco creates a thumbnail via Image Processor
Yes link showing image correctly.
Here is the error log when creating thumbnail
I am still not finding any solution for that. Can anyone please help me on this.
It looks like others are experincing similar problems
with ImageProcessor:
https://our.umbraco.com/forum/extending-umbraco-and-using-the-api/82351-imageprocessor-not-working-with-umbracofilesystemprovidersazure
From what I gather try upgrading ImageProcessor to see if the problem goes away.
Hi Thomas,
Still the same issue after upgrade image processor. I think no issue on image processor, issue on umbraco cms for version 7.15.
If /umbraco/backoffice/UmbracoApi/Images/GetBigThumbnail?originalImagePath=https://xxx/media/568260/FGD_hero.jpg&rnd=0.7155816642593931 then return 500. ERROR MESSAGE: A relative URI cannot be created because the 'uriString' parameter represents an absolute URI
If /umbraco/backoffice/UmbracoApi/Images/GetBigThumbnail?originalImagePath=/media/568260/GTR_hero.jpg&rnd=0.7155816642593931 then working fine.
same issue as on https://issues.umbraco.org/issue/U4-8039
Note: My blob container name "azapp-umbraco-stage-tmha-001" not media
How does your security config look for imageprococessor?
Especially the paths and the container setting is important
Hi Thomas,
All config as follows
1) FileSystemProviders.config
2) security.config
3) cache.config
4) processing.config
5) root web.config
6) media web.config
Also
<add key="AzureBlobFileSystem.DisableVirtualPathProvider" value="true" />
in the root web.config under app settings.Anyone please?
is working on a reply...