From 6f192511cd5fe34c82b4cdb9cb7a830fedb65e3d Mon Sep 17 00:00:00 2001 From: xpl-odoo Date: Thu, 12 Dec 2024 09:58:47 +0000 Subject: [PATCH] [IMP] website: replace cloudflare's page rule by redirect rule closes odoo/documentation#11577 X-original-commit: d1779bf4e5afca22e6ac7d366c12d0f68f9f8059 Signed-off-by: Xavier Platteau (xpl) --- .../website/configuration/domain_names.rst | 29 ++++++++++++------ .../domain_names/cloudflare-page-rule.png | Bin 11158 -> 0 bytes .../domain_names/cloudflare-redirect-rule.png | Bin 0 -> 27756 bytes 3 files changed, 19 insertions(+), 10 deletions(-) delete mode 100644 content/applications/websites/website/configuration/domain_names/cloudflare-page-rule.png create mode 100644 content/applications/websites/website/configuration/domain_names/cloudflare-redirect-rule.png diff --git a/content/applications/websites/website/configuration/domain_names.rst b/content/applications/websites/website/configuration/domain_names.rst index 2f7309989..c9b996c4b 100644 --- a/content/applications/websites/website/configuration/domain_names.rst +++ b/content/applications/websites/website/configuration/domain_names.rst @@ -224,18 +224,27 @@ DNS hosting services do not offer an easy way to do so. .. image:: domain_names/cloudflare-cname-db.png :alt: Adding a CNAME DNS record to Cloudflare to redirect a www subdomain to an Odoo database -#. Define a page rule to permanently (301) redirect your naked domain + `/*` (e.g., - `yourdomain.com/*`) to `https://www.` + your naked domain + `/$1` (e.g., - `https://www.yourdomain.com/$1`) by going to :menuselection:`Rules --> Page Rules --> Create Page - Rule`, and using the following configuration: +#. Define a redirect rule to permanently redirect (301) your naked domain (e.g., `yourdomain.com`) + to both `http://` and `https://` by going to :menuselection:`Rules --> Redirect Rules --> Create + rule`, and: - - :guilabel:`URL`: e.g., `yourdomain.com/*` - - :guilabel:`Pick a Setting`: Forwarding URL - - :guilabel:`Select status code`: 301 - Permanent Redirect - - :guilabel:`Enter destination URL`: e.g., `https://www.yourdomain.com/$1` + - Enter any :guilabel:`Rule name`. + - Under the :guilabel:`If incoming requests match...` section, select :guilabel:`Custom filter + expression` and use the following configuration: - .. image:: domain_names/cloudflare-page-rule.png - :alt: Defining a Cloudflare page rule to create a permanent redirect (301) + - :guilabel:`Field`: Hostname + - :guilabel:`Operator`: equals + - :guilabel:`Value`: e.g., `yourdomain.com` + + - Under the :guilabel:`Then...` section, use the following configuration: + + - :guilabel:`Type`: Dynamic + - :guilabel:`Expression`: e.g., `concat("https://www.yourdomain.com/", http.request.uri.path)` + - :guilabel:`Status code`: 301 + - :guilabel:`Preserve query string`: enabled + + .. image:: domain_names/cloudflare-redirect-rule.png + :alt: Defining a Cloudflare redirect rule to create a permanent redirect (301) #. Go to :guilabel:`SSL/TLS` and set the encryption mode to :guilabel:`Full`. diff --git a/content/applications/websites/website/configuration/domain_names/cloudflare-page-rule.png b/content/applications/websites/website/configuration/domain_names/cloudflare-page-rule.png deleted file mode 100644 index 7aa6d29d015f0adf98280716088f047a9856e26e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 11158 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 e3CZvswu|U}Q-|g{>ew&