Hosten von statischen Websites in Azure StorageStatic website hosting in Azure Storage

Sie können statische Inhalte (HTML, CSS, JavaScript und Bilddateien) direkt über einen Speichercontainer namens $web bereitstellen.You can serve static content (HTML, CSS, JavaScript, and image files) directly from a storage container named $web. Das Hosten von Inhalten in Azure Storage ermöglicht die Verwendung serverloser Architekturen mit Azure Functions und anderen PaaS-Diensten (Platform-as-a-Service).Hosting your content in Azure Storage enables you to use serverless architectures that include Azure Functions and other Platform as a service (PaaS) services. Das statische Hosting von Websites mit Azure Storage ist eine ideale Option für Fälle, in denen Sie keinen Webserver zum Rendern von Inhalten benötigen.Azure Storage static website hosting is a great option in cases where you don't require a web server to render content.

Static Web Apps von App Service sind eine hervorragend Alternative zum statischen Hosting von Websites mit Azure Storage, die sich auch für Fälle eignet, in denen Sie keinen Webserver zum Rendern von Inhalten benötigen.App Service Static Web Apps is a great alternative to Azure Storage static website hosting and is also appropriate in cases where you don't require a web server to render content. Static Web Apps von App Service bieten Ihnen einen vollständig verwalteten Continuous Integration- und Continuous Delivery-Workflow (CI/CD) von der GitHub-Quelle bis zur globalen Bereitstellung.App Service Static Web Apps provide you with a fully managed continuous integration and continuous delivery (CI/CD) workflow from GitHub source to global deployment.

Wenn Sie einen Webserver zum Rendern von Inhalten benötigen, können Sie Azure App Serviceverwenden.If you need a web server to render content, you can use Azure App Service.

Hinweis

Die in diesem Artikel beschriebenen Funktionen sind jetzt für Konten mit einem hierarchischen Namespace verfügbar.The features described in this article are now available to accounts that have a hierarchical namespace. Weitere Informationen zu Einschränkungen finden Sie im Artikel Verfügbare Blob Storage-Features in Azure Data Lake Storage Gen2.To review limitations, see the Blob storage features available in Azure Data Lake Storage Gen2 article.

Hinweis

Erstellen Sie unbedingt ein Standardspeicherkonto vom Typ „Universell v2 (GPv2)“.Make sure to create a general-purpose v2 Standard storage account . Statische Websites sind in keinem anderen Speicherkontotyp verfügbar.Static websites aren't available in any other type of storage account.

Einrichten einer statischen WebsiteSetting up a static website

Das Feature zum Hosten statischer Websites muss für das Speicherkonto aktiviert werden.Static website hosting is a feature that you have to enable on the storage account.

Wählen Sie hierzu den Namen Ihrer Standarddatei aus, und geben Sie optional einen Pfad zu einer benutzerdefinierten 404-Seite an.To enable static website hosting, select the name of your default file, and then optionally provide a path to a custom 404 page. Sollte in Ihrem Konto noch kein Blobspeichercontainer namens $web vorhanden sein, wird automatisch einer erstellt.If a blob storage container named $web doesn't already exist in the account, one is created for you. Fügen Sie diesem Container die Dateien Ihrer Website hinzu.Add the files of your site to this container.

Eine entsprechende Schritt-für-Schritt-Anleitung finden Sie unter Host a static website in Azure Storage (Hosten einer statischen Website in Azure Storage).For step-by-step guidance, see Host a static website in Azure Storage.

Metriken von statischen Websites in Azure Storage: Metrik

Bei Dateien im Container $web wird die Groß-/Kleinschreibung beachtet. Sie werden über anonyme Zugriffsanforderungen bereitgestellt und sind nur über Lesevorgänge verfügbar.Files in the $web container are case-sensitive, served through anonymous access requests and are available only through read operations.

Hochladen von InhaltenUploading content

Inhalte können mit einem der folgenden Tools in den Container $web hochgeladen werden:You can use any of these tools to upload content to the $web container:

Anzeigen von InhaltenViewing content

Benutzer können Websiteinhalte in einem Browser unter der öffentlichen URL der Website anzeigen.Users can view site content from a browser by using the public URL of the website. Die URL können Sie im Azure-Portal, über die Azure-Befehlszeilenschnittstelle oder mithilfe von PowerShell ermitteln.You can find the URL by using the Azure portal, Azure CLI, or PowerShell. Siehe Suchen der Website-URL.See Find the website URL.

Wenn der Server einen 404-Fehler zurückgibt und Sie beim Aktivieren der Website kein Fehlerdokument angegeben haben, wird an den Benutzer eine 404-Standardseite zurückgegeben.If the server returns a 404 error, and you have not specified an error document when you enabled the website, then a default 404 page is returned to the user.

