Proxy
When you need to get all the benefits of a powerful CDN without explicitly uploading files to a new location, use Proxy. It automatically retrieves files from existing remote locations and delivers them using Uploadcare CDN.
Utilizing a CDN can significantly improve your users’ browsing experience, and open up more technical opportunities by providing on-the-fly image transformation and optimization.
It’s easy to integrate, requiring only one URL modification:
When the first request is made, the source file is instantly uploaded to your Uploadcare storage. Once it is cached on our CDN, all subsequent requests will fetch the file from the closest CDN node.
This is the simplest way to implement responsive images, **lower traffic costs, or just try us out without investing too much time into migration.
Usage
Step 1. Setup your Proxy
Go to Uploadcare Dashboard:
- Specify the allowed domain names that host your files. The Proxy will recognize these domains and block delivery from others.
- Optionally, you can edit your Proxy Endpoint to use custom domain name to serve files. See down below.
Step 2. Add Proxy prefix
Combine the Proxy prefix with the file URL, including any query string, provided the file URL is from an allowed domain. The Proxy prefix should include your Endpoint.
The original file will remain at its original place, so that older references will work as well.
Step 3. Apply image operations
You can apply image processing operations by adding one of the respective URL directives between the prefix and the media URL.
As a result, image.jpg
will be processed and delivered with Uploadcare CDN.
Note: Uploadcare processes images on the fly. We count storage space only for original files. Processed versions don’t occupy any space in your storage limit.
Endpoint customization (optional)
Uploadcare provides different domain options for serving and fetching files.
They fall into two categories: CDN domains (for delivery) and Proxy domains (for fetching from remote sources).
CDN domains (for delivery)
-
Auto-generated:
<project>.ucarecd.net
- Created automatically for every project.
- Free and ready to use instantly.
- Recommended for most users.
-
Custom CNAME:
cdn.domain.com
- Requires creating a DNS CNAME record pointing to
<project>.ucarecd.net
. - $25/month.
- Use when you need file delivery under your own branded domain or integration with existing CDN infrastructure.
- Requires creating a DNS CNAME record pointing to
Proxy domains (for fetching)
-
Auto-generated:
<public_key>.ucr.io
- Created automatically for every project.
- Used when you need to fetch files from remote sources via Proxy.
- Free, works out of the box.
-
Custom Proxy domain:
yourdomain.ucr.io
- Requires registration and setup.
- Use if you want proxy requests to appear under your own domain.
- Same infrastructure and performance as the default domain.
Pricing is the same as for CDN CNAMEs: not available on Free plans, 25/month each).
Which one do I need?
When fetching the source file from a remote server, the Proxy will first attempt a HEAD
request (or OPTIONS
, depending on the remote server) before the actual GET
to check the source file’s availability.
The remote server must handle HEAD
requests correctly.
Possible errors
List of errors you might get when using Proxy:
Proxy billing
This feature is free and available across all plans. It is important to note that proxy uses your project upload units and storage limits since files are fetched and saved first before they are available on Uploadcare’s CDN.