discourse/config/nginx.sample.conf

57 lines
1.2 KiB
Plaintext

upstream discourse {
server unix:///var/www/discourse/tmp/sockets/puma0.sock;
server unix:///var/www/discourse/tmp/sockets/puma1.sock;
server unix:///var/www/discourse/tmp/sockets/puma2.sock;
server unix:///var/www/discourse/tmp/sockets/puma3.sock;
}
server {
listen 80;
gzip on;
gzip_min_length 1000;
gzip_types application/json text/css application/x-javascript;
server_name meta.discourse.org;
sendfile on;
keepalive_timeout 65;
location / {
root /var/www/discourse/public;
location ~ ^/t\/[0-9]+\/[0-9]+\/avatar {
expires 1d;
add_header Cache-Control public;
add_header ETag "";
}
location ~ ^/assets/ {
expires 1y;
add_header Cache-Control public;
add_header ETag "";
break;
}
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 $scheme;
proxy_set_header Host $http_host;
# If the file exists as a static file serve it directly without
# running all the other rewite tests on it
if (-f $request_filename) {
break;
}
if (!-f $request_filename) {
proxy_pass http://discourse;
break;
}
}
}