Ich versuche, IIS Isapi Rewrite zu verwenden, um das Folgende zu tun...
Ich benötige seo-freundliche URLs, die (stillschweigend) in anwendungsfreundliche URLs zurückverwandelt werden, etwa so:
RewriteRule ^/seo-friendly-url/ /test/index.cfm [I,L]
Das ist ganz einfach.
Aber ich brauche auch URLs, die bereits in Suchmaschinen indiziert sind (z.B.), um eine 301-Weiterleitung zur seo-freundlichen Version zu erhalten. Zum Beispiel so:
RewriteRule ^/test/index.cfm /seo-friendly-url/ [I,R=301]
Jedes dieser Elemente funktioniert für sich genommen gut. Aber wenn ich beide in meiner .ini-Datei habe, wird in der Adressleiste meines Browsers /seo-friendly-url/ angezeigt, aber ich erhalte eine 404. (Ja, /test/index.cfm existiert definitiv!)
Ich weiß, dass es wie ein Zirkelbezug aussieht, aber die erste Regel schreibt nur die URL zwischen IIS und der Anwendung um - es gibt keine Umleitung, also treffe ich Isapi Rewrite nicht ein zweites Mal. Oder liege ich da falsch?
Ich habe die Protokollierung bei Isapi Rewrite aktiviert und erhalte folgende Meldung:
HttpFilterProc SF_NOTIFY_PREPROC_HEADERS
DoRewrites
New Url: '/seo-friendly-url/'
ApplyRules (depth=0)
Rule 1 : 1
Result (length 15): /test/index.cfm
ApplyRules (depth=1)
Rule 1 : -1
Rule 2 : 1
Result (length 18): /seo-friendly-url/
ApplyRules: returning 301
ApplyRules: returning 1
Rewrite Url to: '/seo-friendly-url/'
Hat jemand eine Idee?