Server Fault is a question and answer site for system and network administrators. It's 100% free, no registration required.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

Here is the problem: I have a Linux server in Europe serving a busy Drupal site using nginx+php-fpm, I have another Linux server in the US (where a big portion of my visitors are coming from). The second server is heavily under-used. I am wondering how to make use of the second server to deliver my site's static content?

share|improve this question
up vote 4 down vote accepted

Install Nginx on the 2nd server and set it up as a lightweight static proxy cache file server:

server {
        open_file_cache_valid 200 20m;
        listen 80;
        access_log   /srv/www/;
        root   /srv/www/;
      location ~* \.(jpg|png|gif|jpeg|css|js|mp3|wav|swf|mov|doc|pdf|xls|ppt|docx|pptx|xlsx)$ {
                                # Cache static-looking files for 120 minutes, setting a 10 day expiry time in the HTTP header,
                                # whether logged in or not (may be too heavy-handed).
                                open_file_cache_valid 200 120m;
                        expires 7776000;
                        open_file_cache staticfilecache;
location = /50x.html {
                root   /var/www/nginx-default;
 # No access to .htaccess files.
        location ~ /\.ht {
          deny  all;

Rewrite your static files to the new domain or change the urls


I changed the file above to use open_file_cache instead of proxy_cache

share|improve this answer
Thanks Chris_O. I will try your solution. – alfish Apr 27 '11 at 1:46
What is the point to proxy_cache static files you have already on the disk? Nginx serves them from root directory perfectly. – Alexander Azarov Apr 27 '11 at 11:13
@Alaz When you set proxy_cache Nginx will serve the files from shared memory even though it's not proxying back to another server. – Chris_O Apr 27 '11 at 18:06
@Chris_O Can you point to the documentation to prove this assertion? – Alexander Azarov Apr 27 '11 at 18:19
@Alaz I just looked over the new docs and open_file_cache would be a better choice in this situation than proxy_cache – Chris_O Apr 27 '11 at 20:37

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.