Loading [MathJax]/jax/input/TeX/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >Gunicorn未在Synology任务计划程序中工作

Gunicorn未在Synology任务计划程序中工作
EN

Stack Overflow用户
提问于 2021-04-19 20:20:26
回答 1查看 84关注 0票数 0

我正试着在我的synology ds214se nas上运行一个使用gunicorn的网站。当我通过ssh(Putty)运行gunicorn时,它可以完美地运行,但当我尝试使用Synology Task Scheduler运行它时,无论我怎么尝试,它似乎都不起作用。错误日志发现如下:

代码语言:javascript
运行
AI代码解释
复制
[2021-04-19 22:00:11 +0200] [15979] [DEBUG] Current configuration:
config: config.py
wsgi_app: None
bind: ['192.168.0.80:57831']
backlog: 64
workers: 1
worker_class: sync
threads: 1
worker_connections: 1000
max_requests: 0
max_requests_jitter: 0
timeout: 90
graceful_timeout: 30
keepalive: 2
limit_request_line: 4094
limit_request_fields: 100
limit_request_field_size: 8190
reload: False
reload_engine: auto
reload_extra_files: []
spew: False
check_config: False
print_config: False
preload_app: False
sendfile: None
reuse_port: False
chdir: /volume1/python/wunschzettel
daemon: False
raw_env: []
pidfile: None
worker_tmp_dir: None
user: 1024
group: 100
umask: 0
initgroups: False
tmp_upload_dir: None
secure_scheme_headers: {'X-FORWARDED-PROTOCOL': 'ssl', 'X-FORWARDED-PROTO': 'https', 'X-FORWARDED-SSL': 'on'}
forwarded_allow_ips: ['127.0.0.1']
accesslog: None
disable_redirect_access_to_syslog: False
access_log_format: %(h)s %(l)s %(u)s %(t)s "%(r)s" %(s)s %(b)s "%(f)s" "%(a)s"
errorlog: -
loglevel: debug
capture_output: False
logger_class: gunicorn.glogging.Logger
logconfig: None
logconfig_dict: {}
syslog_addr: udp://localhost:514
syslog: False
syslog_prefix: None
syslog_facility: user
enable_stdio_inheritance: False
statsd_host: None
dogstatsd_tags: 
statsd_prefix: 
proc_name: None
default_proc_name: wsgi:app
pythonpath: /volume1/python/wunschzettel/
paste: None
on_starting: <function OnStarting.on_starting at 0x1cf4e58>
on_reload: <function OnReload.on_reload at 0x1cf0050>
when_ready: <function WhenReady.when_ready at 0x1cf5d58>
pre_fork: <function Prefork.pre_fork at 0x1cf64c0>
post_fork: <function Postfork.post_fork at 0x1cf6cc0>
post_worker_init: <function PostWorkerInit.post_worker_init at 0x1cf7430>
worker_int: <function WorkerInt.worker_int at 0x1cf7b80>
worker_abort: <function WorkerAbort.worker_abort at 0x1cf8328>
pre_exec: <function PreExec.pre_exec at 0x1cf73d8>
pre_request: <function PreRequest.pre_request at 0x1cf91e0>
post_request: <function PostRequest.post_request at 0x1cf9920>
child_exit: <function ChildExit.child_exit at 0x1cfa118>
worker_exit: <function WorkerExit.worker_exit at 0x1cfa880>
nworkers_changed: <function NumWorkersChanged.nworkers_changed at 0x1cf9188>
on_exit: <function OnExit.on_exit at 0x1cfb878>
proxy_protocol: False
proxy_allow_ips: ['127.0.0.1']
keyfile: None
certfile: None
ssl_version: 2
cert_reqs: 0
ca_certs: None
suppress_ragged_eofs: True
do_handshake_on_connect: False
ciphers: None
raw_paste_global_conf: []
strip_header_spaces: False
[2021-04-19 22:00:11 +0200] [15979] [INFO] Starting gunicorn 20.1.0
[2021-04-19 22:00:11 +0200] [15979] [DEBUG] Arbiter booted
[2021-04-19 22:00:11 +0200] [15979] [INFO] Listening at: http://192.168.0.80:57831 (15979)
[2021-04-19 22:00:11 +0200] [15979] [INFO] Using worker: sync
[2021-04-19 22:00:11 +0200] [16002] [INFO] Booting worker with pid: 16002
[2021-04-19 22:00:11 +0200] [15979] [DEBUG] 1 workers
[2021-04-19 22:00:14 +0200] [16002] [DEBUG] GET /
[2021-04-19 22:00:14 +0200] [16002] [ERROR] Error handling request /
Traceback (most recent call last):
File "/volume1/homes/admin/.local/lib/python3.8/site-packages/gunicorn/workers/sync.py", line 136, in handle
 self.handle_request(listener, req, client, addr)
