【问题标题】:Odoo-15. Error 500 aufter updating Python packages and rebooting the serverOdoo-15。更新 Python 包并重新启动服务器后出现错误 500
【发布时间】:2022-08-15 03:58:14
【问题描述】:

我们在 Ubuntu 18.04.6 服务器上运行 Odoo 15.0 社区版。 我们使用 Yenthe666 的安装脚本进行了安装。 一切正常,因此我们开始通过创建继承 Qweb 报告的新模块修改报告来自定义我们的安装。 这没问题,直到我们不得不更新一些包(主要是 Python 3.10)并重新启动我们的服务器。 我们最终得到了一个仅显示 500 Internal Server Error 页面的 Odoo 实例。

我们检查了我们的 Python 版本:

python3 --version

=> 3.8.13(我们在安装过程中需要升级到的版本)

当我们停止并启动 Odoo 服务器时:

sudo -u odoo /odoo/odoo-server/odoo-bin --config=/etc/odoo-server.conf

我们在日志文件中收到以下消息:

2022-08-10 17:52:48,138 23825 INFO ? odoo: Odoo version 15.0 
2022-08-10 17:52:48,138 23825 INFO ? odoo: Using configuration file at /etc/odoo-server.conf 
2022-08-10 17:52:48,138 23825 INFO ? odoo: addons paths: [\'/odoo/odoo-server/odoo/addons\', \'/usr/lib/python3/dist-packages/odoo/addons\', \'/odoo/odoo-server/addons\', \'/odoo/custom/addons\'] 
2022-08-10 17:52:48,139 23825 INFO ? odoo: database: odoo@odoo.ourserver.com:5432 
2022-08-10 17:52:48,284 23825 INFO ? odoo.addons.base.models.ir_actions_report: Will use the Wkhtmltopdf binary at /usr/local/bin/wkhtmltopdf 
2022-08-10 17:52:48,545 23825 INFO ? odoo.service.server: HTTP service (werkzeug) running on odoo.ourserver.com:8069

所以一切似乎都很好

当我们停止服务并将其作为服务重新启动时

systemctl start odoo-server

我们在日志文件中得到相同的消息。

当我们检查服务的状态时:

systemctl status odoo-server

我们得到以下信息:

● odoo-server.service - LSB: Enterprise Business Applications
   Loaded: loaded (/etc/init.d/odoo-server; generated)
   Active: active (running) since Wed 2022-08-10 20:17:34 CEST; 4min 35s ago
     Docs: man:systemd-sysv-generator(8)
  Process: 18422 ExecStop=/etc/init.d/odoo-server stop (code=exited, status=0/SUCCESS)
  Process: 28100 ExecStart=/etc/init.d/odoo-server start (code=exited, status=0/SUCCESS)
    Tasks: 4 (limit: 4630)
   CGroup: /system.slice/odoo-server.service
           └─28112 python3 /odoo/odoo-server/odoo-bin -c /etc/odoo-server.conf

Aug 10 20:17:34 map systemd[1]: Starting LSB: Enterprise Business Applications...
Aug 10 20:17:34 map odoo-server[28100]: Starting odoo-server: odoo-server.
Aug 10 20:17:34 map systemd[1]: Started LSB: Enterprise Business Applications.

当我们尝试访问该站点时,它只显示 500 Internal Server Error 并且日志文件显示以下消息并以 Permission Error 结尾:

2022-08-10 18:24:30,128 28112 INFO ? odoo.http: HTTP Configuring static files 
2022-08-10 18:24:30,132 28112 INFO ? werkzeug: 127.0.0.1 - - [10/Aug/2022 18:24:30] \"GET /web HTTP/1.1\" 500 - 0 0.000 0.002
2022-08-10 18:24:30,137 28112 ERROR ? werkzeug: Error on request:
Traceback (most recent call last):
  File \"/usr/local/lib/python3.8/dist-packages/werkzeug/serving.py\", line 306, in run_wsgi
    execute(self.server.app)
  File \"/usr/local/lib/python3.8/dist-packages/werkzeug/serving.py\", line 294, in execute
    application_iter = app(environ, start_response)
  File \"/odoo/odoo-server/odoo/service/server.py\", line 482, in app
    return self.app(e, s)
  File \"/odoo/odoo-server/odoo/service/wsgi_server.py\", line 112, in application
    return application_unproxied(environ, start_response)
  File \"/odoo/odoo-server/odoo/service/wsgi_server.py\", line 87, in application_unproxied
    result = odoo.http.root(environ, start_response)
  File \"/odoo/odoo-server/odoo/http.py\", line 1336, in __call__
    return self.dispatch(environ, start_response)
  File \"/odoo/odoo-server/odoo/http.py\", line 1302, in __call__
    return self.app(environ, start_wrapped)
  File \"/usr/local/lib/python3.8/dist-packages/werkzeug/middleware/shared_data.py\", line 220, in __call__
    return self.app(environ, start_response)
  File \"/odoo/odoo-server/odoo/http.py\", line 1487, in dispatch
    explicit_session = self.setup_session(httprequest)
  File \"/odoo/odoo-server/odoo/http.py\", line 1367, in setup_session
    session_gc(self.session_store)
  File \"/odoo/odoo-server/odoo/tools/func.py\", line 26, in __get__
    value = self.fget(obj)
  File \"/odoo/odoo-server/odoo/http.py\", line 1313, in session_store
    path = odoo.tools.config.session_dir
  File \"/odoo/odoo-server/odoo/tools/config.py\", line 710, in session_dir
    os.makedirs(d, 0o700)
  File \"/usr/lib/python3.8/os.py\", line 213, in makedirs
    makedirs(head, exist_ok=exist_ok)
  File \"/usr/lib/python3.8/os.py\", line 213, in makedirs
    makedirs(head, exist_ok=exist_ok)
  File \"/usr/lib/python3.8/os.py\", line 213, in makedirs
    makedirs(head, exist_ok=exist_ok)
  File \"/usr/lib/python3.8/os.py\", line 223, in makedirs
    mkdir(name, mode)
PermissionError: [Errno 13] Permission denied: \'/odoo/.local\' - - -

我们不知道去哪里看看,到底是什么原因导致 500 Internal Server Error ???

    标签: odoo-15


    【解决方案1】:

    可能您还没有设置正确的虚拟环境以及启动脚本中的用户和环境值到您最初运行的相同环境。在特定用户(或什至 root)下运行脚本与以 root 身份在启动脚本中运行它之间,环境值会发生变化。
    话虽如此,您需要授予 /odoo/.local 权限,以便 Odoo 创建必要的文件夹。检查哪些用户有权访问该文件夹及其内容。
    总是更仔细地阅读错误输出的最后一句:PermissionError: [Errno 13] Permission denied: '/odoo/.local'

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-08-29
      • 2017-05-05
      • 2011-04-21
      • 2016-12-28
      • 2013-05-30
      相关资源
      最近更新 更多