Ich benutze den ManagedFusion Url Rewriter und eine benutzerdefinierte 404 Fehlerseite auf meinem Blog.
Der ManagedFusion Url Rewriter erfordert eine Datei namens ManagedFusion.Rewriter.rules, die .htaccess nachahmt. Ich musste ein wenig damit herumspielen, um es richtig zu bekommen, also werde ich hier meinen aktuellen Code teilen:
# Managed Fusion Url Rewriter
# http://managedfusion.com/products/url-rewriter/
#
# Entwickelt von: Nick Berardi
# Support: support@managedfusion.com
#
RewriteEngine on
#
# Regeln hier platzieren
#
# diverse WordPress Umleitungen
RewriteRule ^/wp-login\.php$ /wp-login.php [L]
RewriteRule ^/wp-comments-post\.php$ /wp-comments-post.php [L]
RewriteRule ^/wp-admin/(.*)$ /wp-admin/$1 [L]
# Zugriff für unerwünschte Robots, Site Ripper, Offline-Browser und anderen Schmutz verwehren
RewriteCond %{HTTP_USER_AGENT} ^Anarchie [OR]
RewriteCond %{HTTP_USER_AGENT} ^ASPSeek [OR]
RewriteCond %{HTTP_USER_AGENT} ^attach [OR]
RewriteCond %{HTTP_USER_AGENT} ^autoemailspider [OR]
RewriteCond %{HTTP_USER_AGENT} ^Xaldon\ WebSpider [OR]
RewriteCond %{HTTP_USER_AGENT} ^Xenu [OR]
RewriteCond %{HTTP_USER_AGENT} ^Zeus.*Webster [OR]
RewriteCond %{HTTP_USER_AGENT} ^Zeus
RewriteRule ^.* - [F,L]
# www entfernen
RewriteCond %{HTTP_HOST} ^www\.robboek\.com$ [NC]
RewriteRule ^(.*)$ http://robboek.com$1 [R=301]
# alte URLs umleiten
RewriteRule ^/2008/12/blog-on-hold.html$ /2008/12/12/blog-on-hold/ [R=301]
RewriteRule ^/2008/11/google-chrome-wont-start-in-vista-x64\.html$ /2008/11/16/google-chrome-wont-start-in-vista-x64/ [R=301]
RewriteRule ^/2008/11/pass-community-summit-2008-events.html$ /2008/11/14/pass-community-summit-2008-events-calendar/ [R=301]
RewriteRule ^/2008/11/fort-stevens-camping-trip.html$ /2008/11/14/fort-stevens-camping-trip/ [R=301]
RewriteRule ^/2008/10/first-post.html$ /2008/10/10/first-post/ [R=301]
RewriteRule ^/blog/CommentView,guid,1d8cba50-0814-4c89-86df-eca669973e8e.aspx$ /2006/09/29/junctions-in-windows-vista/ [R=301]
RewriteRule ^/blog/2006/09/29/JunctionsInWindowsVista.aspx$ /2006/09/29/junctions-in-windows-vista/ [R=301]
# Alle nicht existierenden Dateien und Verzeichnisse auf index.php für WordPress umleiten
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ /index.php$1
Die Regeln kümmern sich um die schönen URLs, entfernen das www und leiten mehrere alte URLs von einem früheren Blog um.
Ich habe auch eine Datei "404.php", die ich als meine benutzerdefinierte 404 Fehlerseite eingerichtet habe. Dies wird nicht für die schönen URLs benötigt, erlaubt jedoch die Verwendung der WordPress 404-Seite in benutzerdefinierten Themes. Hier ist der Inhalt:
Ich hoffe, das hilft. Bisher hat es bei mir sehr gut funktioniert.
-Rob
Aktualisierung: Ich habe gerade einen Blog-Artikel über meine Erfahrungen mit der Verwendung von WordPress auf IIS7 veröffentlicht.