umbraco-community / UmbracoFileSystemProviders.Azure

:cloud: An Azure Blob Storage IFileSystem provider for Umbraco
94 stars 67 forks source link

ImageProcessor.Common.Exceptions.ImageProcessingException #211

Open Bellezze opened 2 years ago

Bellezze commented 2 years ago

Seeing approximately 1400 errors with ImageProcessor.Common.Exceptions.ImageProcessingException: GetResponseAsync 132 : Response status code does not indicate success: 404 (The specified resource does not exist.) The numbers seem to cycle between 132 and 609. The images are stored in a media blob container in azure. The umbraco version is 8.18.0 and the UmbracoFileSystemProviders.Azure installed via nuget is 3.02. Images show up properly on the website and editors' adding/removing images works too with azure blob (maybe not some focal point changes though).

Not sure what the issue is other than that the resource is not found or the server is blocking it.

Steps taken: Azure blob media container is set up with an azure CDN endpoint with the origin at the web domain (caching every URL turned on). Followed the v8 guide here for the setup https://our.umbraco.com/Documentation/Extending/FileSystemProviders/Azure-Blob-Storage/index-v8 and some umbraco forum notes from helpful users regarding the CDN endpoint. Only media folder appears in blob. Web.config in media folder in blob was updated per the notes in this GitHub folder for v8. CDN was added to whitelist. Firewall is being used in front of the site.

Bellezze commented 2 years ago

Fixed by removing the web.config in the media container. Not sure why that worked.

Bellezze commented 2 years ago

New error now: ImageProcessor.Common.Exceptions.ImageProcessingException: GetResponseAsync 132 : Response status code does not indicate success: 404 (The specified blob does not exist.)

c9mb commented 2 years ago

@Bellezze Not sure that removing web.config from the media folder is the right thing to do there, as I think there is a handler that need to be inserted either there or in a transformation for it. See the documentation on the github resource.

No cache folder is suggestive of AzureBlobCache either not being installed or not configured correctly.

Bellezze commented 2 years ago

@c9mb, thanks for the reply. Is a cache folder using azure blob cache required? It was never installed. I looked again and followed the steps here. Azure is set up with a storage blob media container with all urls set to cache and a CDN endpoint with the origin host as the container ([account].blob.core.windows.net) (there is no load balance set up...I wonder if this is the issue if the CDN endpoint creates load balancing and the back-office is not disconnected from it...I apologize, I am not as familiar with azure CDNs and load balancing; this site does not require load balancing but the CDN was set up to ensure quick delivery). I made sure there was an updated web.config in the media folder with a one line handler. It is strange since the staging duplicate site of the production site is connected to the same azure db and did not produce any errors. I can't seem to produce the error at will.

c9mb commented 2 years ago

The 'cache' container (or whatever you want to name it) is used for storing cached media crops created by ImageProcessor, if you have the AzureBlobCache plugin installed, to reduce the processing overhead of repeated crop requests.

Bellezze commented 2 years ago

Is it normal not to see the images uploaded on the production site back-end to the media container on localhost? For some reason, they are not showing up on localhost, even though the .config setup is the same as the production site in regard to blob media but the only difference is they are connected to different sql databases.

c9mb commented 2 years ago

Is your local environment working with UmbracoFileSystemProviders.Azure enabled ?

Bellezze commented 2 years ago

Yes, the UmbracoFileSystemProviders.Azure.Media provider is installed via nuget.

c9mb commented 2 years ago

I suspect that this discussion is more appropriate of the OurUmbraco Forum than as a GitHub Issue, but if it's installed and working, then I'm not sure what your problem is?

FWIW - simplistically, the basic purpose of the UmbracoFileSystemProviders.Azure is to redirect media requests from the media folder to blob-storage media container (and/or crop cache if using that option) so once it's enabled and working, there shouldn't be any need for images in the media folder, and indeed any 'legacy' images can actually be deleted from the media folder if they are uploaded and being accessed from blob-storage - this is outlined in the topic 'Existing Media Files' of the Umbraco documentation.

Bellezze commented 2 years ago

Thanks. The problem is in relation to the log error in Umbraco ImageProcessor.Common.Exceptions.ImageProcessingException: GetResponseAsync 132 : Response status code does not indicate success: 404 (The specified blob does not exist.)