django views - 502坏网关

时间:2012-05-23 22:41:10

标签: javascript jquery python django

我正在生产服务器中测试我的项目,我在我的网络应用程序中遇到了几个错误,这些错误在我的计算机上完美运行。

请转到http://qlimp.com并使用此用户名/密码登录:nirmal / karurkarur 然后转到http://qlimp.com/cover您会找到一个可以上传图片的调色板类似于 flavors.me 的东西。我在这里遇到了几个问题(图像,文本,其他信息没有存储在数据库中)。

我认为设置没有问题。问题是它甚至没有正确进入Django视图,但在我的计算机上没有任何问题。有没有人遇到过同样的问题?我想知道它为什么不起作用。

您也可以在http://qlimp.com/signup/中查看,并找到未存储数据的问题。

因此,在一个问题中我不能提出许多问题(不是stackoverflow文化),所以我问这个问题。

当我上传我在 Chrome检查员'网络标签'中检查过的图片时,会显示 502错误网关

这是我的Django views.py https://gist.github.com/2778242

jQuery ajax图片上传代码

$('#id_tmpbg').live('change', function()
    {
    $("#ajax-loader").show();
    $("#uploadform").ajaxForm({success: showResponse}).submit();
    });

    function showResponse(responseText, statusText, xhr, $form)  { 
    $.backstretch(responseText)
    $("#ajax-loader").hide();
    }

我还检查了它实际上是在request.is_ajax()进入form.is_valid(),而不是在我的视图中进入Exception Type: ValueError Exception Value: The BackgroundModel could not be created because the data didn't validate. Exception Location: /home/nirmal/project/local/lib/python2.7/site-packages/django/forms/models.py in save_instance, line 73 。为什么会这样?我正在上传正确的格式。

有人能说出我做过的错误吗?另外,我需要一个答案,为什么代码不能在生产服务器上工作,这实际上是在开发服务器上工作(这对我来说有助于解决其他问题)。

开发服务器:Ubuntu 11.10 / Python 2.7 / Django 1.3.1

生产服务器:Ubuntu 12.04 / Python 2.7 / Django 1.3.1

更新

使用相同的用户/密码登录的每个人都有一些问题。所以请在那里注册并显示 [Errno 111]拒绝连接,无所谓,您可以登录。

UPDATE-2

实际上问题出在form.is_valid()上,所以我删除了它并检查了但是现在我收到了这个错误:

{{1}}

我一直在上传正确的图片格式,我不知道为什么它没有验证。

UPDATE-3

我正在为http://qlimp.com/cover中的所有静态文件获取 304 Not Modified 这是否会导致无法正常工作?

2 个答案:

答案 0 :(得分:1)

当枪炮无法使用时,Nginx会出现502错误。

gunicorn_django -bind=127.0.0.1:8001仅启动一个同步工作进程,并且可能正忙于响应其他请求。

您可能希望产生更多工作人员(-w2)。如果您需要处理大数据传输,请考虑使用异步工作者风格(例如-k gevent,您需要安装gevent)。

有关选择工人类别和Gunicorn FAQ中的工人数量的更多信息。

答案 1 :(得分:0)

我发现这个问题在过去3天里一直困扰着我。这是因为我在PIL安装之前忘了这样做sudo apt-get install libjpeg62 libjpeg62-dev zlib1g-dev,这就是为什么图像没有得到验证。

下一个问题是我在settings.py文件中给出了MEDIA_ROOT的相对路径,该路径导致404 NOT FOUND并将其更改为绝对路径。

所以这些都是简单的错误,会导致一些神秘的错误。还要感谢大家的帮助。