|
| 1 | +--- |
| 2 | +description: Recommendations for using uMS within a load-balanced setup. |
| 3 | +--- |
| 4 | + |
1 | 5 | # Load balancing and CM/CD Environments |
2 | 6 |
|
3 | | -## **Umbraco setup** |
| 7 | +## Umbraco setup |
| 8 | + |
| 9 | +Make sure your Umbraco is setup according to best-practices. Please refer to the [Umbraco documentation](https://docs.umbraco.com/umbraco-cms/fundamentals/setup/server-setup/load-balancing) for more details. |
| 10 | + |
| 11 | +## Cockpit |
| 12 | + |
| 13 | +For the Cockpit to function properly it is necessary that the cockpit can read the Umbraco login cookie. Umbraco and the site should run on the same domain or sub-domain. |
4 | 14 |
|
5 | | -Make sure your Umbraco is setup according to the Umbraco best-practices. Please refer to the [Umbraco documentation](https://docs.umbraco.com/umbraco-cms/fundamentals/setup/server-setup/load-balancing). |
| 15 | +For example: |
6 | 16 |
|
7 | | -## **Cockpit** |
| 17 | +**Umbraco:** `umbraco.domain.com` |
| 18 | +**Site:** `domain.com` |
8 | 19 |
|
9 | | -**Configuring the AuthCookieDomain cookie**For the cockpit to function properly it is necessary that the cockpit can read the Umbraco login cookie or else the cockpit won't be visible. **Umbraco and the site should run on the same domain / sub-domain**. For example: |
| 20 | +Make sure the AuthCookieDomain in your SecuritySettings of your Umbraco config has the following value: |
10 | 21 |
|
11 | | -**Umbraco:** umbraco.domain.com |
12 | | -**Site:** domain.com |
| 22 | +```json |
| 23 | +"AuthCookieDomain": ".domain.com", |
| 24 | +``` |
13 | 25 |
|
14 | | -Make sure the AuthCookieDomain in your SecuritySettings of your Umbraco config is set to |
| 26 | +To learn more, read the documentation about the [SecuritySettings](https://docs.umbraco.com/umbraco-cms/reference/configuration/securitysettings) |
15 | 27 |
|
16 | | - "AuthCookieDomain": ".domain.com", |
| 28 | +## Machine key and Data Protection |
17 | 29 |
|
18 | | -Also see: [https://docs.umbraco.com/umbraco-cms/reference/configuration/securitysettings](https://docs.umbraco.com/umbraco-cms/reference/configuration/securitysettings) |
| 30 | +You need to configure machine keys and data protection to **use the same keys on all servers** (content delivery and content-management). |
19 | 31 |
|
20 | | -**Machine key / Data Protection** |
| 32 | +Without this setup, each server will generate its own key. This will results in the Umbraco authentication cookie being encrypted and decrypted using different keys leaving the Cockpit unusable on the frontend servers. |
21 | 33 |
|
22 | | -You need to configure machine keys / data protection to **use the same keys on all servers** (content delivery and content-management). Without this setup, each server will generate its own key, resulting in that the Umbraco authentication cookie is encrypted and decrypted using different keys and the uMarketingSuite cockpit will not be shown on the front-end servers. |
| 34 | +To learn more, read the [Load Balancing article](https://docs.umbraco.com/umbraco-cms/fundamentals/setup/server-setup/load-balancing) in the Umbraco CMS documentation. |
23 | 35 |
|
24 | | -Also see the Data Protection section at: [https://docs.umbraco.com/umbraco-cms/fundamentals/setup/server-setup/load-balancing](https://docs.umbraco.com/umbraco-cms/fundamentals/setup/server-setup/load-balancing) |
| 36 | +## Bot detection (ping) |
25 | 37 |
|
26 | | -## **Bot detection (ping)** |
| 38 | +uMS will perform a ping (POST) to detect if the [visitor is a visitor or a bot](/analytics/types-of-clients/). The `umbraco/umarketingsuite/pagedata/ping` URL should be accessible from the content delivery and front-end servers. Make sure no firewall or other mechanism is blocking POST requests to `umbraco/umarketingsuite/pagedata/ping`. If this URL is blocked, all visitors will be treated like a bot and no analytics data is collected. |
27 | 39 |
|
28 | | -uMarketingSuite will perform a ping (POST) to detect if the [visitor is a visitor or a bot](/analytics/types-of-clients/). The url umbraco/umarketingsuite/pagedata/ping should be accessible from the content delivery / front-end servers so make sure no firewall or other mechanism is blocking POST requests to **umbraco/umarketingsuite/pagedata/ping** or else all visitors will be treated like a bot and no analytics data is collected. |
| 40 | +## Configuration |
29 | 41 |
|
30 | | -## **Configuration** |
| 42 | +Make sure the `IsProcessingServer` is set to `true` on the content management (Umbraco) environment and to `false` on the content delivery or front-end servers. |
31 | 43 |
|
32 | | -Make sure the **IsProcessingServer** is set to **True** on the content management (Umbraco) server/environment and to **False** on the content delivery / front-end servers in your **uMarketingSuite.config** ([uMarktingSuite v1.x](/installing-umarketingsuite/configuration-options-1-x/)) or **AppSettings.json** ([uMarketingSuite v2.x](/installing-umarketingsuite/configuration-options-2-x/)) file. |
| 44 | +The setting can be found in your `uMarketingSuite.config` ([uMarktingSuite v1.x](/installing-umarketingsuite/configuration-options-1-x/)) or `AppSettings.json` ([uMarketingSuite v2.x](/installing-umarketingsuite/configuration-options-2-x/)) file. |
33 | 45 |
|
34 | | -## **Sticky sessions** |
| 46 | +## Sticky sessions |
35 | 47 |
|
36 | | -Sticky sessions, also known as session affinity, are essential for the proper functioning of uMarketingSuite in a load-balanced environment. Sticky sessions can be enabled using various methods such as cookie-based, IP-based, or URL-based session affinity, depending on the load balancer configuration. By enabling sticky sessions, you can ensure that user sessions remain intact and data consistency is maintained across the uMarketingSuite application so analytics, a/b testing and personalization can work properly. |
| 48 | +Sticky sessions, also known as session affinity, are essential for the proper functioning of uMS in a load-balanced environment. Sticky sessions can be enabled using different methods such as cookie-based, IP-based, or URL-based session affinity, depending on the load balancer configuration. By enabling sticky sessions, you can ensure that user sessions remain intact and data consistency is maintained across the uMarketingSuite application. Sticky sessions will ensure that analytics, A/B testing and personalization works properly. |
37 | 49 |
|
38 | | -Please refer to the documentation or configuration settings of your load balancer for specific instructions on enabling sticky sessions. |
| 50 | +Please refer to the documentation or configuration settings of your load balancer for specific instructions on enabling sticky sessions. |
0 commit comments