How would I implement CDN functionality in a custom PHP-based CMS and application?
I currently manage a site that was custom developed using PHP/MySQL, and that's powered by it's own custom CMS.
Recently, we've been discussing the possibility of adapting the site so that it serves up the static assets using a CDN (ie: CSS files, JS files and images). Since the header and footer of the site are static, it would be simple enough for us to adapt those elements so that they pull the resources from a CDN, However, .. what about the CMS?
In other words, .. how would we adapt the CMS so that when images are uploaded through the back end, .. that they automatically get pushed up to the CDN (using PHP) ? To be more specific .. how would we handle the Add / Modify / Delete functionality of images within this context? And would the switching over to the serving up of those CDN hosted assets on the front end of the site be as simple as specifying a simple "base href" tag in the site's global header? Please advise.
Thanks!
- Yvan
* CMSPHP* Content Delivery Network (CDN)
Last Comment
skullnobrains
8/22/2022 - Mon
Ray Paseur
Who is your CDN?
egoselfaxis
ASKER
Hi Ray. We haven't yet chosen or implemented one. We've just been discussing the possibility of using one, as part of our ongoing efforts to improve the site's performance.
- Yvan
Ray Paseur
Can you please post a link to the site? If I see anything that will help it get faster, I'll be glad to share ideas.
Thank you both for your suggestions. I've been aware for some time that the images in that homepage slideshow could use some better compression, but we were intentionally ignoring the obvious until we could find a better way to deal with the other issues.
Regarding the CDN .. I'm getting the impression that interfacing a CMS with a CDN isn't recommended, and that it presents too many challenges. Am I mistaken about that? If not, then how does the image URL and filename re-writing typically get handled? Does it have to get written to and retrieved from the database? Or is there a way to handle it "on the fly" so to speak?
Ray .. I'll be experimenting with your suggested techniques in the next day or so. Thanks again for your wise suggestions.
Ray -- just one more question. What tool did you use to re-compress the JPEG images? And what types of settings did you use? I ask because I'd like to share that information with the graphic artist.
Thanks Ray! The graphic designer and I both already use Photoshop for compressing images, actually. I just though there might be a better, more light-weight tool that we could use. Regardless ... I noticed that the Google PageSpeed Insights reports provides a link to download optimized versions of the images .. so that's probably the best way for us to go.
Thanks again guys!
- Yvan
skullnobrains
any tool that can "save an image as" and let you choose the format including probably windows paint can do that. i usually use the gimp which is a free ~ equivalent of photoshop so is heavy as well. php libraries ( gd2 ) can transform images as well. i would recommend to do thumbnail generation in php. for the big images, try various compression algorithms : it is likely that gif will leave the text neater and pngs will likely be smaller than jpegs for equivalent quality... try it : that depends on the image.