2016-04-14 15 views
4

Ich habe eine einfache Platzhalter-Routing-Regel, die ich für meine Azure-Webanwendung anwenden möchte.Umschreiben einer URL in einer Azure-Webanwendung

Habe ich eine Option hier gegeben kann ich nicht RDP in die Maschine und Geige mit IIS? Dies ist keine ASP.Net-Website, es ist eine einfache SPA-Anwendung.

Antwort

7

Sie müssen eine web.config-Datei in Ihrem wwwroot-Ordner erstellen und dort die entsprechenden Konfigurationseinträge ablegen.

Hier ist ein Beispiel für eine web.config Regel, um Ihnen eine Vorstellung davon zu geben, wie es aussehen sollte.

Das folgende Beispiel des Standard * .azurewebsites.net Domäne zu einer benutzerdefinierten Domain (via http://zainrizvi.io/2016/04/07/block-default-azure-websites-domain) umleiten

<configuration> 
    <system.webServer> 
    <rewrite> 
     <rules> 
      <rule name="Redirect rquests to default azure websites domain" stopProcessing="true"> 
      <match url="(.*)" /> 
      <conditions logicalGrouping="MatchAny"> 
       <add input="{HTTP_HOST}" pattern="^yoursite\.azurewebsites\.net$" /> 
      </conditions> 
      <action type="Redirect" url="http://www.yoursite.com/{R:0}" /> 
      </rule> 
     </rules> 
    </rewrite> 
    </system.webServer> 
</configuration> 
4

Wenn einfach alles, was Entschlossenheit zu diesem Server & Website URL will index.html umleiten Sie könnten verwenden Dieser Abschnitt zum Umschreiben:

<configuration> 
    <system.webServer> 
     <rewrite> 
      <rules> 
       <rule name="SPA"> 
        <match url=".*" /> 
        <action type="Rewrite" url="index.html" /> 
       </rule> 
      </rules> 
     </rewrite> 
    </system.webServer> 
</configuration> 

Dies ist sehr ähnlich zu dem, was Sie außer einigen kleineren Syntax-Fixes haben z Das Muster sollte ". *" sein und das URL-Rewrite-Ziel einfach "index.html" lauten. Beachten Sie, dass ALLE URLs zu Ihrer Site neu geschrieben werden, sogar für andere Ressourcen wie CSS- und JS-Dateien, Bilder usw. Sie sollten also Ihre Ressourcen von anderen Domains holen.

2

Wenn Sie tatsächlich Schreibungen (nicht umleitet) zu tun, nicht vergessen ARR ermöglicht mit applicationHost.xdt-Datei mit folgendem Inhalt an den Site-Ordner setzen:

<?xml version="1.0"?> 
<configuration xmlns:xdt="http://schemas.microsoft.com/XML-Document-Transform"> 
    <system.webServer> 
    <proxy xdt:Transform="InsertIfMissing" enabled="true" preserveHostHeader="false" reverseRewriteHostInResponseHeaders="false" /> 
    <rewrite> 
     <allowedServerVariables> 
     <add name="HTTP_ACCEPT_ENCODING" xdt:Transform="Insert" /> 
     <add name="HTTP_X_ORIGINAL_HOST" xdt:Transform="Insert" /> 
     </allowedServerVariables> 
    </rewrite> 
    </system.webServer> 
</configuration>