Niels-IO / next-image-export-optimizer

Use Next.js advanced <Image/> component with the static export functionality. Optimizes all static images in an additional step after the Next.js static export.
MIT License
439 stars 52 forks source link

Added support custom domains for images #208

Open mihailShumilov opened 7 months ago

mihailShumilov commented 7 months ago

added support for custom domain for images to use custom domain you should set config param nextImageExportOptimizer_imagesDomain

mihailShumilov commented 6 months ago

@Niels-IO - 1 month without any review...

Niels-IO commented 5 months ago

Hi @mihailShumilov, Thanks for the PR. As this is not my main work, things might take their time.. I will have a look but it might take until May.

mihailShumilov commented 5 months ago

Hi @mihailShumilov, Thanks for the PR. As this is not my main work, things might take their time.. I will have a look but it might take until May.

If you want - you can add me as a maintainer/collaborator - I can help you with this project

dannyDNS commented 3 months ago

I was just looking at implementing support for this myself. Have you considered reading the assetPrefix value from the next config?

Edit: the actual problem here IMO is that this package doesn't respect assetPrefix, making it incompatible with other methods of rendering images on the page (i.e. as a background image). If you're using assetPrefix, this package mangles your URLs, making srcSets that are broken.

Niels-IO commented 3 months ago

Hi there,

Can you please explain the use case for using custom domains? Regarding assetPrefix: The Next.js documentation specifies:

While assetPrefix covers requests to _next/static, it does not influence the following paths:

Files in the public folder; if you want to serve those assets over a CDN, you'll have to introduce the prefix yourself

So I think this would add the need to handle statically imported images and string paths differently if I were to implement assetPrefix. Also assetPrefix would be a global setting for all assets.

This PR is also mixing two added functionalities: custom image domains and some very user specific custom logic for mobile src's. The mobile src conditional should live in user land not inside this package.

PhilGale92 commented 1 month ago

Just thought I'd add to this - i have a very similar use case to the above - i had a requirement of having the images served with the assetPrefix which is not an actual folder but rather from akmai routing.

Not piling in or anything but its not just a single edge case.