# Environments

URL: https://docs.ablyft.com/de/guides/audiences-and-delivery/environments/

> Beschränke ein Experiment auf bestimmte Websites oder Stages, etwa Live und Staging oder eine Website pro Land.



Ein **Environment** ist ein Label mit einer Regel, die festlegt, auf welcher Website oder welcher Version einer Website
ein Experiment laufen darf. Typische Einsatzfälle:

* Eine Live-Website und eine Staging-Website, damit ein Test nur dort läuft, wo du es willst
* Eine Website pro Land oder Sprache, zum Beispiel `us`, `uk` und `ca`
* Eine Website, die auf mehreren Subdomains ausgeliefert wird

Du definierst Environments einmal in deinem Project und weist sie dann deinen Experiments zu. Pages, Audiences und Goals
bleiben gemeinsam genutzt.

> Diese Seite ist die kurze, aufgabenorientierte Übersicht. Die Regeln sind kleine JavaScript-Ausdrücke. Wie du sie
> schreibst, mit Beispielen, Sub-Snippets und Fehlerbehebung, steht in
> [Environments (Entwicklerhandbuch)](https://docs.ablyft.com/de/developers/installation/environments/).

## Brauchst du Environments?

Besteht dein Project aus einer einzigen Website, kannst du Environments ignorieren. Ein Experiment **ohne** Environment
kann überall laufen, wo das Snippet installiert ist.

Nutze Environments, wenn du das Snippet auf mehr als einer Website einsetzt oder wenn du einen Test von einer
Staging-Website fernhalten möchtest (oder umgekehrt).

## Ein Environment anlegen

1. Öffne dein Project und gehe zu **Settings → Environments**.
2. Klicke auf **Create** und fülle das Formular aus:
   * **Color:** eine Labelfarbe, mit der du das Environment erkennst.
   * **Name:** ein klarer, aussagekräftiger Name wie `Staging`. Eindeutig im Project.
   * **API Name:** nur für fortgeschrittene Nutzer. Buchstaben, Zahlen, Bindestriche und Unterstriche, wird aus dem Namen
     befüllt und ist im Project eindeutig. Er wird im Dateinamen des [Sub-Snippets](https://docs.ablyft.com/de/developers/installation/environments/#sub-snippets)
     verwendet.
   * **Rules:** JavaScript, das auf den Websites `true` zurückgibt, für die das Environment gilt. Der **Code Helper**
     daneben bietet fertige Ausdrücke (`subdomain`, `domain`, `tld`) zum Kopieren an.
   * Optional: **Description**, **Use as project default** (neue Experiments erhalten dieses Environment automatisch;
     pro Project kann nur ein Environment der Standard sein, und es gibt keines, bis du es aktivierst) und **Create a
     sub-snippet**.
3. Speichere.

Ein Entwickler kann dir bei der Regel helfen. Wie du Regeln schreibst, mit Beispielen, steht im
[Entwicklerhandbuch](https://docs.ablyft.com/de/developers/installation/environments/#write-the-rule).

## Environments einem Experiment zuweisen

1. Öffne das Experiment.
2. Klicke in der Card **Environments** („Restrict to environments“) in der rechten Spalte auf **Edit**.
3. Wähle ein oder mehrere Environments aus und klicke auf **Save**.

Environments sind nicht Teil des Formulars zum Anlegen eines Experiments, du setzt sie auf der Seite des Experiments. Die Card zeigt dann die zugewiesenen Environments. Ohne Environments zeigt sie **No restrictions set**.

| Situation                   | Ergebnis                                                          |
| --------------------------- | ----------------------------------------------------------------- |
| Kein Environment zugewiesen | Das Experiment kann überall laufen.                               |
| Ein Environment             | Das Experiment läuft nur dort, wo seine Regel zutrifft.           |
| Mehrere Environments        | Das Experiment läuft dort, wo **mindestens eine** Regel zutrifft. |

Gut zu wissen:

* Environments werden geprüft, nachdem die Page gepasst hat und **bevor** die [Audiences](https://docs.ablyft.com/de/guides/audiences-and-delivery/audiences/) geprüft werden.
* Wenn du ein Environment als **Use as project default** festlegst, erhalten neue Experiments es automatisch.
* Beim Klonen eines Experiments werden seine Environments mitkopiert.
* Änderungen an den Environments eines laufenden Experiments werden automatisch veröffentlicht.

Soll ein Experiment auf mehreren Domains laufen, richte seine Pages so ein, dass sie nicht von einer Domain abhängen,
siehe [Match Types](https://docs.ablyft.com/de/guides/audiences-and-delivery/pages/#match-types).

## Die Environments deiner Experiments finden

In der Experiment-Liste zeigt die Spalte **Environments** die zugewiesenen Environments mit ihrer Farbe.

## Ein Environment bearbeiten oder löschen

Du kannst ein Environment jederzeit bearbeiten, und ABlyft veröffentlicht die Änderung, wenn Experiments es verwenden.
Ein Environment, das von Experiments verwendet wird, kann nicht gelöscht werden. Öffne das Environment und prüfe
**Used in experiments**, entferne es aus diesen Experiments und lösche es dann. Zum Anlegen, Bearbeiten und Löschen
brauchst du die Rolle Member, Admin oder Owner.

## Nächste Schritte

- [Environments (Entwicklerhandbuch)](https://docs.ablyft.com/de/developers/installation/environments/): Regeln, Sub-Snippets und Fehlerbehebung.
- [Pages & URL-Targeting](https://docs.ablyft.com/de/guides/audiences-and-delivery/pages/): Lege fest, wo ein Experiment läuft.

