http { gzip_static on; server { listen 8080; root /diaspora/public; # Configure maximum picture size # Note that Diaspora has a client side check set at 4M client_max_body_size 10M; client_body_buffer_size 256K; # Proxy if requested file not found try_files $uri @diaspora; location /assets/ { expires max; add_header Cache-Control public; } location @diaspora { proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto https; proxy_set_header Host $http_host; proxy_redirect off; proxy_pass http://diaspora_server; } } # Proxy destination # Add as many server directives as you want # Also takes a socket, like unix:/path/to/some/socket.sock upstream diaspora_server { server unix:/run/diaspora/diaspora.sock; } }