Il modo migliore è utilizzare il server nginx per fornire file statici e consentire al server node.js di gestire il contenuto dinamico.
Di solito è la soluzione più ottimizzata per ridurre la quantità di richieste sul server node.js che è più lento al server file statici che nginx ad esempio:
La configurazione per ottenere che è molto facile se si dispone già imposta un proxy inverso per la tua app nodejs.
ND configurazione nginx potrebbe essere
root /home/myapp;
# Add index.php to the list if you are using PHP
index index.html index.htm index.nginx-debian.html;
server_name _;
location /public/ {
alias /home/myapp/public/;
}
location/{
proxy_pass http://IPADRESSOFNODEJSSERVER:8080;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
# First attempt to serve request as file, then
# as directory, then fall back to displaying a 404.
#try_files $uri $uri/ =404;
}
ogni richiesta con/public/alla prima parte dell'URL sarà gestito da nginx e ogni altra richiesta verrà inoltrata a voi nodejs applicazione al vostro IPADRESSOFNODEJSSERVER:NODEJSPORT
solito il IPADRESSOFNODEJSSERVER
è il localhost
la sezione doc di esplicita dicono che http://expressjs.com/en/advanced/best-practice-performance.html#proxy
Un ancora migliore op è usare un proxy inverso per servire file statici; vedere Utilizzare un proxy inverso per ulteriori informazioni.
nginx Inoltre ti consente di definire facilmente regole di caching così per le attività statiche che non cambia può accelerare la vostra applicazione anche con una linea.
location /public/ {
expires 10d;
alias /home/myapp/public/;
}
Potete trovare un sacco di articoli che mettono a confronto i metodi di entrambi su internet per esempio: http://blog.modulus.io/supercharge-your-nodejs-applications-with-nginx
Hai provato a cercare su Google per "nginx vs node.js"? Ci sono molti buoni post sul blog che hanno qualche buona analisi su questo argomento – Qazzian
@Qazzian ... forse ti piacerebbe condividere quello che pensavi fosse buono? – AdamJeffers
@AdamJeffers Questo sembrava ben studiato. http://blog.modulus.io/supercharge-your-nodejs-applications-with-nginx Aveva un bel grafico e spiegava i loro metodi di test in modo che altri potessero fare lo stesso test. modifica: un motivo per non includere i collegamenti nel primo commento era perché la situazione poteva cambiare con le versioni più recenti del nodo. – Qazzian