Stage File Proxy is a general solution for getting production files on a development server on demand. It saves you time and disk space by sending requests to your development environment's files directory to the production environment and making a copy of the production file in your development site. You should not need to enable this module in production.

More details on the features/benefits

When developing Drupal sites locally, you often face a choice between broken images and taking the time to copy a snapshot of the remote files directory, which might be several gigabytes large, depending on the site. Stage File Proxy lets you update the database of your local development instance without having to update your files directory. Stage File Proxy transfers each requested file just in time when it is requested. This is especially useful for large sites with huge numbers of files. If you only visit 2 pages and only need 10 remote files to serve those pages, Stage File Proxy will only transfer those 10 files. Stage File Proxy has an additional mode in which it can serve a 301 redirect to files on the server, so it's possible to see all your images without having a local files directory at all.

Simple install and configuration

If you have drush installed already then installing and configuring this module can be as easy as:

drush pm-download stage_file_proxy
drush pm-enable --yes stage_file_proxy
drush variable-set stage_file_proxy_origin ""

Of course, replace with your live site.

Imagecache/Image Style support

Stage File Proxy integrates with imagecache to transfer the original image from the origin and then resize it locally.

Platform support and installation

This module has been tested using Apache 2 on Mac OS X and Linux.

For more information, see the installation instructions.

Development-focused module

This module is for making it easier to manage local development environments or test-servers that are separated from the vast, malicious internet at the network level. You should not install this module on a server that faces the internet. If you do, you should audit the code thoroughly before doing so. As the introduction says:

You should not need to enable this module in production.


The 7.x branch is actively maintained by greggles with support of The 6.x branch is not actively maintained, but if a few people review/test patches then they might get committed.

Release candidates

Release candidates include the latest and greatest bug fixes, but are not widely tested yet. If you can, please help testing and report back. You can always go back to a stable release.


Supporting organizations: 
Maintenance and support
Maintenance and support

Project information