IIS7 URLRewrite en un sitio PHP

Tengo un sitio PHP que funciona en IIS7 y necesito agregar un poco de reescritura de la URL, pero hasta ahora parece ignorar mi regla. Aquí está la regla:

<rewrite> <rules> <rule name="VCard" stopProcessing="true"> <match url="\?user=(.*)$" /> <action type="Rewrite" url="http://www.otherserver.com/vcard.aspx?user={R:1}" networkingirectType="Permanent" appendQueryString="false" logRewrittenUrl="true" /> </rule> </rules> </rewrite> 

Al usar la interfaz de usuario para probar mi regex, dice que http://www.myserver.com/?user=123456 coincide con la regla, y que R: 1 es "123456". Pero cuando trato de acceder a la url real que no parece funcionar.

El logging no parece demasiado útil:

 2010-10-26 14:22:07 XXX.XXX.XXX.XXX GET / user=12345 80 - XXX.XXX.XXX.XXX Mozilla/5.0 (Windows;+U;+Windows+NT+6.1;+en-US)+AppleWebKit/534.10 (KHTML,+like+Gecko)+Chrome/8.0.552.11+Safari/534.10 200 0 0 187 

Como he mencionado anteriormente, el sitio en sí está en PHP (que estoy less familiarizado con el alojamiento en IIS). ¿Podría estar impidiendo que el module de reescritura se ejecute? ¿Me falta un paso crítico en alguna parte?

El url coincide sólo con la URL antes de la cadena de consulta, como folder / vcard.aspx.

Es probablemente una condición para {QUERY_STRING} que necesitas en su lugar. Set. * Para la url si quieres capturar todo. Sólo tenga cuidado de no ejecutar en un bucle para esa consulta.

Esto puede ser útil: http://weblogs.asp.net/owscott/archive/2010/04/20/url-parts-available-to-url-rewrite-rules.aspx

No debería importar que sea PHP. La networkingirección se produce antes de que procese PHP.