0

我已经使用 Python Paste Deploy 脚本来部署 Flask+Gunicorn 项目。但是,我不能用( h )s %(l)s %(u)s %(t)s "%(r)s" %(s)s %(b)s "%( f)”。因为我们的 %(h)s格式在 Paste Deploy 脚本中有特殊的含义。如文档中所述:

You can use variable substitution, which will pull variables from 
the section [DEFAULT] (case sensitive!) with markers like %
(var_name)s. The special variable %(here)s is the directory
containing the configuration file;

但是我可以解决这个问题吗?

4

1 回答 1

0

在这种情况下,您尝试配置应用程序的两个组件 - Gunicorn 和 Flask 应用程序(使用 Paste Deploy)。Gunicorn 负责访问日志记录,而 Flask / Paste Deploy 使用您现有的配置进行配置。Paste Deploy 负责在自己的配置文件中进行神奇的变量替换,这与 Gunicorn 访问日志配置冲突。

您可以为 Gunicorn 提供一个单独的配置文件,其中将包含您的访问日志格式。例如:

gunicorn -c gunicorn.conf --paste demo.conf

gunicorn.conf

accesslog = access.log
access_log_format = %(h)s %(l)s %(u)s %(t)s "%(r)s" %(s)s %(b)s "%(f)s" "%(a)s"
于 2015-10-20T20:00:14.687 回答