J'ai une application web qui a un contenu statique et qui peut servir des pages dynamiques et un contenu sécurisé. Le contenu statique se trouve dans /public
et doivent être servis directement par nginx
. Le contenu dynamique est servi par 127.0.0.1:3000
en amont. Le contenu sécurisé est également servi par l'amont et disponible à partir de /assets/*
URLs. Ce contenu sécurisé peut avoir les mêmes extensions de fichier que le contenu statique, mais il se trouve toujours dans le format /assets/
.
J'ai un travail nginx
avec deux sites ayant les mêmes règles de proxys. Existe-t-il un moyen de réduire ma configuration en joignant les deux sites desservis par l'amont ?
server {
server_name example.name;
root /home/user/ruby18/app/public;
try_files $uri @thin;
location ^~ /assets/ {
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
proxy_redirect off;
proxy_pass http://thin;
}
location ~* \.(jpeg|jpg|gif|png|ico|css|bmp|js)$ {
root /home/user/ruby18/app/public;
}
location @thin {
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
proxy_redirect off;
proxy_pass http://thin;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
upstream thin {
server 127.0.0.1:3000;
}