[MERGE] Forward-port of branch 14.0 to master

This commit is contained in:
Antoine Vandevenne (anv) 2021-07-29 15:09:12 +02:00
commit 17880034b4
3 changed files with 44 additions and 50 deletions

View File

@ -9,7 +9,6 @@ internet.
.. warning:: If you are setting up a public server, be sure to check our :ref:`security` recommandations! .. warning:: If you are setting up a public server, be sure to check our :ref:`security` recommandations!
.. _db_filter: .. _db_filter:
dbfilter dbfilter
@ -64,6 +63,7 @@ in ``/etc/odoo.conf`` set:
dbfilter = ^%d$ dbfilter = ^%d$
.. note:: .. note::
Setting a proper :option:`--db-filter <odoo-bin --db-filter>` is an important part Setting a proper :option:`--db-filter <odoo-bin --db-filter>` is an important part
of securing your deployment. of securing your deployment.
Once it is correctly working and only matching a single database per hostname, it Once it is correctly working and only matching a single database per hostname, it
@ -72,7 +72,6 @@ in ``/etc/odoo.conf`` set:
your databases, and to block access to the database management screens. your databases, and to block access to the database management screens.
See also security_. See also security_.
PostgreSQL PostgreSQL
========== ==========
@ -196,7 +195,6 @@ be better monitored and resource-restricted.
.. warning:: multiprocessing mode currently isn't available on Windows .. warning:: multiprocessing mode currently isn't available on Windows
Worker number calculation Worker number calculation
------------------------- -------------------------
@ -229,8 +227,6 @@ like nginx or apache. When doing so, you'll need to forward some more http Heade
to Odoo, and activate the proxy_mode in Odoo configuration to have Odoo read those to Odoo, and activate the proxy_mode in Odoo configuration to have Odoo read those
headers. headers.
Configuration sample Configuration sample
-------------------- --------------------
@ -289,59 +285,59 @@ in ``/etc/nginx/sites-enabled/odoo.conf`` set:
#odoo server #odoo server
upstream odoo { upstream odoo {
server 127.0.0.1:8069; server 127.0.0.1:8069;
} }
upstream odoochat { upstream odoochat {
server 127.0.0.1:8072; server 127.0.0.1:8072;
} }
# http -> https # http -> https
server { server {
listen 80; listen 80;
server_name odoo.mycompany.com; server_name odoo.mycompany.com;
rewrite ^(.*) https://$host$1 permanent; rewrite ^(.*) https://$host$1 permanent;
} }
server { server {
listen 443; listen 443;
server_name odoo.mycompany.com; server_name odoo.mycompany.com;
proxy_read_timeout 720s; proxy_read_timeout 720s;
proxy_connect_timeout 720s; proxy_connect_timeout 720s;
proxy_send_timeout 720s; proxy_send_timeout 720s;
# Add Headers for odoo proxy mode # Add Headers for odoo proxy mode
proxy_set_header X-Forwarded-Host $host; proxy_set_header X-Forwarded-Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme; proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Real-IP $remote_addr;
# SSL parameters # SSL parameters
ssl on; ssl on;
ssl_certificate /etc/ssl/nginx/server.crt; ssl_certificate /etc/ssl/nginx/server.crt;
ssl_certificate_key /etc/ssl/nginx/server.key; ssl_certificate_key /etc/ssl/nginx/server.key;
ssl_session_timeout 30m; ssl_session_timeout 30m;
ssl_protocols TLSv1.2; ssl_protocols TLSv1.2;
ssl_ciphers ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384; ssl_ciphers ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384;
ssl_prefer_server_ciphers off; ssl_prefer_server_ciphers off;
# log # log
access_log /var/log/nginx/odoo.access.log; access_log /var/log/nginx/odoo.access.log;
error_log /var/log/nginx/odoo.error.log; error_log /var/log/nginx/odoo.error.log;
# Redirect longpoll requests to odoo longpolling port # Redirect longpoll requests to odoo longpolling port
location /longpolling { location /longpolling {
proxy_pass http://odoochat; proxy_pass http://odoochat;
} }
# Redirect requests to odoo backend server # Redirect requests to odoo backend server
location / { location / {
proxy_redirect off; proxy_redirect off;
proxy_pass http://odoo; proxy_pass http://odoo;
} }
# common gzip # common gzip
gzip_types text/css text/scss text/plain text/xml application/xml application/json application/javascript; gzip_types text/css text/scss text/plain text/xml application/xml application/json application/javascript;
gzip on; gzip on;
} }
Odoo as a WSGI Application Odoo as a WSGI Application
@ -558,9 +554,6 @@ Here is what it could look like for blocking the IP for 15 minutes when
findtime = 60 ; within 1 min /!\ Should be adjusted with the TZ offset findtime = 60 ; within 1 min /!\ Should be adjusted with the TZ offset
logpath = /var/log/odoo.log ; set the actual odoo log path here logpath = /var/log/odoo.log ; set the actual odoo log path here
.. _db_manager_security: .. _db_manager_security:
Database Manager Security Database Manager Security
@ -623,12 +616,10 @@ Here are the supported browsers:
.. warning:: Please make sure your browser is up-to-date and still supported by .. warning:: Please make sure your browser is up-to-date and still supported by
its publisher before filing a bug report. its publisher before filing a bug report.
.. note:: .. note::
Since Odoo 13.0, ES6 is supported. Therefore, IE support is dropped. Since Odoo 13.0, ES6 is supported. Therefore, IE support is dropped.
.. [#different-machines] .. [#different-machines]
to have multiple Odoo installations use the same PostgreSQL database, to have multiple Odoo installations use the same PostgreSQL database,
or to provide more computing resources to both software. or to provide more computing resources to both software.

View File

@ -478,6 +478,9 @@ fiscal elements that indicate that the document is fiscally valid:
:align: center :align: center
:alt: Barcode and fiscal elements in the invoice report. :alt: Barcode and fiscal elements in the invoice report.
.. important::
If you are hosted in Odoo SH or On-Premise, you should manually install the ``pdf417gen``
library. Use the following command to install it: ``pip install pdf417gen``.
Commercial Validation Commercial Validation
~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~
@ -488,7 +491,7 @@ Once the invoice has been sent to the customer:
2. The customer must send a reception confirmation email. 2. The customer must send a reception confirmation email.
3. Subsequently, if all the commercial terms and invoice data are correct, they will send the 3. Subsequently, if all the commercial terms and invoice data are correct, they will send the
Acceptance confirmation, otherwise they send a Claim. Acceptance confirmation, otherwise they send a Claim.
4. The field DTE acceptation status is updated automatically. 4. The field DTE acceptation status is updated automatically.
.. image:: media/Chile23.png .. image:: media/Chile23.png
:align: center :align: center

View File

@ -845,7 +845,7 @@ We start by adding a new file in our views folder - name it **options.xml** and
<template id="snippet_testimonial_opt" name="Snippet Testimonial Options" inherit_id="website.snippet_options"> <template id="snippet_testimonial_opt" name="Snippet Testimonial Options" inherit_id="website.snippet_options">
<xpath expr="//div[@data-js='Box']" position="after"> <xpath expr="//div[@data-js='Box']" position="after">
<div data-selector=".snippet_testimonial"> <!-- Options group --> <div data-selector=".s_testimonial"> <!-- Options group -->
<div class="dropdown-submenu"> <div class="dropdown-submenu">
<a href="#" class="dropdown-item">Your Option</a> <a href="#" class="dropdown-item">Your Option</a>
<div class="dropdown-menu"><!-- Options list --> <div class="dropdown-menu"><!-- Options list -->