Come posso configurare nginx per servire i virtualhosts con rotaie (unicorno / passeggero) e php-fpm

Vorrei servire più siti in un'istanza.

Ho installato nginx, php-fpm e un'applicazione per i binari. Utilizzo siti come questo per guidarmi .

Configura php-fpm per ascoltare una presa locale

listen = /var/run/php-fpm/php-fpm.sock 

Configurai ngnix con più host:

 include /etc/nginx/conf.d/*.conf 

Ho diversi file conf file di sito web come /etc/nginx/conf.d/site1.conf

 server { listen 80; server_name site1.com www.site1.com; root /var/www/site1; access_log /var/log/nginx/site1.com-access.log; error_log /var/log/nginx/site1.com-error.log; location / { index index.html index.php; } location ~ \.php$ { fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock; fastcgi_index index.php; include fastcgi_params; fastcgi_param PATH_INFO $fastcgi_script_name; fastcgi_param SCRIPT_FILENAME $document_root/$fastcgi_script_name; } } 

e racchiude file di conf file come

 upstream rails { server 127.0.0.1:3000; } server { listen 80; server_name site2.com www.site2.com; access_log /var/log/nginx/site2.com-access.log; error_log /var/log/nginx/site2.com-error.log; root /var/www/site2; location / { proxy_pass http://rails; proxy_set_header X-Forwarded-For $remote_addr; proxy_set_header Host $host; proxy_set_header X-Url-Scheme $scheme; } } 

Ho un server di binari unicorno che funziona tramite i rails s -p 3000

Tuttavia, nessun luogo si presenta per site1.com o site2.com . Posso arrivare al sito dei binari all'indirizzo www.site2.com:3000

Che c'è? Ho trascorso 2 giorni (quasi 30 ore) cercando molti blog differenti, domande SO / SF, ecc. Per favore condividi la tua comprensione o la tua risposta.

modifica 1: Non vengono create voci di registro quando cerco di visitare un sito. È come le richieste non entrano mai.

Suggerimenti per Linux e Windows Server, quali Ubuntu, Centos, Apache, Nginx, Debian e argomenti di rete.