- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我的 django 应用程序在本地工作正常,但当我部署它时,它面临一条特定路线的 uswgi seg 错误。其他所有路线均正常工作。这是 View :
def bunny(request):
"""
Filter crawler, bot and real user
:param request:
:return: serve rendered page to crawler / SPA to user
"""
......some other codes ....
path = request.get_full_path_info()
if path.startswith('/news_paper'): # <<-- seg fault for this routes only in production server
news_paper = utils(unquote(path[12:]))
if news_paper[1] == 0: # if news paper is not found return default list
return render(request, 'site_list.html')
news = News.objects.filter(news_paper=news_paper[1]).order_by('-created_at')[:15]
return render(request, 'news.html', {'news': news, 'title': news_paper[0]})
elif path == '/about/':
return render(request, 'about.html')
else:
return render(request, 'site_list.html')
uWsgi 配置文件:
[uwsgi]
chdir=/home/..
home = /home/../.env
module=xyz.wsgi
master=True
process = 5
pidfile=/run/xyz.pid
socket= /run/xyz.sock
stats=/tmp/xyz.stat
vacuum=True
max-requests=500
logto = /home/../logs/xyz.log
log-maxsize = 200480
uid = prism
gid = www-data
die-on-term = true
chmod-socket = 666
chown-socket = www-data
和日志文件:
!!! uWSGI process 4668 got Segmentation Fault !!!
*** backtrace of 4668 ***
uwsgi(uwsgi_backtrace+0x2c) [0x46d0ac]
uwsgi(uwsgi_segfault+0x21) [0x46d471]
/lib/x86_64-linux-gnu/libc.so.6(+0x354b0) [0x7f1c373b84b0]
/home/../.env/lib/python3.6/site-packages/psycopg2/.libs/./libssl-1d6df745.so.1.0.2p(ssl3_cleanup_key_block+0xb) [0x7f1c32d3fcab]
/home/../.env/lib/python3.6/site-packages/psycopg2/.libs/./libssl-1d6df745.so.1.0.2p(ssl3_clear+0x16) [0x7f1c32d3d5a6]
/home/../.env/lib/python3.6/site-packages/psycopg2/.libs/./libssl-1d6df745.so.1.0.2p(tls1_clear+0x9) [0x7f1c32d49219]
/usr/lib/x86_64-linux-gnu/libssl.so.1.1(SSL_new+0x462) [0x7f1c387a5d22]
/home../.env/lib/python3.6/site-packages/psycopg2/.libs/libpq-3a62a61f.so.5.11(+0x23969) [0x7f1c32fd4969]
/home/../.env/lib/python3.6/site-packages/psycopg2/.libs/libpq-3a62a61f.so.5.11(+0x24fc5) [0x7f1c32fd5fc5]
/home/../.env/lib/python3.6/site-packages/psycopg2/.libs/libpq-3a62a61f.so.5.11(PQconnectPoll+0xb78) [0x7f1c32fbfba8]
/home/../.env/lib/python3.6/site-packages/psycopg2/.libs/libpq-3a62a61f.so.5.11(+0xfa28) [0x7f1c32fc0a28]
/home/../.env/lib/python3.6/site-packages/psycopg2/.libs/libpq-3a62a61f.so.5.11(PQconnectdb+0x1f) [0x7f1c32fc341f]
/home/../.env/lib/python3.6/site-packages/psycopg2/_psycopg.cpython-36m-x86_64-linux-gnu.so(+0x12651) [0x7f1c33214651]
/home/../.env/lib/python3.6/site-packages/psycopg2/_psycopg.cpython-36m-x86_64-linux-gnu.so(+0x133df) [0x7f1c332153df]
/usr/lib/x86_64-linux-gnu/libpython3.6m.so.1.0(+0x16cb06) [0x7f1c37af1b06]
/usr/lib/x86_64-linux-gnu/libpython3.6m.so.1.0(_PyObject_FastCallDict+0x8b) [0x7f1c37aa810b]
/usr/lib/x86_64-linux-gnu/libpython3.6m.so.1.0(_PyObject_CallFunction_SizeT+0x12c) [0x7f1c37aa9f1c]
/home/../.env/lib/python3.6/site-packages/psycopg2/_psycopg.cpython-36m-x86_64-linux-gnu.so(+0xc1a8) [0x7f1c3320e1a8]
/usr/lib/x86_64-linux-gnu/libpython3.6m.so.1.0(PyCFunction_Call+0xa6) [0x7f1c37ae2466]
/usr/lib/x86_64-linux-gnu/libpython3.6m.so.1.0(_PyEval_EvalFrameDefault+0x5ae5) [0x7f1c37b37665]
/usr/lib/x86_64-linux-gnu/libpython3.6m.so.1.0(PyEval_EvalCodeEx+0x27d) [0x7f1c37b3114d]
/usr/lib/x86_64-linux-gnu/libpython3.6m.so.1.0(+0x1391aa) [0x7f1c37abe1aa]
/usr/lib/x86_64-linux-gnu/libpython3.6m.so.1.0(PyObject_Call+0x47) [0x7f1c37aa8547]
/usr/lib/x86_64-linux-gnu/libpython3.6m.so.1.0(_PyEval_EvalFrameDefault+0x1aca) [0x7f1c37b3364a]
/usr/lib/x86_64-linux-gnu/libpython3.6m.so.1.0(+0x1b4f6a) [0x7f1c37b39f6a]
/usr/lib/x86_64-linux-gnu/libpython3.6m.so.1.0(+0x1b4c3b) [0x7f1c37b39c3b]
/usr/lib/x86_64-linux-gnu/libpython3.6m.so.1.0(_PyEval_EvalFrameDefault+0x4d3) [0x7f1c37b32053]
/usr/lib/x86_64-linux-gnu/libpython3.6m.so.1.0(+0x1b4f6a) [0x7f1c37b39f6a]
/usr/lib/x86_64-linux-gnu/libpython3.6m.so.1.0(+0x1b4c3b) [0x7f1c37b39c3b]
/usr/lib/x86_64-linux-gnu/libpython3.6m.so.1.0(_PyEval_EvalFrameDefault+0x4d3) [0x7f1c37b32053]
/usr/lib/x86_64-linux-gnu/libpython3.6m.so.1.0(+0x1b4f6a) [0x7f1c37b39f6a]
/usr/lib/x86_64-linux-gnu/libpython3.6m.so.1.0(+0x1b4c3b) [0x7f1c37b39c3b]
/usr/lib/x86_64-linux-gnu/libpython3.6m.so.1.0(_PyEval_EvalFrameDefault+0x4d3) [0x7f1c37b32053]
/usr/lib/x86_64-linux-gnu/libpython3.6m.so.1.0(+0x1b5253) [0x7f1c37b3a253]
/usr/lib/x86_64-linux-gnu/libpython3.6m.so.1.0(+0x1b4c3b) [0x7f1c37b39c3b]
/usr/lib/x86_64-linux-gnu/libpython3.6m.so.1.0(_PyEval_EvalFrameDefault+0x4d3) [0x7f1c37b32053]
/usr/lib/x86_64-linux-gnu/libpython3.6m.so.1.0(+0x1b4f6a) [0x7f1c37b39f6a]
/usr/lib/x86_64-linux-gnu/libpython3.6m.so.1.0(+0x1b4c3b) [0x7f1c37b39c3b]
/usr/lib/x86_64-linux-gnu/libpython3.6m.so.1.0(_PyEval_EvalFrameDefault+0x4d3) [0x7f1c37b32053]
/usr/lib/x86_64-linux-gnu/libpython3.6m.so.1.0(+0x1b5253) [0x7f1c37b3a253]
/usr/lib/x86_64-linux-gnu/libpython3.6m.so.1.0(+0x1b4c3b) [0x7f1c37b39c3b]
/usr/lib/x86_64-linux-gnu/libpython3.6m.so.1.0(_PyEval_EvalFrameDefault+0x11b8) [0x7f1c37b32d38]
/usr/lib/x86_64-linux-gnu/libpython3.6m.so.1.0(+0x132c1b) [0x7f1c37ab7c1b]
/usr/lib/x86_64-linux-gnu/libpython3.6m.so.1.0(+0x13e18c) [0x7f1c37ac318c]
/usr/lib/x86_64-linux-gnu/libpython3.6m.so.1.0(+0x16cb06) [0x7f1c37af1b06]
/usr/lib/x86_64-linux-gnu/libpython3.6m.so.1.0(_PyObject_FastCallDict+0x8b) [0x7f1c37aa810b]
/usr/lib/x86_64-linux-gnu/libpython3.6m.so.1.0(+0x1b4ce7) [0x7f1c37b39ce7]
/usr/lib/x86_64-linux-gnu/libpython3.6m.so.1.0(_PyEval_EvalFrameDefault+0x4d3) [0x7f1c37b32053]
/usr/lib/x86_64-linux-gnu/libpython3.6m.so.1.0(+0x1b4f6a) [0x7f1c37b39f6a]
/usr/lib/x86_64-linux-gnu/libpython3.6m.so.1.0(+0x1b4c3b) [0x7f1c37b39c3b]
/usr/lib/x86_64-linux-gnu/libpython3.6m.so.1.0(_PyEval_EvalFrameDefault+0x4d3) [0x7f1c37b32053]
/usr/lib/x86_64-linux-gnu/libpython3.6m.so.1.0(_PyFunction_FastCallDict+0x13a) [0x7f1c37b3b83a]
/usr/lib/x86_64-linux-gnu/libpython3.6m.so.1.0(_PyObject_FastCallDict+0x10e) [0x7f1c37aa818e]
/usr/lib/x86_64-linux-gnu/libpython3.6m.so.1.0(_PyObject_Call_Prepend+0x61) [0x7f1c37aa8ce1]
/usr/lib/x86_64-linux-gnu/libpython3.6m.so.1.0(_PyObject_FastCallDict+0x8b) [0x7f1c37aa810b]
/usr/lib/x86_64-linux-gnu/libpython3.6m.so.1.0(+0x1710ee) [0x7f1c37af60ee]
/usr/lib/x86_64-linux-gnu/libpython3.6m.so.1.0(+0x172285) [0x7f1c37af7285]
/usr/lib/x86_64-linux-gnu/libpython3.6m.so.1.0(+0x1aa2ac) [0x7f1c37b2f2ac]
/usr/lib/x86_64-linux-gnu/libpython3.6m.so.1.0(_PyCFunction_FastCallDict+0x165) [0x7f1c37ae2235]
/usr/lib/x86_64-linux-gnu/libpython3.6m.so.1.0(+0x1b4b5b) [0x7f1c37b39b5b]
/usr/lib/x86_64-linux-gnu/libpython3.6m.so.1.0(_PyEval_EvalFrameDefault+0x4d3) [0x7f1c37b32053]
/usr/lib/x86_64-linux-gnu/libpython3.6m.so.1.0(+0x1b4f6a) [0x7f1c37b39f6a]
/usr/lib/x86_64-linux-gnu/libpython3.6m.so.1.0(+0x1b4c3b) [0x7f1c37b39c3b]
/usr/lib/x86_64-linux-gnu/libpython3.6m.so.1.0(_PyEval_EvalFrameDefault+0x4d3) [0x7f1c37b32053]
*** end of backtrace ***
DAMN ! worker 1 (pid: 4668) died :( trying respawn ...
Respawned uWSGI worker 1 (new pid: 4709)
我正在使用最新版本的 django 和 psycopg2。
最佳答案
当针对两个不同的 openssl 版本编译 uwsgi 和 psycopg 时,会发生此错误。您有两种解决方案。
禁用 django 数据库配置的 ssl
# Database
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.postgresql',
'NAME': 'mydb',
'USER': 'myuser',
'PASSWORD': 'mypassword',
'HOST': 'localhost',
'PORT': '',
'OPTIONS': {
'sslmode': 'disable'
}
}
}
要从源代码安装 psyocpg2,您必须卸载以前的版本并尝试此
pip uninstall psycopg2
pip install --no-binary :all: psycopg2
关于django - 一条特定路由的 uwsgi 段错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53496524/
uWSGI 主进程有什么用? 和/或我可以在哪里阅读更多相关信息? 我找到了零文档。 最佳答案 您可以找到有关大师的一些信息here和 here 一般来说,主文件负责优雅地重新加载您的应用程序服务器(
我有多个基于 Flask 的 web 应用程序在 docker 容器中运行(它们的进程需要与主机操作系统隔离)。为了运行这些应用程序,我在容器内使用了 uWSGI 服务器。传入的请求应该通过订阅服务器
我正在尝试使用 uwsgi 进行一些非常复杂的配置。从长远来看,我试图让自己的事情变得更容易,自然而然,这样做,我正在使事情变得尽可能困难。 无论如何,我正在寻找魔法变量的完整列表。我能在 Emper
我开始使用 uWSGI,我想知道它的工作人员是否是非阻塞/基于事件的(就像 nginx 一样)。 假设我已经像这样启动了 uWSGI: uwsgi --http :8000 --wsgi-file t
我们的应用程序是为 Python 2.7 编写的。它有一个配置为使用 Python 2.7 的 virtualenv。系统安装的 uWSGI 是用 Python 2.6 构建的。 It seems t
我在这个页面 http://uwsgi-docs.readthedocs.org/en/latest/StatsServer.html并使用 uwsgitop但我不知道如何解释输出。文档也没有透露太多
我看到这里发布了许多 uWSGI 配置,我在工作中遇到的现有应用程序的配置也有填充了 100 到 1000 值的 max-requests。 在一定数量的请求后回收进程的目的是什么?您是否试图避免内存
我正在使用 uWSGI 运行一个 webpy 网络服务器,有些请求花费的时间太长。设置 harakiri 模式后,我注意到请求被终止后会再次重试。 是否可以禁用此行为? 运行命令为: /usr/loc
uwsgi 中的“mule farm”是什么,它有什么用?有一些使用示例吗?我没有在文档或其他任何地方找到任何东西。 最佳答案 一群有名字的骡子 --farm chickens:1,2,3. --fa
在学习Python web开发时候,可能会遇到诸如uwsgi,wsgi等名词,下面通过梳理总结探究它们之间的关系。 CGI CGI,(Common Gateway Interface)通用网关接口,是
我已经使用 uWSGI 部署了一个 WSGI 应用程序,但是 I am not using NGINX .如何使用 uWSGI's internal routing将 http 请求重定向到 http
我正在使用命令在 uWsgi 服务器中测试应用程序, uwsgi --http :9090 --wsgi-file myapp.py --callable app --processes 4 --th
我们有一个工作的 uwsgi 服务器,带有一些 RPC 调用(注意:我们能够使用 uwsgi.rpc 与进程对话,因此它们端的设置很好)。我们发现我们有一些进程没有在 uwsgi 下运行,但我们想要与
我正在尝试为我的 Django 项目设置 uwsgi。它运行良好 ./manage.py runserver 0.0.0.0:9010 但是当我尝试 uwsgi --http :9010 --chd
我是 Linux 开发的新手。我对阅读的文档有点困惑。我的最终目标是托管一个简单的 python 支持的 Web 服务,该服务将检查传入的有效负载,并将其转发到其他服务器。这应该不到 30 行 pyt
我的 Django 应用程序倾向于使用 uwsgi+nginx,谁能分享启动我的 uwsgi 进程的最佳方法?有没有人有调整uwsgi的经验? 最佳答案 在 OSX 上启动 Unice 上的 Upst
从 ini 文件启动 uwsgi 时崩溃,堆栈跟踪如下: Traceback (most recent call last):
我用 Django 编写了一个服务器应用程序,并使用 Tastypie 为移动应用程序提供 API,并使用本地 MySQL 服务器为数据库提供服务。 在进程被杀死或结束之前,查询似乎被缓存了。如果我在
我正在开发一个基于 Python 的应用程序(HTTP -- REST 或 jsonrpc 接口(interface)),它将用于生产自动化测试环境。这将连接到运行所有测试脚本的 Java 客户端。即
我尝试在 nginx+uwsgi、os - debian (3.1.0-1-amd64 x86_64) 上为 django 建立网络服务器 nginx 1.1.8-1,uwsgi 0.9.8.3-1
我是一名优秀的程序员,十分优秀!