在同一个配置文件中为 nodejs 和 laravel 提供服务

在同一个配置文件中为 nodejs 和 laravel 提供服务

我有 node 和 laravel 应用程序,它们都提供 html 文件,并且 url 的工作方式如下:

myapp-laravel.com -> laravel 应用程序

myapp-laravel.com/node/-> nodejs 应用程序

laravel 应用程序运行良好,但 nodejs 无法提供 html,它给了我错误“无法获取 /node/ 文件”作为纯文本。如果我分离配置,它可以工作,但我想用我的主域 (myapp-laravel.com) 访问它,所以我必须把它放在相同的配置上

upstream node {
    server localhost:3201;
}

server {
    root /var/www/html/laravel-app;
    index index.php index.html
    server_name myapp-laravel.com
   
    location / {
        try_files $uri $uri/ /index.php$args;
    }

    location /node/ {
        alias /var/www/html/node;
        try_files $uri @node;
    }
    
    location @node {
        proxy_pass http://node;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "Upgrade";
        proxy_set_header Host $host;
    }

}

相关内容