我在 Ubuntu 22 上成功安装了 Odoo 16。(Yenthe 脚本)当我直接使用端口 8069 上的 IP 地址运行 Odoo 时,一切正常。但是,当我使用带有服务器块的域名运行它时,会发生几件事:初始网站生成陷入无限循环。当我刷新屏幕时让它运行很长时间后,网站已创建但我无法编辑它。我可以单击左上角的前端编辑器按钮,但不会出现编辑模式。可编辑区域变为深灰色,并有一个大圆圈在不停地盘旋。 当我用 Ip 号替换同一个应用程序时,它可以正常工作。
我正在使用 cloudflare.
首先我怀疑服务器块,但我一直在使用建议的变体但没有变化。错误日志没有显示明显的错误。
有没有人有类似的经历?有解决办法吗?
server {
listen 80;
# set proper server name after domain set
server_name spiritpointacupressure.com;
# Add Headers for odoo proxy mode
proxy_set_header X-Forwarded-Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Real-IP $remote_addr;
add_header X-Frame-Options "SAMEORIGIN";
add_header X-XSS-Protection "1; mode=block";
proxy_set_header X-Client-IP $remote_addr;
proxy_set_header HTTP_X_FORWARDED_HOST $remote_addr;
# odoo log files
access_log /var/log/nginx/odoo-access.log;
error_log /var/log/nginx/odoo-error.log;
# increase proxy buffer size
proxy_buffers 16 64k;
proxy_buffer_size 128k;
proxy_read_timeout 900s;
proxy_connect_timeout 900s;
proxy_send_timeout 900s;
# force timeouts if the backend dies
proxy_next_upstream error timeout invalid_header http_500 http_502
http_503;
types {
text/less less;
text/scss scss;
}
# enable data compression
gzip on;
gzip_min_length 1100;
gzip_buffers 4 32k;
gzip_types text/css text/less text/plain text/xml application/xml application/json application/javascript application/pdf image/jpeg image/png;
gzip_vary on;
client_header_buffer_size 4k;
large_client_header_buffers 4 64k;
client_max_body_size 0;
location / {
proxy_pass http://127.0.0.1:8069;
# by default, do not forward anything
proxy_redirect off;
}
location /longpolling {
proxy_pass http://127.0.0.1:8072;
}
location ~* .(js|css|png|jpg|jpeg|gif|ico)$ {
expires 2d;
proxy_pass http://127.0.0.1:8069;
add_header Cache-Control "public, no-transform";
}
# cache some static data in memory for 60mins.
location ~ /[a-zA-Z0-9_-]*/static/ {
proxy_cache_valid 200 302 60m;
proxy_cache_valid 404 1m;
proxy_buffering on;
expires 864000;
proxy_pass http://127.0.0.1:8069;
}
}
只需将此行添加到服务器块上的 nginx 配置文件中。它挂起是因为请求是通过 http 而不是 https 发送的。
add_header 'Content-Security-Policy' 'upgrade-insecure-requests';
我在 ubuntu 22.04 上尝试使用 Odoo 16 CE,它运行良好