【问题标题】:Odoo (on Debian) - longpolling port is never used/openedOdoo(在 Debian 上)- 从不使用/打开长轮询端口
【发布时间】:2015-05-11 07:10:40
【问题描述】:

使用 Odoo 进行长轮询端口的 Debian 发行版(针对 Wheezy 和 Squeeze 进行了测试)似乎存在问题。从不使用长轮询端口。本来应该用的workers参数设置为大于0,但反正没用。但是在Ubuntu上测试同样的东西,longpolling端口是正常使用的。

有一个原始问题(问题的最后评论)https://github.com/odoo/odoo/issues/3793

检查 nginx 日志我看到了这个(每次它尝试通过反向代理访问 longpolling):

2015/05/08 07:54:09 [error] 32494#0: *8 connect() failed (111: Connection refused) while connecting to upstream, client: IP address, server: _, request: "POST /longpolling/poll HTTP/1.1", upstream: "http://127.0.0.1:8072/longpolling/poll", host: "db.host.eu", referrer: "http://db.host.eu/web"

当我尝试通过 telnet 连接到8072 端口时:

$ telnet 127.0.0.1 8072
Trying 127.0.0.1...
telnet: Unable to connect to remote host: Connection refused

但尝试例如:

$ telnet 127.0.0.1 8069
Trying 127.0.0.1...
Connected to 127.0.0.1.

所以好像8072端口没有使用? 在我的 odoo 配置中,它设置为这样:

longpolling_port = 8072
xmlrpc_port = 8069
workers = 2
xmlrpc_interface = 127.0.0.1
netrpc_interface = 127.0.0.1

【问题讨论】:

    标签: nginx reverse-proxy long-polling odoo odoo-8


    【解决方案1】:

    这个问题很简单,但却是伪装的。它缺少 python 包psycogreen。但它没有被提及为依赖项,并且在安装 im_chat 时它不需要这样的包。因此,如果您使用 --workers=0 运行 Odoo,然后安装 im_chat,然后切换到例如 --workers=2,Odoo 不会抛出任何错误,并且永远不会打开长轮询端口。

    安装它解决了它:

    pip install psycogreen==1.0
    

    【讨论】:

    • 这里怎么样?我已经安装了那个东西,但是长轮询不起作用:(
    • 同@user568021
    • 如果您使用的是 Ubuntu 16.04,sudo apt install python-psycogreen 会这样做。不过很奇怪,官方存储库中的 pkg 并未将其列为依赖项...
    • 我在 Ubuntu Xenial 上并尝试使用 pip install 和 apt install。都没有奏效。奇怪的是,监听器确实在 longpolling_port (8072) 上启动,但是 Odoo (10) 仍然吐出 bus.Bus unavailable 错误。
    • 如果你正在启用工作人员,你必须为长轮询端口做一个反向代理。这是一个很好的指南。它是为 odoo 8 制作的,但也适用于较新的版本 schenkels.nl/2014/12/…
    【解决方案2】:

    也许您已经修复了它,但是看到我一直在寻找答案并找到了修复程序,我会发布它。 这让我的 Odoo 10 Enterprise 安装工作再次成功:

    1. 使用以下命令安装 Python 依赖项: sudo apt-get install python-dateutil python-docutils python-feedparser python-jinja2 python-ldap python-libxslt1 python-lxml python-mako python-mock python-openid python-psycopg2 python-psutil python-pybabel python-pychart python-pydot python-pyparsing python-reportlab python-simplejson python-tz python-unittest2 python-vatnumber python-vobject python-webdav python-werkzeug python-xlwt python-yaml python-zsi poppler-utils python-pip python-pypdf python-passlib python-装饰器 gcc python-dev mc bzr python-setuptools python-markupsafe python-reportlab-accel python-zsi python-yaml python-argparse python-openssl python-egenix-mxdatetime python-usb python-serial lptools make python-pydot python-psutil python -paramiko poppler-utils python-pdftools antiword python-requests python-xlsxwriter python-suds python-psycogreen python-ofxparse python-gevent。

    (学分:https://www.getopenerp.com/install-odoo-10-on-ubuntu-16-04/)。

    1. 确保在您的配置中有worker = x X 应该是一个大于 0 的数字

    2. 如果您在反向代理 (apache / nginx) 后面运行,请确保您的配置文件具有以下行: proxy_mode = True

    希望这可以帮助遇到类似问题的其他人

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-08-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多