标签: django

在 Heroku 上看不到 Django 日志

INFO在 Heroku 日志中没有看到Django 生成的日志条目(级别为)。

这是我的配置:

LOGGING = {
    'version': 1,
    'disable_existing_loggers': False,
    'filters': {
        'require_debug_false': {
            '()': 'django.utils.log.RequireDebugFalse',
        },
        'require_debug_true': {
            '()': 'django.utils.log.RequireDebugTrue',
        },
        'not_development_filter': {
            '()': NotDevelopmentFilter,
        },
    },
    'handlers': {
        'console':{
            'level': 'INFO',
            'class': 'logging.StreamHandler',
        },
        'null': {
            'class': 'django.utils.log.NullHandler',
        },
        'mail_admins': {
            'level': 'ERROR',
            'filters': ['not_development_filter'],
            'class': 'django.utils.log.AdminEmailHandler',
            'include_html': True,
        }
    },
    'loggers': {
        '': {
            'handlers': ['mail_admins', 'console'],
            'level': 'INFO',
        },
        'django': {
            'handlers': ['console'],
        },
        'django.request': {
            'handlers': ['mail_admins'],
            'level': 'ERROR',
            'propagate': False, …
Run Code Online (Sandbox Code Playgroud)

python logging django heroku

15
推荐指数
1
解决办法
3756
查看次数

使用 Nginx、Apache、mod_wsgi 部署 Django 应用程序

我有一个可以使用标准开发环境在本地运行的 django 应用程序。我现在想将其移至 EC2 进行生产。django 文档建议使用 apache 和 mod_wsgi 运行,并使用 nginx 加载静态文件。

我在 Ec2 机器上运行 Ubuntu 12.04。我的 Django 应用程序“ddt”包含一个带有 ddt.wsgi 的子目录“apache”

import os, sys
apache_configuration= os.path.dirname(__file__)
project = os.path.dirname(apache_configuration)
workspace = os.path.dirname(project)
sys.path.append(workspace)
sys.path.append('/usr/lib/python2.7/site-packages/django/')
sys.path.append('/home/jeffrey/www/ddt/')
os.environ['DJANGO_SETTINGS_MODULE'] = 'ddt.settings'
import django.core.handlers.wsgi
application = django.core.handlers.wsgi.WSGIHandler()
Run Code Online (Sandbox Code Playgroud)

我从 apt 安装了 mod_wsgi。我的 apache/httpd.conf 包含

NameVirtualHost *:8080

WSGIScriptAlias / /home/jeffrey/www/ddt/apache/ddt.wsgi
WSGIPythonPath /home/jeffrey/www/ddt

<Directory /home/jeffrey/www/ddt/apache/>
<Files ddt.wsgi>
Order deny,allow
Allow from all
</Files>
</Directory>
Run Code Online (Sandbox Code Playgroud)

在 apache2/sites-enabled 下

<VirtualHost *:8080>
ServerName www.mysite.com
ServerAlias mysite.com
<Directory /home/jeffrey/www/ddt/apache/>
    Order deny,allow …
Run Code Online (Sandbox Code Playgroud)

deployment nginx django mod-wsgi apache-2.2

14
推荐指数
1
解决办法
2656
查看次数

WSGI:从守护进程收到的截断或过大的响应头

系统配置:Apache2、Django 1.10、Python 3、Ubuntu 16.04 LTS

姜戈debug=True


/var/log/apache2/error.log

[52:53.057967] [wsgi:error] [pid 4303] [client 1.1.1.22:24409] Timeout when reading response headers from daemon process 'example.org': /home/user/dir/project/main_app/wsgi.py
[52:58.466726] [wsgi:error] [pid 4305] [client 1.1.1.10:9787] Truncated or oversized response headers received from daemon process 'example.org': /home/user/dir/project/main_app/wsgi.py
[52:58.466729] [wsgi:error] [pid 4304] [client 1.1.1.4:18417] Truncated or oversized response headers received from daemon process 'example.org': /home/user/dir/project/main_app/wsgi.py
[52:58.466726] [wsgi:error] [pid 4307] [client 1.1.1.22:35116] Truncated or oversized response headers received from daemon process 'example.org': /home/user/dir/project/main_app/wsgi.py
[52:58.466756] [wsgi:error] [pid 4306] …
Run Code Online (Sandbox Code Playgroud)

django mod-wsgi apache2

14
推荐指数
2
解决办法
2万
查看次数

Nginx 清漆 Nginx Django?

我有一个 django 应用程序,我想在它前面的服务器上设置 Varnish。在另一个 serverfault 线程中,有人建议将 Nginx 放在 Varnish 前面。

我应该将 Nginx 放在缓存服务器上的 Varnish 前面吗?如果是这样,我应该在应用服务器上使用 Nginx 吗?

nginx varnish django

13
推荐指数
1
解决办法
7555
查看次数

帮助我了解如何使用ProxyPass

更新:在玩弄下面的两个答案后,我添加了一个修改后的问题。

你好呀,

如果您正在阅读本文,您可能熟悉 Apache 的 mod_proxy 及其 ProxyPass 功能。像许多其他人一样,我有一个可以从内部网络外部访问的应用程序的问题,但该应用程序本身可以访问不同机器上的其他内部应用程序,当您通过此设置进行远程访问时,事情变得不稳定。

所以,我的设置非常简单,我有:

机器 #1 启用了远程访问,我通过主机名访问它,它会吐出运行在它上面的 PHP 应用程序。

Machine #2 是一个运行 Django 的新应用程序,它使用完全不同的后端(甚至是 auth),它托管在单独的机器上。在我们的 Intranet 中,我们通过一个简单的命名主机名访问它,该主机名基本上链接到内部 192.168.0.101 ip。

我尝试使用 ProxyPass 来设置它,例如,传递到 /new 会将其发送到新应用程序:

ProxyPass /new http://192.168.0.101/

这种工作方式,它将请求发送到另一个应用程序,但它中断了,因为我的 Django 应用程序想要重定向到 /auth/login/,它立即无法识别。如果我自己将 url 修改为 foo.net/new/auth/login,我会得到我的登录页面,但正如您所猜测的那样,在整个浏览过程中这样做并不方便。

那么我怎样才能让 ProxyPass 像我想要的那样工作呢?我是否需要对 Apache 做一些事情,以便它总是在另一个应用程序中的 url 之前写入 /new ,或者这是我应该在我的 Django 应用程序中修改的内容吗?

任何提示和指针也将不胜感激。谢谢你的时间

proxy mod-proxy django proxypass apache-2.2

13
推荐指数
1
解决办法
7万
查看次数

Django 有 Heroku 吗?

我一直在研究 Heroku 作为托管服务提供商。我对其易于部署以及根据需要扩展和缩减资源的能力特别感兴趣。

是否有与 Django 一起使用的具有这种轻松和强大功能的托管解决方案?

django heroku

12
推荐指数
4
解决办法
3299
查看次数

Amazon EC2 Ami 推荐的免费套餐?

亚马逊网络服务最近推出了一个免费套餐,您基本上可以免费获得试用 AWS 和运行小型网站和项目的东西。基本上它是免费的,只要您保持在一定的带宽、磁盘存储等限制以下。

由于超出限制很快就会变得非常昂贵(对于业余爱好者),我想要一些关于我可以在免费层上运行哪些 AMI 的建议或建议,以便尝试 Ruby on Rails 和/或 Django。

django ruby-on-rails amazon-ec2

11
推荐指数
1
解决办法
7100
查看次数

如何使用 IIS 8 设置 Django?

我过去曾尝试让 Django 在 Windows 8 Developer Preview 中的 IIS 8 下运行。现在 Windows 8 的消费者预览版已经发布,我想知道是否可以获得一些关于在 IIS 中设置 Django 的详细说明。

我该如何进行这个过程 - 我几乎不知道从哪里开始。我需要特定的 ISAPI 模块吗?

iis django

11
推荐指数
1
解决办法
8267
查看次数

将用户名存储在 nginx 日志中

有没有办法将用户名或用户 ID 存储在 nginx 日志中。我尝试在 log_format 指令中插入 $remote_user 但它似乎不起作用。

nginx logging django

11
推荐指数
1
解决办法
5022
查看次数

在小型服务器中使用 django manage.py runserver 进行生产,供内部使用的风险?

我正在用 django 编写一个小型网络应用程序。它将拥有不超过 200 名用户,全部在我公司内部。我想尽快设置它。我是 Django 和网络应用程序的新手。

当我阅读 django 的教程时,他们不建议使用python manage.py runserver来部署生产服务器,但他们没有给出任何理由。

我怀疑出于我非常谦虚的目的,djangorunserver会做得很好。我对么?我在冒什么风险?

deployment web-server django

11
推荐指数
1
解决办法
7983
查看次数