Take the 2-minute tour ×
Server Fault is a question and answer site for professional system and network administrators. It's 100% free, no registration required.

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

1 Answer 1

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;
        server_name yourcdndomain.com;
        access_log   /srv/www/yourcdndomain.com/logs/access.log;
        root   /srv/www/yourcdndomain.com/public_html/;
 
 
 
      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

Edit

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

 
discard

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.