Ich benutze ColdFusion 10 und IIS 7.5 und versuchen, ein benutzerdefiniertes Routing für mein Projekt zu erstellen, die Abfrage Zeichenfolge vermeidet.Coldfusion - Vermeiden Sie IIS 404.0 Fehler für bestimmte Dateien und führen Sie stattdessen manuelle Routing
Zum Beispiel die folgende URL:
www.myTestWebsite.com/subfolder1/subfolder2/
sollte von einer router.cfm Datei geben werden, die in dem Stammordner vorhanden ist und dann Basierend auf der Zeichenfolge nach der Domain der Website (in diesem Fall/Unterordner1/Unterordner2 /) wird Coldfusion entscheiden, was und wie angezeigt werden soll.
Ich schaffte, alles außer einer Sache zu arbeiten. Wenn index.cfm (oder .html oder eine Standarddatei) nicht im Ordner/subordner1/subordner2/vorhanden ist, wird in IIS der Fehler 404.0 angezeigt. Wenn Sie jedoch die Ordnerstruktur erstellen und dort eine leere Datei index.cfm hinzufügen, funktioniert das Routing wie erwartet, wobei Sie diese leere index.cfm ignorieren und entsprechend der von mir implementierten Logik weiterarbeiten.
Gibt es eine Möglichkeit (über CF-Administrator, IIS, htaccess oder andere), um zu vermeiden, zu überprüfen, ob diese Datei existiert und eine 404.0 zu werfen, und mir stattdessen erlaubt, das über meine Route.cfm zu behandeln?
Hinweis: Dies erfordert, dass die IIS-URL (https Rewrite-Erweiterung installiert werden: // (http://www.iis.net/downloads/microsoft/url-rewrite). Verwenden der URL Rewrite-Funktion ist wahrscheinlich der einfachste Weg, um dieses Problem zu lösen. –
So funktioniert das. Der Schlüssel ist URL Rewrite Erweiterung. –