File "/volume1/homes/admin/.local/lib/python3.8/site-packages/gunicorn/workers/sync.py", line 169, in handle_request
 resp, environ = wsgi.create(req, client, addr,
File "/volume1/homes/admin/.local/lib/python3.8/site-packages/gunicorn/http/wsgi.py", line 183, in create
 path_info = path_info.split(script_name, 1)[1]
IndexError: list index out of range
[2021-04-19 22:01:11 +0200] [16002] [DEBUG] Closing connection. 
[2021-04-19 22:01:11 +0200] [16002] [DEBUG] GET /
[2021-04-19 22:01:11 +0200] [16002] [ERROR] Error handling request /
Traceback (most recent call last):
File "/volume1/homes/admin/.local/lib/python3.8/site-packages/gunicorn/workers/sync.py", line 136, in handle
 self.handle_request(listener, req, client, addr)
File "/volume1/homes/admin/.local/lib/python3.8/site-packages/gunicorn/workers/sync.py", line 169, in handle_request
 resp, environ = wsgi.create(req, client, addr,
File "/volume1/homes/admin/.local/lib/python3.8/site-packages/gunicorn/http/wsgi.py", line 183, in create
 path_info = path_info.split(script_name, 1)[1]
IndexError: list index out of range

任务计划程序命令:

代码语言:javascript
运行
AI代码解释
复制
cd /volume1/python/wunschzettel
/volume1/@entware-ng/opt/bin/python3 -m gunicorn -c config.py wsgi:app

注意:我使用的是与putty和调度程序完全相同的命令和用户。请帮我用任务调度程序运行gunicorn。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-04-21 18:04:23

我遇到了类似的问题,并去排除故障。我创建了一个包含两行代码的startfile:

代码语言:javascript
运行
AI代码解释
复制
export >> "/volume1/web/prod/vars.txt"
/volume1/@appstore/py3k/usr/local/bin/gunicorn -b 0.0.0.0:5010 fl002:app

然后,我通过SSH和调度程序运行它。我找到了不同之处,并将其分离为:

代码语言:javascript
运行
AI代码解释
复制
SCRIPT_NAME="/webapi/entry.cgi"

如果我将Script_name设置为"",那么这个问题就不会再发生。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67168835

复制
相关文章
程序计划任务管理
描述:Linux工作管理指的是在单个登录终端中(shell界面)同时管理多个工作行为; 在Linux系统中执行某些操作时候,有时需要将当前任务暂停调至后台,或有时须将后台暂停的任务重启开启并调至前台,这一序列的操作将会使用到 jobs、bg、和 fg 三个命令以及两个快捷键来完成。
全栈工程师修炼指南
2022/09/28
3.3K0
程序计划任务管理
python 仿WINDOW任务计划程序
from PyQt5 import QtCore, QtGui, QtWidgets import sys,os import win32api import win32con from PyQt5.QtWidgets import QApplication , QMainWindow,QMessageBox from PyQt5.QtCore import QDate, QDateTime, QTime,QStringListModel from PyQt5.QtGui import QIcon from PyQt5.QtWidgets import QDialog, QAction, QSystemTrayIcon, QMenu import datetime from apscheduler.schedulers.blocking import BlockingScheduler from apscheduler.schedulers.background import BackgroundScheduler from apscheduler.triggers.cron import CronTrigger from apscheduler.triggers.interval import IntervalTrigger from apscheduler.triggers.date import DateTrigger from apscheduler.triggers.base import BaseTrigger from apscheduler.executors.pool import ThreadPoolExecutor, ProcessPoolExecutor from PyQt5.QtWidgets import QSystemTrayIcon
用户5760343
2019/07/05
6250
Linux计划任务服务程序
一次性计划任务只执行一次,一般用于临时的工作需求。可以用 at 命令实现这种功能,只需要写成“at 时间”的形式就行。如果想要查看已设置好但还未执行的一次性计划任务,可以使用 at -l 命令;要想将其删除,可以使用“atrm 任务序号”。
张旭博客
2022/12/27
3.7K0
Linux计划任务服务程序
windows中实现python,redis服务自动重启(任务计划程序+bat脚本)
需求:银行电脑无法自动开机,只能 通过 应用相关服务每天自动重启的方式实现 服务更新并且防止服务假死,内存过大 等情况
用户1558882
2019/07/18
2.9K0
windows中实现python,redis服务自动重启(任务计划程序+bat脚本)
计划任务
计划任务概念解析 在Linux操作系统中,除了用户即时执行的命令操作以外,还可以配置在指定的时间、指定的日期执行预先计划好的系统管理任务(如定期备份、定期采集监测数据)。RHEL6系统中默认已安装了at、crontab软件包,通过atd和crond这两个系统服务实现一次性、周期性计划任务的功能,并分别通过at、crontab命令进行计划任务设置。 计划任务分为一次性和循环性的计划任务 一、一次调度执行-----at 作用: 计划任务主要是做一些周期性的任务,目前最主要的用途是定期备份数据 一次性调度执
用户8639654
2021/08/18
1.4K0
计划任务
配置文件在/etc/at.deny /etc/at.allow 优先级高于deny
陪你听风
2021/03/31
1.4K0
windows自动关机(任务计划程序 + exe文件)
相关工具:win10系统中,使用windows自带的任务计划程序 和 windows自带的关机 exe文件 完成此需求
用户1558882
2019/07/18
2.5K0
windows自动关机(任务计划程序 + exe文件)
python pyqt5仿window任务计划程序
from PyQt5 import QtCore, QtWidgets import sys,os import win32api import win32con from PyQt5.QtWidgets import QApplication , QMainWindow,QMessageBox from PyQt5.QtCore import QDateTime,QStringListModel from PyQt5.QtGui import QIcon import datetime from apscheduler.schedulers.background import BackgroundScheduler from apscheduler.triggers.date import DateTrigger from apscheduler.executors.pool import ThreadPoolExecutor, ProcessPoolExecutor from PyQt5.QtWidgets import QSystemTrayIcon import logging
用户5760343
2019/11/20
1K0
linux计划任务详解,Linux计划任务详解
计划任务是系统的常见功能,利用任务计划功能,可以将任何脚本、程序或文档安排在某个最方便的时间运行。任务计划在每次系统启动的时候启动并在后台运行。在Linux系统中,当我们需要在服务器上定时执行一些重复性的事件时使用的,可以通过Linux计划任务程序来运行准备好的脚本、批处理文件夹、程序或命令,在某个特定的时间运行。
全栈程序员站长
2022/09/14
4.8K0
Linux中的计划任务—Crontab调度重复执行的任务
本博文的主要目的是让笔者和读者可以了解并掌握以下内容: 1、Crontab的基本概念 2、Crontab的基本组成 3、操作Crond服务 4、配置系统和用户计划任务 5、监控计划任务日志
小小工匠
2021/08/16
1K0
linux如何停掉计划任务,Linux系统的任务计划
如上表示为6月5日(必须是周三)10点01分执行 echo “ok” > /root/cron.log
全栈程序员站长
2022/09/14
2.3K0
Linux任务计划详解
Linux下计划任务可以通过修改/etc/crontab建立计划任务以及使用crontab命令添加计划任务。 第一种:修改/etc/crontab来实现计划任务(前些日子写的:http://www.0377joyous.com/archives/260.html) 第二种:使用crontab命令添加定时任务(建立成功后会在var/spool/cron/用户名有文件建立) 注意:不是建立一个文件放入到cron文件夹下,当然你可以建立一个用户名一样的文件,然后重新加载cron配置 查看是否有用户自定的定时任务:
苦咖啡
2018/05/07
2.2K0
任务计划与跟踪
01 前言 分享一下我跟踪部门内测试任务的方式。 02 任务计划与跟踪 先上图 利用excel的分组,每周一迭代; 这个sheet主要是按照需求来分组,便于跟进和宣讲,列名按照我的习惯做的,特别需要注
张树臣
2018/05/15
9150
Linux 计划任务
表示 root 用户每天凌晨 1:00 进入到 /etc/data_rsync 文件夹执行 python 脚本
为为为什么
2022/08/06
2.1K0
Linux 计划任务
Linux任务计划crontab
我们时常会有一些定期定时的任务,如周期性的清理一下/tmp,周期性的去备份一次数据库,周期性的分析日志等等。而且有时候因为某些因素的限制,执行该任务的时间会很尴尬。本课程将带你很好的利用 Linux 系统的计划工具
软测小生
2019/07/05
2.5K0
Linux任务计划crontab
计划任务 crontab、at
* * * * * sleep 10; php /home/php/crontab/tolog.php
以谁为师
2019/05/29
9870
Linux之任务计划
用过windows的同学应该都知道在控制面板中有一个“任务计划”选项,我们可以通过向导设置让计算机在某个时间点或者开机时运行某个脚本或者批处理等等,方便我们的日常管理监视工作;同样在Linux系统中,如果我们想在开机时就运行某个操作,可以直接将命令写入/etc/rc.local中,该操作就会在机器开机时运行;如果把自己写的Bash Shell脚本的名称写在/etc/rc.local中,开机后也会执行其操作;也就是说,在Linux启动的最后阶段,系统会执行存于rc.local中的命令;类似于windows里
小小科
2018/05/02
2.5K0
Linux之任务计划
linux 计划任务
每个人在生活当中或多或少都有一些工作,有的工作是按照一定周期循环的, 例如每天固定时间的闹铃、工作打卡等等; 有的工作则是临时发生的,例如刚好有亲友到访,需要你在一个特定的时间去车站迎接! 这个时候 Linux 的计划任务就可以派上场了! 在不考虑硬件与我们服务器的连接状态下,我们的 Linux 可以帮你提醒很多任务, 那么 Linux 的例行性工作是如何进行的? Linux 是通过 crontab 与 at 命令来实现的
星哥玩云
2022/09/15
2K0
windows开机自启python服务(任务计划程序+bat脚本)
需求:根据上海某银行 的需求,使用到获取数据服务的软件 只能在windows上运行,所以有 windows系统开机用户登录后自启动python flask服务 的需求;
用户1558882
2019/07/18
7.3K0
windows开机自启python服务(任务计划程序+bat脚本)
点击加载更多

相似问题

任务计划程序未在windows xp中运行。

11

对于未在计划任务中工作的文件

19

.BAT文件未在任务计划程序中运行

20

Python脚本未在任务计划程序中运行

12

未在windows中触发计划任务

16
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
社区富文本编辑器全新改版!诚邀体验~
全新交互,全新视觉,新增快捷键、悬浮工具栏、高亮块等功能并同时优化现有功能,全面提升创作效率和体验
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文