IIS 8 / trailing slash


Recommended Posts

Captain Awesome

Hola allerseits,

folgendes Problem: ich habe ein Projekt mit mehreren asp.net Webseiten, die alle in Subfoldern der main Domain auf einem Windows Server 2012 laufen.

Projekt 1 = www.meineurl.at/projekt1/

Projekt 2 = www.meineurl.at/projekt2/

Projekt 3 = www.meineurl.at/projekt3/

Jetzt ist es so, dass die Leute beim Eingeben von www.meineurl.at auf www.meineurl.at/projekt1/ weitergeleitet werden sollen. Das habe ich mit HTTP Redirect direkt im IIS gelöst, das funktioniert wunderbar soweit

ALLERDINGS ist es jetzt auch leider so, dass die Leute beim Eingeben von www.meineurl.at/projekt2 (OHNE trailing slash) auf die oben eingestellte Adresse weitergeleitet werden, da es die "file" projekt2 nicht gibt - ergo redirect zur default adresse, ergo redirect zu projekt1.

2 Ansätze: umstellen, dass man beim Aufrufen der root Adresse anders auf projekt1 weitergeleitet wird (hatte das mit einer einfachen index.html mit Javascript umgesetzt, hab aber browser gesehen bei denen das nicht geklappt hat). Oder URL rewrite und einen slash anhängen, wenn es sich um keine File handelt (was aber auf den ersten Blick haarig aussieht..?).

Oder gibt es eine andere sinnvolle Möglichkeit? Hat jemand Ideen oder Hilfe?

Danke schonmal! :winke:

Diesen Beitrag teilen


Link zum Beitrag
Auf anderen Seiten teilen

ASB-Gott

Ich bin leider kein Experte wenn es um den IIS geht, aber definitiv kann man sagen, dass Redirecting für sowas eher nicht das richtige ist, im Apache ist ein Rewriting vorhanden, dass mittels .htaccess definiert werden kann und wohl so funktioniert wie du es in deiner 2. Alternative beschrieben hast. Das wäre in deinem Fall in meinen Augen das richtige, auch wenn ich leider nicht weiß, wie das im IIS geht. Da höchstwahrscheinlich die Regeln für den Rewrite aneinanderhängbar sind, wie im Apache, wäre es wohl das beste, wie du gemeint hast, erst den Slash anzuhängen und dann neu zu prüfen. Ich nehme an projekt1/ projekt2/ und projekt3/ sind Ordner in deinem Webpfad und die index.html ist als Default Document eingestellt und deswegen geht der Zugriff auf z.B. projekt2/?

Ich würde das mal so probieren, die Regeln für den Rewrite kann man natürlich immer verfeinern, damit das schöner ausschaut, eventuell lässt sich mit regulären ausdrücken da einiges machen. Das sind nur meine Meinungen, wie gesagt, ich bin kein Profi wenn es um den IIS geht.

Diesen Beitrag teilen


Link zum Beitrag
Auf anderen Seiten teilen

Captain Awesome

Ich bin leider kein Experte wenn es um den IIS geht, aber definitiv kann man sagen, dass Redirecting für sowas eher nicht das richtige ist, im Apache ist ein Rewriting vorhanden, dass mittels .htaccess definiert werden kann und wohl so funktioniert wie du es in deiner 2. Alternative beschrieben hast. Das wäre in deinem Fall in meinen Augen das richtige, auch wenn ich leider nicht weiß, wie das im IIS geht. Da höchstwahrscheinlich die Regeln für den Rewrite aneinanderhängbar sind, wie im Apache, wäre es wohl das beste, wie du gemeint hast, erst den Slash anzuhängen und dann neu zu prüfen. Ich nehme an projekt1/ projekt2/ und projekt3/ sind Ordner in deinem Webpfad und die index.html ist als Default Document eingestellt und deswegen geht der Zugriff auf z.B. projekt2/? Ich würde das mal so probieren, die Regeln für den Rewrite kann man natürlich immer verfeinern, damit das schöner ausschaut, eventuell lässt sich mit regulären ausdrücken da einiges machen. Das sind nur meine Meinungen, wie gesagt, ich bin kein Profi wenn es um den IIS geht.

Richtig, ist beim Win Server ähnlich. Und ja, projekt1/ usw haben alle ein (eigenes) default document (default.aspx bzw index.html, wie auch immer, das lässt sich separat konfigurieren). Aaaber ... (siehe unten ;) )

Naja ich will in dem Fall ja einen Slash hinzufügen. Wenn ich das aber tu (http://sebnilsson.com/c985a7fd/iis-url-rewrite-rules-skipping-files-types/) krieg ich nen 500 internal Server Error. :=

Aber danke schonmal für euren Input! :)

Diesen Beitrag teilen


Link zum Beitrag
Auf anderen Seiten teilen

weiß jetzt ned, inwieweit du dich mit apache schon beschäftigt hast aber ans herz legen würde ich dir den server auf jedenfall!

zumal es recht einfach ist V -Hosts einzurichten;

ausserdem maschiert die kiste bzw. der server.

bleib ned nur auf dem gacki IIS hängen, wenns vorteile gegenüber der performance & ausgabenseite geben tut ;)

Diesen Beitrag teilen


Link zum Beitrag
Auf anderen Seiten teilen

Captain Awesome

weiß jetzt ned, inwieweit du dich mit apache schon beschäftigt hast aber ans herz legen würde ich dir den server auf jedenfall!

zumal es recht einfach ist V -Hosts einzurichten;

ausserdem maschiert die kiste bzw. der server.

bleib ned nur auf dem gacki IIS hängen, wenns vorteile gegenüber der performance & ausgabenseite geben tut ;)

Naja, nachdem das alles .NET Applikationen sind, und ich die tatsächlich mit 2-3 Klicks wunderbar deployen kann und (fast ^^) alles perfekt funktioniert, möchte ich eigentlich nicht alles umkrempeln. Müsst sich doch lösen lassen ... :(

Diesen Beitrag teilen


Link zum Beitrag
Auf anderen Seiten teilen

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung jetzt entfernen

  Only 75 emoji are allowed.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Lädt...


  • Folge uns auf Facebook

  • Partnerlinks

  • Unsere Sponsoren und Partnerseiten

  • Wer ist Online

    • Keine registrierten Benutzer online.