气味-15.更新Python包并重新启动服务器后出现错误500



我们正在Ubuntu 18.04.6服务器上运行Odoo 15.0社区版。我们使用Yenthe666中的安装脚本进行安装。一切都很好,所以我们开始通过创建继承Qweb报告的新模块来修改报告,从而定制我们的安装。这还可以,直到我们不得不更新一些包(主要是Python 3.10(并重新启动服务器。我们最终得到了一个Odoo实例,它只显示了一个500内部服务器错误页面。

我们检查了我们的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内部服务器错误,日志文件显示以下消息,并以权限错误结束:

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内部服务器错误???

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

相关内容

最新更新