2016-04-14 34 views
4

Azure web uygulamam için uygulamak istediğim basit bir joker yönlendirme kuralı var. Azure web uygulamasında bir URL'nin yeniden yazılması

<rule name="MyRule"> 
    <match url="*" /> 
    <action type="Rewrite" url="/index.html" /> 
</rule> 

Burada IIS ile makine ve kemençe içine RDP edemez verilen herhangi bir seçeneği var mı? Bu bir ASP.Net sitesi değil, basit bir SPA uygulaması.

cevap

7

wwwroot klasörünüzde bir web.config dosyası oluşturup ilgili yapılandırma girişlerini buraya koymalısınız.

Size neye benzemesi gerektiği hakkında fikir vermek için bir web.config kuralı örneği. Sadece bu sunucu & sitesine tüm URL bu kararlılık index.html yönlendirme yapmak istiyorsanız

Aşağıdaki örnek varsayılan yönlendirme * (http://zainrizvi.io/2016/04/07/block-default-azure-websites-domain yoluyla) Özel alan adına .azurewebsites.net alanı

<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

kullanabilirdin Bu yeniden yazma bölümü:

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

Bu bazı küçük sözdizimi düzeltmeleri örneğin dışında ne çok benzer desen ". *" ve yeniden URL URL'si "index.html" şeklinde olmalıdır. Not: Bu, CSS ve JS dosyaları, resimler vb. Gibi diğer kaynaklar için bile sitenize TÜM URL'lerin yeniden yazılacağı anlamına gelir. Böylece, kaynaklarınızı diğer alanlardan getirmeniz daha iyi olur.

2

sen yönlendirirken (verilmez), aşağıdaki içeriğe sahip site klasörüne koymak applicationHost.xdt dosya ile ARR sağlayan unutma fiili yeniden yazar yapmak isterseniz:

<?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> 
İlgili konular