FastCloudWP – Media Offload & CDN Delivery in 2 minutes
WordPress media libraries grow fast. Images, videos, and documents pile up on your server, increasing disk space usage and server load with every request. FastCloudWP automatically offloads your media library to cloud storage and rewrites every URL so visitors get files from the CDN, faster and with less load on your server. No AWS. No IAM. No S3 buckets. No storage configuration. Just create a FastCloudWP account, paste your site key into the plugin, and you’re done. Everything else is handled for you, including a 5 GB free plan, unlimited sites, no time limit. Features Automatic offloading: New uploads are automatically offloaded to cloud storage immediately after processing; images, videos, documents, and all thumbnail sizes included. CDN URL rewriting: Frontend src and srcset attributes are rewritten on the fly to serve media from the CDN. Compatible with any theme, page builder, or plugin that uses standard WordPress media functions. Bulk migration: Offload your entire existing media library in bulk from the admin dashboard. Optional local deletion: Free up disk space by removing local copies after offloading. Offload status tracking: Each attachment is tracked (queued, pending, offloaded) so you always know what’s been moved. WP-CLI support: Offload media and free disk space from the command line, with progress bars. Settings UI: Clean admin interface to connect, configure, and monitor everything. Pro Plan Upgrade to Pro for more storage and advanced features: 100 GB storage (20x the free plan) Custom CDN domain: serve assets from your own domain, e.g. cdn.yoursite.com Direct restore to WordPress: restore offloaded media back to your server in one click Priority support Learn more at fastcloudwp.com. External Services This plugin connects to the FastCloudWP service to store and deliver your media files. When you connect the plugin, your site communicates with the FastCloudWP API at https://app.fastcloudwp.com/ to authenticate, offload media files, and receive delivery status callbacks. Media files uploaded to WordPress are transmitted to FastCloudWP’s servers and served to visitors from the FastCloudWP CDN. This service is operated by FastCloudWP. Please review their policies before using the plugin: Privacy Policy Terms of Service No data is sent to FastCloudWP until you explicitly connect the plugin using your site key.
Fastly
Installation: You can either install from source (you\’re looking at it), or from the WordPress plugin directory. To proceed with configuration you will need to sign up for Fastly and create and activate a new service (unless you already have one). Details of how to create and activate a new service can be found here. You will also need to find your Service ID and make a note of the string. You will need to create an API token with the Global API access option selected. Click here for token management screen. Set up the Fastly plugin inside your WordPress admin panel In your WordPress blog admin panel, Under Fastly->General, enter & save your Fastly API token and Service ID Verify connection by pressing TEST CONNECTION button. In order to get the most value out of Fastly we recommend you upload VCL snippets from https://github.com/fastly/WordPress-Plugin/tree/master/vcl_snippets. These snippets will add code for following – Force certain paths to be passed (not cached) e.g. wp-admin, wp-login.php – Makes sure that logged in user sessions are never cached – Handling for serving stale on error You can upload them by hand or press Update VCL button in the UI. For more information, or if you have any problems, please email us. Note: you may have to disable other caching plugins like W3TotalCache or WP Rocket to avoid getting odd cache behaviour. Pulls in the Fastly API Integrates purging in post/page/taxonomies publishing Includes an admin panel in wp-admin Integrates some of the advanced purging options from Fastly API Allows to monitor purging using webhooks for slack Using this plugin means you won’t have to purge content in Fastly when you make changes to your WordPress content. Purges will automatically happen with no need for manual intervention. Customization Edge Modules Edge Modules are a framework that enables specific functions to be enabled on Fastly Edge without the need to write VCL. Current list of functions that can be included includes Enable Blackfire metrics and tracing Set CORS headers Enable support for bot detection partners such as Datadome/Netacea Redirect one domain to another e.g. domain.com => www.domain.com Rewrite URLs going to a backend e.g. /sitemap.xml => /media/sitemap.xml Domain masking an external backend/origin More details can be found at https://github.com/fastly/WordPress-Plugin/blob/master/EDGE-MODULES.md Image optimization Image Optimization is a separately contracted feature. Please contact support@fastly.com to request pricing and activation. Once activated on service level, you will be able to enable it in your blog under Fastly->Advanced. Breakdown of IO options: Enable Image Optimization in Fastly configuration – Activating this uploads VCL that steers image traffic to the image optimization service Enable Image Optimization in WordPress - Main switch to activate IO which is needed for all other options to work. Enable adaptive pixel ratios - Switch for adaptive pixel ratios implementation. This replaces adaptive pixels srcset to format which Fastly IO can parse and replace. Initially works only on inserted attachments like featured images, but can be applied on content images if enabled. Adaptive pixel ratio sizes - Select pixel ratios that will be generated when creating image srcset html. Enable image optimization for content images - Safe switch for Image optimization of content images (due to difference from featured images, those are processed differently). To fully utilize, insert full size images in content. WordPress Hooks Available wordpress hooks (add_action) on: Editing related (purging) keys for a given post purgely_related_keys Editing surrogate keys output purgely_pre_send_keys purgely_post_send_keys functions: add_keys Editing surrogate control headers output(max-age, stale-while-revalidate, stale-if-error) purgely_pre_send_surrogate_control purgely_post_send_surrogate_control functions: edit_headers, unset_headers Edit cache control headers output (max-age) purgely_pre_send_cache_control purgely_post_send_cache_control functions: edit_headers, unset_headers Example: add_action(\’purgely_pre_send_surrogate_control\’, \’custom_headers_edit\’); function custom_headers_edit($header_object) { $header_object->edit_headers(array(\’custom-header\’ => \’555\’, \’max-age\’ => \’99\’)); } add_filter(\’purgely_related_keys\’, \’custom_related_keys\’, 10, 2); function custom_related_keys($keys_array, $post_object) { $keys_array[] = \’custom-key\’; return $keys_array; } add_action(\’purgely_pre_send_keys\’, \’custom_surrogate_keys\’); function custom_surrogate_keys($keys_object) { $keys_object->add_key(\’custom-key\’); } Note: you may have to disable other caching plugins like W3TotalCache to avoid getting odd cache behaviour. About Fastly Fastly is the only real-time content delivery network designed to seamlessly integrate with your development stack. Fastly provides real-time updating of content and the ability to cache dynamic as well as static content. For any content that is truly uncacheable, we’ll accelerate it. In addition we allow you to update your configuration in seconds, provide real time log and stats streaming, powerful edge scripting capabilities, and TLS termination (amongst many other features). License Fastly.com WordPress Plugin Copyright (C) 2011,2012,2013,2014,2015,2016,2017 Fastly.com This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see http://www.gnu.org/licenses/.