Hinweis

Cross-Origin Resource Sharing-Unterstützung (CORS) für Azure Storage wird bei statischen Websites nicht unterstützt.Cross-Origin Resource Sharing (CORS) support for Azure Storage is not supported with static website.

RegionscodesRegional codes

Die URL Ihrer Website enthält einen Regionscode.The URL of your site contains a regional code. Die URL https://contosoblobaccount.z22.web.core.windows.net/ enthält beispielsweise den Regionscode z22.For example the URL https://contosoblobaccount.z22.web.core.windows.net/ contains regional code z22.

Dieser Code muss zwar in der URL verbleiben, wird jedoch nur intern genutzt und muss nicht anderweitig verwendet werden.While that code must remain in the URL, it is only for internal use, and you won't have to use that code in any other way.

Das Indexdokument, das Sie beim Aktivieren des Hostens von statischen Websites angeben, wird angezeigt, wenn Benutzer beim Aufrufen der Website keine bestimmte Datei angeben (Beispiel: https://contosoblobaccount.z22.web.core.windows.net).The index document that you specify when you enable static website hosting, appears when users open the site and don't specify a specific file (For example: https://contosoblobaccount.z22.web.core.windows.net).

Sekundäre EndpunkteSecondary endpoints

Wenn Sie Redundanz in einer sekundären Region einrichten, können Sie auch über einen sekundären Endpunkt auf Websiteinhalte zugreifen.If you set up redundancy in a secondary region, you can also access website content by using a secondary endpoint. Da Daten asynchron in sekundäre Regionen repliziert werden, sind die am sekundären Endpunkt verfügbaren Dateien nicht immer mit den Dateien synchron, die auf dem primären Endpunkt verfügbar sind.Because data is replicated to secondary regions asynchronously, the files that are available at the secondary endpoint aren't always in sync with the files that are available on the primary endpoint.

Auswirkungen der Einstellung der öffentlichen Zugriffsebene des WebcontainersImpact of the setting the public access level of the web container

Sie können zwar die öffentliche Zugriffsebene des Containers $web ändern, dies hat jedoch keinerlei Auswirkungen auf den primären Endpunkt der statischen Website, da diese Dateien über anonyme Zugriffsanforderungen bereitgestellt werden.You can modify the public access level of the $web container, but this has no impact on the primary static website endpoint because these files are served through anonymous access requests. Das bedeutet öffentlichen (schreibgeschützten) Zugriff auf alle Dateien.That means public (read-only) access to all files.

Der folgende Screenshot zeigt die Einstellung der öffentlichen Zugriffsebene im Azure-Portal:The following screenshot shows the public access level setting in the Azure portal:

Screenshot: Festlegen der öffentlichen Zugriffsebene im Azure-Portal

Der primäre Endpunkt der statischen Website ist von einer Änderung der öffentlichen Zugriffsebene zwar nicht betroffen, eine solche Änderung hat jedoch Auswirkungen auf den primären Endpunkt des Blobdiensts.While the primary static website endpoint is not affected, a change to the public access level does impact the primary blob service endpoint.

Wenn Sie also beispielsweise die öffentliche Zugriffsebene des Containers $web von Privat (kein anonymer Zugriff) in Blob (anonymer Lesezugriff nur für Blobs) ändern, bleibt die öffentliche Zugriffsebene für den primären Endpunkt der statischen Website (https://contosoblobaccount.z22.web.core.windows.net/index.html) unverändert.For example, if you change the public access level of the $web container from Private (no anonymous access) to Blob (anonymous read access for blobs only), then the level of public access to the primary static website endpoint https://contosoblobaccount.z22.web.core.windows.net/index.html doesn't change.

Der öffentliche Zugriff auf den primären Endpunkt des Blobdiensts (https://contosoblobaccount.blob.core.windows.net/$web/index.html) ändert sich hingegen von privat in öffentlich.However, the public access to the primary blob service endpoint https://contosoblobaccount.blob.core.windows.net/$web/index.html does change from private to public. Nun können Benutzer die Datei unter Verwendung eines der beiden Endpunkte öffnen.Now users can open that file by using either of these two endpoints.

Die Deaktivierung des öffentlichen Zugriffs auf ein Speicherkonto wirkt sich nicht auf statische Websites aus, die in diesem Speicherkonto gehostet werden.Disabling public access on a storage account does not affect static websites that are hosted in that storage account. Weitere Informationen finden Sie unter Konfigurieren des anonymen öffentlichen Lesezugriffs für Container und Blobs.For more information, see Configure anonymous public read access for containers and blobs.

Zuordnen einer benutzerdefinierten Domäne zu einer URL einer statischen WebsiteMapping a custom domain to a static website URL

Sie können Ihre statische Website über eine benutzerdefinierte Domäne verfügbar machen.You can make your static website available via a custom domain.

Es ist einfacher, den HTTP-Zugriff für Ihre benutzerdefinierte Domäne zu aktivieren, weil dies von Azure Storage nativ unterstützt wird.It's easier to enable HTTP access for your custom domain, because Azure Storage natively supports it. Zum Aktivieren von HTTPS müssen Sie Azure CDN verwenden, weil Azure Storage HTTPS bei benutzerdefinierten Domänen noch nicht nativ unterstützt.To enable HTTPS, you'll have to use Azure CDN because Azure Storage does not yet natively support HTTPS with custom domains. Eine Schritt-für-Schritt-Anleitung finden Sie unter Zuordnen einer benutzerdefinierten Domäne zu einem Azure Blob Storage-Endpunkt.see Map a custom domain to an Azure Blob Storage endpoint for step-by-step guidance.

Wenn das Speicherkonto für die sichere Übertragung über HTTPS konfiguriert ist, müssen Benutzer den HTTPS-Endpunkt verwenden.If the storage account is configured to require secure transfer over HTTPS, then users must use the HTTPS endpoint.

Tipp

Ziehen Sie das Hosten Ihrer Domäne in Azure in Betracht.Consider hosting your domain on Azure. Weitere Informationen finden Sie unter Hosten Ihrer Domäne in Azure DNS.For more information, see Host your domain in Azure DNS.

Hinzufügen von HTTP-HeadernAdding HTTP headers

Es gibt keine Möglichkeit, Header im Rahmen des Features für die statische Website zu konfigurieren.There's no way to configure headers as part of the static website feature. Sie können jedoch Azure CDN zum Hinzufügen von Headern und Anfügen (oder Überschreiben) von Headerwerten verwenden.However, you can use Azure CDN to add headers and append (or overwrite) header values. Informationen dazu finden Sie in der Referenz zur Standardregel-Engine für Azure CDN.See Standard rules engine reference for Azure CDN.

Wenn Sie Header zum Steuern der Zwischenspeicherung verwenden möchten, finden Sie Informationen dazu unter Steuern des Azure CDN-Zwischenspeicherverhaltens mit Chacheregeln.If you want to use headers to control caching, see Control Azure CDN caching behavior with caching rules.

Hosting von Websites in mehreren RegionenMulti-region website hosting

Wenn Sie beabsichtigen, eine Website in mehreren Regionen zu hosten, empfiehlt es sich, ein Content Delivery Network für regionales Zwischenspeichern zu verwenden.If you plan to host a website in multiple geographies, we recommend that you use a Content Delivery Network for regional caching. Setzen Sie Azure Front Door ein, wenn Sie in den einzelnen Regionen unterschiedliche Inhalte bereitstellen möchten.Use Azure Front Door if you want to serve different content in each region. Zudem werden von dieser Lösung Failoverfunktionen geboten.It also provides failover capabilities. Azure Traffic Manager wird nicht empfohlen, wenn Sie den Einsatz einer benutzerdefinierten Domäne vorhaben.Azure Traffic Manager is not recommended if you plan to use a custom domain. Probleme können sich daraus ergeben, wie Azure Storage benutzerdefinierte Domänennamen verifiziert.Issues can arise because of how Azure Storage verifies custom domain names.

PreisePricing

Die Aktivierung des Hostings statischer Websites ist kostenlos.You can enable static website hosting free of charge. Ihnen werden lediglich der von Ihrer Website genutzte Blobspeicher sowie die Betriebskosten in Rechnung gestellt.You're billed only for the blob storage that your site utilizes and operations costs. Weitere Informationen zu Preisen für Azure Blob Storage finden Sie auf der Seite Preise für Azure Blob Storage.For more details on prices for Azure Blob Storage, check out the Azure Blob Storage Pricing Page.

MetrikenMetrics

Sie können Metriken für Seiten der statischen Website aktivieren.You can enable metrics on static website pages. Nachdem Sie Metriken aktiviert haben, werden Datenverkehrsstatistiken zu Dateien im Container $web im Dashboard für Metriken gemeldet.Once you've enabled metrics, traffic statistics on files in the $web container are reported in the metrics dashboard.

Informationen zum Aktivieren von Metriken für Seiten Ihrer statischen Website finden Sie unter Enable metrics on static website pages (Aktivieren von Metriken auf Seiten der statischen Website).To enable metrics on your static website pages, see Enable metrics on static website pages.

Nächste SchritteNext steps