Tüm uygulamalarım için bir yönlendirici işlevi görmesi gereken bir ARR sunucusu altında çalışmak istediğim bir uygulama havuzum var. Şelalede uygulanması gereken bir dizi kural tanımladım, ancak bir şey uygun şekilde çalışmıyor.IIS ARR kuralları, uygulamalara izleyen eğik çizgi eklemede beklendiği gibi çalışmıyor
ilk kuralı diğer kuralların yeniden yazma URL ile benim iç DNS sunucusu için çözmek için benim uygulamaları haritalandırmalıdır, bölü çizgisi işlemek gerekir, ancak sorun ilk döneminde ne gibi görünüyor.
Varsayılan davranış şu ki, eğer uygulamayı http://myapp ile başlatmaya çalışırsam 404 kodunu döndürürsem, eğer eğik çizgi ekleyerek çalıştırmayı denediysem (http://www.myapp/) her şey iyi çalışıyor. Yani temelde benim kuralım, eğik çizgi olmadan Url kalıplarını kontrol etmelidir: kaynak bir dizin ise, URL'nin sonuna eğik çizgi eklemelidir. Bu uçta/olmadan url yakalamak olmalı ve başarılı bir şekilde test
.*[^/]$
:
Yani url yakalamak için desen aşağıdaki normal ifadedir. Bir dizin ise Regexp'i eşleşen her url için , ben kontrol etmelidir ve durumda, o yüzden eğik çizgi belirlesin:{REQUEST_FILE} -> Is a directory
Ancak bu işe yaramaz. Ben de hiçbir başarı ile aşağıdaki kural eklemek çalıştı: (çok yeniden yazma aynı davranışa yol açar) için
Yönlendirme:
{REQUEST_FILE} -> Is not a file
kural uygulamak şudur
{R:O}/
Bu, URL'leri/adreslerime eklemiyor gibi görünüyor ve hangi adımların başarısız olduğunu kontrol edemiyorum.
mywebapp/* redirect to www.mydnsappaddress/{R:1}
EDIT: Bir sonraki kurallar temelde bu modeli takip Sana kuralların metinsel versiyonu görmek için web.config örneği ekleyin.
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<system.webServer>
<rewrite>
<rules>
<clear />
<rule name="Trailing Slash" enabled="false" stopProcessing="true">
<match url=".*[^/]$" />
<conditions logicalGrouping="MatchAll" trackAllCaptures="false">
<add input="{REQUEST_FILENAME}" matchType="IsFile" />
</conditions>
<action type="Redirect" url="{R:0}/" />
</rule>
<rule name="app1" enabled="false" patternSyntax="Wildcard">
<match url="sites/doc/*" />
<conditions logicalGrouping="MatchAll" trackAllCaptures="false" />
<action type="Rewrite" url="http://mypersonaldnsaddress/{R:0}" />
</rule>
<rule name="ASTCO portale NWS" enabled="true" patternSyntax="Wildcard">
<match url="portale/*" />
<conditions logicalGrouping="MatchAll" trackAllCaptures="false" />
<action type="Rewrite" url="http://mypersonaldnsaddress/{R:0/{R:0}" />
</rule>
</rules>
</rewrite>
</system.webServer>
</configuration>
Kullandığınız kuralları veya en azından bir örneği listeleyebilir misiniz? Web.config dosyanızda XML olarak görünmelidir. –
Onları ana gönderiye ekledim. – lateralus