【问题标题】:Access Node.js app by address on Laravel Forge server通过 Laravel Forge 服务器上的地址访问 Node.js 应用
【发布时间】:2022-05-07 13:25:52
【问题描述】:

我的 Node.js 应用程序在 Laravel Homestead 上运行良好,但现在需要将其移至服务器。我正在使用 Laravel Forge 进行服务器配置。服务器已经安装了 Node 和所需的包。

在本地运行时,我可以使用 Homestead 的http://192.168.10.10:3000 进行连接。我的服务器上的地址是什么,如何保持节点应用程序运行?

当我通过 SSH 连接时,我可以运行它,我可以看到它正在输出接收到的事件。但是如何将客户端连接到它?我已经尝试了我的服务器的 IP 和域,但没有运气。

连接后,如何保持节点应用程序运行,从而无需打开 SSH 会话?

非常感谢,

山姆

【问题讨论】:

    标签: node.js laravel laravel-forge


    【解决方案1】:

    如果服务器上还没有 NodeJS,请安装它:

    sudo install nodejs
    

    将您的应用推送到您想要的任何文件夹。

    在 Laravel Forge 上为你的 NodeJS 应用创建一个应用(一个站点)。

    在底部,会有一个按钮来编辑 Nginx 的配置。如果存在 location / { 部分,则将其替换为反向代理(如果没有,则添加它):

    location / {    
        proxy_pass http://SERVER_IP:APP_PORT;
        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;
    }
    

    重启nginx,运行应用。

    它应该在你提供 Laravel Forge 的地址上按照你的意愿运行。

    要设置重启,您需要查看PM2。这很简单。

    【讨论】:

    • 谢谢@Satisfaction 我会试试的。您的意思是添加另一个站点进行伪造,然后在该目录中安装套接字应用程序?您会将域设置为什么?
    • 好吧,您可以只使用您要连接到的任何网站的子域。你可以把它设置成任何荒谬的,真的。您仍然应该能够通过服务器的 IP:PORT 连接到您的 NodeJS 应用程序。
    猜你喜欢
    • 2020-08-04
    • 1970-01-01
    • 2013-01-23
    • 1970-01-01
    • 2020-02-26
    • 2018-10-31
    • 2017-05-19
    • 2019-01-12
    • 2019-10-23
    相关资源
    最近更新 更多