在Dreamhost Python网页上获取“脚本标题的过早结束”

问题描述 投票:0回答:1

我在Python Flask中使用Python 2.7(我知道)在Dreamhost上托管了一个网页。直到几天前我完全没有问题。然后,我开始在我的页面上收到权限错误。我不知道发生了什么,但我得到了Dreamhost实时聊天,他们通过对我的文件执行chmod 755来解决它。一切都在恢复,但经过进一步检查,我网页上生成PDF文档的所有部分都停止了工作。我在错误日志中得到的错误是“脚本标题的过早结束”。

只有在我尝试生成PDF时才会出现此错误。代码完全适用于我的本地环境,但它不适用于托管。我再次与Dreamhost的人们在一起,他们说他们身边没什么。考虑到ALREADY WORKING的代码根本没有改变,这很奇怪。我尝试了调试,但我没有收到任何错误。

我已经尝试了几乎所有我能想到的解决这种情况但我没有成功的事情。行动方案是改变这个托管(我知道,首先使用Dreamhost是我的错误。但是当我做到这一点时,我刚开始并且我知之甚少)。但是我现在需要一个更快的解决方案,我想知道是否有人遇到过这个问题并且可以帮助我解决这个问题。

详细说明,我使用的是Python 2.7,用于PDF创建的库是Flask-Weasyprint(0.5)。我自己尝试运行wsgi文件,并收到以下消息:

/path/to/local/lib/python2.7/site-packages/WeasyPrint-0.39-py2.7.egg/weasyprint/text.py:29: UserWarning: There are known rendering problems with Cairo <= 1.14.0 warnings.warn('There are known rendering problems with Cairo <= 1.14.0') /path/to/local/lib/python2.7/site-packages/WeasyPrint-0.39-py2.7.egg/weasyprint/fonts.py:46: UserWarning: @font-face support needs Pango >= 1.38 warnings.warn('@font-face support needs Pango >= 1.38')

我知道我应该更改为Python 3.当我创建这个Web应用程序时,Dreamhost只接受Python 2,我几乎没有任何创建VPS或类似的知识。我计划很快将主机更改为虚拟机并在Python 3中运行该项目。但在我继续之前,我现在需要一个解决方案。

任何帮助将不胜感激。如果您需要更多详细信息,请告诉我们。

python flask wsgi dreamhost
1个回答
0
投票

这可能是由于Passenger文件的路径中不包含项目目录。一种解决方案是将以下内容添加到passenger_wsgi.py文件中:

sys.path.append(os.getcwd()+"/<project_name>")
© www.soinside.com 2019 - 2024. All rights reserved.