Maison  >  Questions et réponses  >  le corps du texte

nodejs-express - Utilisez nginx pour configurer le port 80 d'un certain nom de domaine Si le chemin racine ne peut pas obtenir le fichier statique, il sera transféré vers le port 9999 fourni par nodejs.

Le code que j'écris maintenant est le suivant, mais il ne fonctionne pas.
Dois-je écrire des règles de réécriture, en utilisant des expressions régulières, ou si ?

Et : si vous configurez le répertoire de fichiers statiques dans nodejs, app.use(express.static(__dirname));les performances seront-elles inférieures au jugement et au traitement directs de nginx ?

server {
        listen 80;
        server_name xxx.wechattest.com;
        root /path/to/static/root;
        index index.html;
        
        location / {

                proxy_pass http://127.0.0.1:9999;//nodejs service is running on port 9999

                proxy_set_header X-Real-IP $remote_addr;
                proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

                client_max_body_size 100M;
                client_body_buffer_size 1m;
                proxy_intercept_errors on;
                proxy_buffering off;
                proxy_buffer_size 128k;
                proxy_buffers 256 16k;
                proxy_busy_buffers_size 256k;
                proxy_temp_file_write_size 256k;
                proxy_max_temp_file_size 0;
                proxy_read_timeout 300;
        }
}
我想大声告诉你我想大声告诉你2713 Il y a quelques jours719

répondre à tous(3)je répondrai

  • 巴扎黑

    巴扎黑2017-05-16 17:22:54

    location / {
        try_files $uri @nodejs;
    }
    
    location @nodejs {
    
                    proxy_pass http://127.0.0.1:9999;//nodejs service is running on port 9999
    
                    proxy_set_header X-Real-IP $remote_addr;
                    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    
                    client_max_body_size 100M;
                    client_body_buffer_size 1m;
                    proxy_intercept_errors on;
                    proxy_buffering off;
                    proxy_buffer_size 128k;
                    proxy_buffers 256 16k;
                    proxy_busy_buffers_size 256k;
                    proxy_temp_file_write_size 256k;
                    proxy_max_temp_file_size 0;
                    proxy_read_timeout 300;
            }

    répondre
    0
  • 为情所困

    为情所困2017-05-16 17:22:54

    Vous pouvez définir le statut 404 à transférer. De plus, votre configuration actuelle utilise directement un proxy inverse et tout le trafic vers le port 80 est redirigé vers le serveur proxy sur le port 9999.

    répondre
    0
  • 为情所困

    为情所困2017-05-16 17:22:54

    Vous pouvez utiliser les commandes try_files ou error_page pour obtenir l'effet souhaité.

    Dans le même temps, proxy_store peut également être utilisé pour réaliser des pages complètement statiques.

    répondre
    0
  • Annulerrépondre