我正在数字海洋Ubuntu16.04vps上部署Django项目。我使用了一键安装Django,然后用我的项目替换了它。在
问题是服务器返回502 Error
。在
编辑:
在/home/django/realestate_scanner/
目录内没有realestate_scanner.sock
你知道问题出在哪里吗?在
gunicorn服务
[Unit]
Description=Gunicorn daemon for Realestate Scanner
Before=nginx.service
After=network.target
[Service]
WorkingDirectory=/home/django/realestate_scanner
ExecStart=/usr/bin/gunicorn --name=realestate_scanner --pythonpath=/home/django/realestate_scanner --bind unix:/home/django/gunicorn.socket --config /etc/gunicorn.d/gunicorn.py realestate_scanner.wsgi:application
Restart=always
SyslogIdentifier=gunicorn
User=django
Group=django
[Install]
WantedBy=multi-user.target
日志:
^{pr2}$返回此:
...skipping...
Jul 19 06:45:08 django-512mb-ams2-01-beta gunicorn[20681]: self.reap_workers()
Jul 19 06:45:08 django-512mb-ams2-01-beta gunicorn[20681]: File "/usr/lib/python2.7/dist-packages/gunicorn/arbiter.py", line 464, in reap_workers
Jul 19 06:45:08 django-512mb-ams2-01-beta gunicorn[20681]: raise HaltServer(reason, self.WORKER_BOOT_ERROR)
Jul 19 06:45:08 django-512mb-ams2-01-beta gunicorn[20681]: gunicorn.errors.HaltServer: <HaltServer 'Worker failed to boot.' 3>
Jul 19 06:45:08 django-512mb-ams2-01-beta systemd[1]: gunicorn.service: Main process exited, code=exited, status=1/FAILURE
Jul 19 06:45:08 django-512mb-ams2-01-beta systemd[1]: gunicorn.service: Unit entered failed state.
Jul 19 06:45:08 django-512mb-ams2-01-beta systemd[1]: gunicorn.service: Failed with result 'exit-code'.
Jul 19 06:45:08 django-512mb-ams2-01-beta systemd[1]: gunicorn.service: Service hold-off time over, scheduling restart.
Jul 19 06:45:08 django-512mb-ams2-01-beta systemd[1]: Stopped Gunicorn daemon for Realestate Scanner.
Jul 19 06:45:08 django-512mb-ams2-01-beta systemd[1]: gunicorn.service: Start request repeated too quickly.
Jul 19 06:45:08 django-512mb-ams2-01-beta systemd[1]: Failed to start Gunicorn daemon for Realestate Scanner.
...skipping...
Jul 19 06:45:08 django-512mb-ams2-01-beta gunicorn[20681]: self.reap_workers()
Jul 19 06:45:08 django-512mb-ams2-01-beta gunicorn[20681]: File "/usr/lib/python2.7/dist-packages/gunicorn/arbiter.py", line 464, in reap_workers
Jul 19 06:45:08 django-512mb-ams2-01-beta gunicorn[20681]: raise HaltServer(reason, self.WORKER_BOOT_ERROR)
Jul 19 06:45:08 django-512mb-ams2-01-beta gunicorn[20681]: gunicorn.errors.HaltServer: <HaltServer 'Worker failed to boot.' 3>
Jul 19 06:45:08 django-512mb-ams2-01-beta systemd[1]: gunicorn.service: Main process exited, code=exited, status=1/FAILURE
Jul 19 06:45:08 django-512mb-ams2-01-beta systemd[1]: gunicorn.service: Unit entered failed state.
Jul 19 06:45:08 django-512mb-ams2-01-beta systemd[1]: gunicorn.service: Failed with result 'exit-code'.
Jul 19 06:45:08 django-512mb-ams2-01-beta systemd[1]: gunicorn.service: Service hold-off time over, scheduling restart.
Jul 19 06:45:08 django-512mb-ams2-01-beta systemd[1]: Stopped Gunicorn daemon for Realestate Scanner.
Jul 19 06:45:08 django-512mb-ams2-01-beta systemd[1]: gunicorn.service: Start request repeated too quickly.
Jul 19 06:45:08 django-512mb-ams2-01-beta systemd[1]: Failed to start Gunicorn daemon for Realestate Scanner.
以及
> sudo systemctl status gunicorn
返回此:
root@django-512mb-ams2-01-beta:/home/django/realestate_scanner# sudo systemctl status gunicorn
● gunicorn.service - Gunicorn daemon for Realestate Scanner
Loaded: loaded (/etc/systemd/system/gunicorn.service; enabled; vendor preset: enabled)
Active: active (running) since Wed 2017-07-19 06:36:04 UTC; 4ms ago
Main PID: 20517 ((gunicorn))
Tasks: 0
Memory: 0B
CPU: 0
CGroup: /system.slice/gunicorn.service
└─20517 (gunicorn)
Jul 19 06:36:04 django-512mb-ams2-01-beta systemd[1]: Started Gunicorn daemon for Realestate Scanner.
root@django-512mb-ams2-01-beta:/home/django/realestate_scanner# sudo journalctl -u gunicorn
-- Logs begin at Tue 2017-07-18 20:09:42 UTC, end at Wed 2017-07-19 06:36:50 UTC. --
Jul 18 20:10:00 django-512mb-ams2-01-beta systemd[1]: Started Gunicorn daemon for Django Project.
Jul 18 20:10:00 django-512mb-ams2-01-beta gunicorn[2093]: [2017-07-18 20:10:00 +0000] [2093] [INFO] Starting gunicorn 19.4.5
Jul 18 20:10:00 django-512mb-ams2-01-beta gunicorn[2093]: [2017-07-18 20:10:00 +0000] [2093] [INFO] Listening at: unix:/home/django/gunicorn.socket (2093)
Jul 18 20:10:00 django-512mb-ams2-01-beta gunicorn[2093]: [2017-07-18 20:10:00 +0000] [2093] [INFO] Using worker: gevent
Jul 18 20:10:00 django-512mb-ams2-01-beta gunicorn[2093]: [2017-07-18 20:10:00 +0000] [2101] [INFO] Booting worker with pid: 2101
Jul 18 20:10:00 django-512mb-ams2-01-beta gunicorn[2093]: [2017-07-18 20:10:00 +0000] [2102] [INFO] Booting worker with pid: 2102
Jul 18 20:10:00 django-512mb-ams2-01-beta gunicorn[2093]: [2017-07-18 20:10:00 +0000] [2105] [INFO] Booting worker with pid: 2105
Jul 18 20:10:49 django-512mb-ams2-01-beta gunicorn[2093]: [2017-07-18 20:10:49 +0000] [2105] [ERROR] Error handling request /
Jul 18 20:10:49 django-512mb-ams2-01-beta gunicorn[2093]: Traceback (most recent call last):
Jul 18 20:10:49 django-512mb-ams2-01-beta gunicorn[2093]: File "/usr/lib/python2.7/dist-packages/gunicorn/workers/async.py", line 52, in handle
Jul 18 20:10:49 django-512mb-ams2-01-beta gunicorn[2093]: self.handle_request(listener_name, req, client, addr)
Jul 18 20:10:49 django-512mb-ams2-01-beta gunicorn[2093]: File "/usr/lib/python2.7/dist-packages/gunicorn/workers/ggevent.py", line 163, in handle_request
Jul 18 20:10:49 django-512mb-ams2-01-beta gunicorn[2093]: super(GeventWorker, self).handle_request(*args)
Jul 18 20:10:49 django-512mb-ams2-01-beta gunicorn[2093]: File "/usr/lib/python2.7/dist-packages/gunicorn/workers/async.py", line 105, in handle_request
Jul 18 20:10:49 django-512mb-ams2-01-beta gunicorn[2093]: respiter = self.wsgi(environ, resp.start_response)
Jul 18 20:10:49 django-512mb-ams2-01-beta gunicorn[2093]: File "/usr/lib/python2.7/dist-packages/django/core/handlers/wsgi.py", line 189, in __call__
Jul 18 20:10:49 django-512mb-ams2-01-beta gunicorn[2093]: response = self.get_response(request)
Jul 18 20:10:49 django-512mb-ams2-01-beta gunicorn[2093]: File "/usr/lib/python2.7/dist-packages/django/core/handlers/base.py", line 207, in get_response
Jul 18 20:10:49 django-512mb-ams2-01-beta gunicorn[2093]: return debug.technical_500_response(request, *sys.exc_info(), status_code=400)
Jul 18 20:10:49 django-512mb-ams2-01-beta gunicorn[2093]: File "/usr/lib/python2.7/dist-packages/django/views/debug.py", line 97, in technical_500_response
Jul 18 20:10:49 django-512mb-ams2-01-beta gunicorn[2093]: html = reporter.get_traceback_html()
Jul 18 20:10:49 django-512mb-ams2-01-beta gunicorn[2093]: File "/usr/lib/python2.7/dist-packages/django/views/debug.py", line 384, in get_traceback_html
Jul 18 20:10:49 django-512mb-ams2-01-beta gunicorn[2093]: return t.render(c)
Jul 18 20:10:49 django-512mb-ams2-01-beta gunicorn[2093]: File "/usr/lib/python2.7/dist-packages/django/template/base.py", line 210, in render
Jul 18 20:10:49 django-512mb-ams2-01-beta gunicorn[2093]: return self._render(context)
Jul 18 20:10:49 django-512mb-ams2-01-beta gunicorn[2093]: File "/usr/lib/python2.7/dist-packages/django/template/base.py", line 202, in _render
Jul 18 20:10:49 django-512mb-ams2-01-beta gunicorn[2093]: return self.nodelist.render(context)
Jul 18 20:10:49 django-512mb-ams2-01-beta gunicorn[2093]: File "/usr/lib/python2.7/dist-packages/django/template/base.py", line 905, in render
Jul 18 20:10:49 django-512mb-ams2-01-beta gunicorn[2093]: bit = self.render_node(node, context)
...skipping...
Jul 19 06:36:06 django-512mb-ams2-01-beta gunicorn[20517]: self.stop()
Jul 19 06:36:06 django-512mb-ams2-01-beta gunicorn[20517]: File "/usr/lib/python2.7/dist-packages/gunicorn/arbiter.py", line 347, in stop
Jul 19 06:36:06 django-512mb-ams2-01-beta gunicorn[20517]: time.sleep(0.1)
Jul 19 06:36:06 django-512mb-ams2-01-beta gunicorn[20517]: File "/usr/lib/python2.7/dist-packages/gunicorn/arbiter.py", line 219, in handle_chld
Jul 19 06:36:06 django-512mb-ams2-01-beta gunicorn[20517]: self.reap_workers()
Jul 19 06:36:06 django-512mb-ams2-01-beta gunicorn[20517]: File "/usr/lib/python2.7/dist-packages/gunicorn/arbiter.py", line 464, in reap_workers
Jul 19 06:36:06 django-512mb-ams2-01-beta gunicorn[20517]: raise HaltServer(reason, self.WORKER_BOOT_ERROR)
Jul 19 06:36:06 django-512mb-ams2-01-beta gunicorn[20517]: gunicorn.errors.HaltServer: <HaltServer 'Worker failed to boot.' 3>
Jul 19 06:36:06 django-512mb-ams2-01-beta systemd[1]: gunicorn.service: Main process exited, code=exited, status=1/FAILURE
Jul 19 06:36:06 django-512mb-ams2-01-beta systemd[1]: gunicorn.service: Unit entered failed state.
Jul 19 06:36:06 django-512mb-ams2-01-beta systemd[1]: gunicorn.service: Failed with result 'exit-code'.
我有一个类似的错误,结果是我的Django代码中引入了一个语法错误。在
因此,尝试独立运行Django总是一个好主意
当你突然有一个“工人启动失败”的错误
我知道这个问题有一段时间没有答案,很可能已经解决了,但这可以帮助某些人。 第一次尝试:
gunicorn log-file=- (your_project_name).wsgi:application
您将看到一个日志,其中包含加载gunicorn引导的其他参数。 在我的例子中,一个包丢失了,我安装了这个包并输入了foward命令:
sudo systemctl daemon-reload sudo systemctl restart gunicorn sudo systemctl enable gunicorn
问题解决了。我希望这个答案能有所帮助。在
相关问题 更多 >
编程相关推荐