Yam*_*ani 0 python django google-compute-engine google-cloud-platform
我正在关注本教程https://medium.com/@ahmed.dys99/deploying-django-application-on-google-cloud-platform-8eca8f82e7f6我已成功完成所有步骤,但是当我到达使用命令nohup sudo python3 manage.py runserver 0.0.0.0:80我收到消息nohup: ignoring input and appending output to 'nohup.out'。此消息是什么意思,如何让我的网站通过 gpc 成功运行?如果我的应用程序与数据库相关联,我是否需要先使用 gpc 对其进行配置?
小智 5
首先这不是一个错误!并且您的服务器应该运行良好(除非您的服务器端代码中有任何错误)。
简单回答:这不是错误,您的服务器可能正在运行,并且您服务器的所有日志都被重定向(发送)到名为“nohup.out”的文件。Nohup 与运行 server 或 python 或 django 或 gcp 无关,它是一个 unix 命令,即使关闭终端会话也能保持进程运行。您可以尝试通过从一开始就删除 nohup 命令来运行服务器,您的服务器应该已启动。
详细说明:对于 nohup:它是从 nohup 命令发送的标准日志类型消息,说明命令的输出将存储在“nohup.out”文件中,因为未指定输出文件。
我建议您尝试这些变体以更好地理解-
sudo python3 manage.py runserver 0.0.0.0:80
Run Code Online (Sandbox Code Playgroud)
这将在同一终端窗口中运行服务器。作品?(通过在第 4 步之后的文章中指定的从该主机/外部网络访问 localhost 来自己尝试一下)。这里要注意 - 服务器的所有日志都将在您的终端屏幕中看到。
现在,一旦您关闭此终端或退出 shell,操作系统就会发送一个 HUP 信号,说明由于终端正在退出,进程应该被挂断。用蹩脚的术语来说,您的运行过程将停止!(您不想要,因为它的服务器,我假设您想让它保持运行)
为了克服这种情况,即使会话断开/终端退出/外壳退出,nohup 命令也可以要求操作系统继续运行该命令。
nohup -> No HUP -> Do not send HUP signal for this command - (Just for understanding)
现在,尝试您的原始命令,即,nohup sudo python3 manage.py runserver 0.0.0.0:80
现在,您将看到旧消息说明nohup: ignoring input and appending output to 'nohup.out',我再说一遍不是错误消息,只是指定命令的输出将存储在 nohup.out 文件中。这里要注意的点 - 在命令之后, nohup 将创建一个 nohup.out 文件,并且来自该命令的所有日志都将进入该文件。
一个小任务尝试
nohup python3 manage.py runserver 0.0.0.0.0:80 > logs.txt
它是开发人员日常生活中非常有用的命令 在这里阅读更多信息:https : //www.computerhope.com/unix/unohup.htm
| 归档时间: |
|
| 查看次数: |
91 次 |
| 最近记录: |