Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Ein IIS UrlRewrite Middleware-Fehler verhinderte, dass die Abfragezeichenfolge in Neuschreibregeln beibehalten wird. Dieser Fehler wurde behoben, um die Konsistenz mit dem Verhalten des IIS UrlRewrite-Moduls aufrechtzuerhalten.
Zur Diskussion siehe dotnet/aspnetcore#22972.
Eingeführte Version
ASP.NET Core 5.0
Altes Verhalten
Beachten Sie die folgende Neuschreibregel:
<rule name="MyRule" stopProcessing="true">
<match url="^about" />
<action type="Redirect" url="/contact" redirectType="Temporary" appendQueryString="true" />
</rule>
Die vorstehende Regel fügt die Abfragezeichenfolge nicht an. Ein URI wie /about?id=1
leitet zu /contact
weiter, anstatt zu /contact?id=1
. Das Attribut appendQueryString
ist standardmäßig auf true
festgelegt.
Neues Verhalten
Die Abfragezeichenfolge wird beibehalten. Der URI aus dem Beispiel im alten Verhalten lautet /contact?id=1
.
Grund für Änderung
Das alte Verhalten stimmte nicht mit dem Verhalten des IIS-UrlRewrite-Moduls überein. Um die Portierung zwischen Middleware und Modul zu unterstützen, besteht das Ziel darin, konsistente Verhaltensweisen aufrechtzuerhalten.
Empfohlene Aktion
Wenn das Verhalten des Entfernens der Abfragezeichenfolge bevorzugt wird, legen Sie das action
Element auf appendQueryString="false"
.