【问题标题】:Python fCGI + sqlAlchemy = malformed header from script. Bad header=FROM tags : index.pyPython fCGI + sqlAlchemy = 来自脚本的格式错误的标头。错误的标头 = FROM 标签:index.py
【发布时间】:2011-02-14 16:03:09
【问题描述】:

我正在编写一个使用 sqlAlchemy 和 MySQL 进行持久数据存储的 Fast-CGI 应用程序。我连接到数据库并设置 ORM 没有问题(以便将表映射到类);我什至可以将数据添加到表中(在内存中)。

但是,一旦我查询数据库(并将任何更改从内存推送到存储),我就会得到一个 500 Internal Server Error 并且我的 error.log 记录了来自脚本的 格式错误的标头。 Bad header=FROM tags : index.py, tags 是表名。

知道是什么原因造成的吗?

另外,我认为这并不重要,但它是一个 Linux 开发服务器与一个异地(全国)MySQL 服务器通信。

【问题讨论】:

    标签: python mysql apache sqlalchemy fastcgi


    【解决方案1】:

    看起来 SQLalchemy 正在将查询推送或回显到您的输出(其中 fast-cgi)是在寻找标题,然后是正文。也许将 sqlalchemy.echo 设置为 False 会有所帮助。

    【讨论】:

    • 谢谢,解决了。我在早期的调试中将 echo 设置为 True 并且没有意识到它会弄乱 F-CGI
    【解决方案2】:

    您可以配置日志记录以输出调试信息,而不是设置echo=True。 SQLAlchemy 有非常灵活的loggers hierarchy。以下行将启用与echo 相同的信息的记录:

    import logging
    
    logging.basicConfig()
    logging.getLogger('sqlalchemy.engine').setLevel(logging.INFO)
    

    【讨论】:

      猜你喜欢
      • 2016-04-21
      • 2014-05-21
      • 2011-06-15
      • 2023-03-22
      • 1970-01-01
      • 2018-09-14
      • 1970-01-01
      • 2022-07-05
      • 1970-01-01
      相关资源
      最近更新 更多