Pregunta

Nuestro servidor Admin ha configurado una "Encuadernación del sitio" en IIS para un sitio web en el servidor, de modo que cuando un usuario final usa una URL específica, se redirige a nuestro sitio.

Necesito poder determinar cuándo se ha realizado una de estas redirecciones, y luego aterriza al usuario final en una página específica en el sitio web.

¿Puede alguien ayudar?

¿Fue útil?

Solución

Su pregunta dice que los usuarios se están redirigiendo a su sitio, pero eso no es realmente cómo funcionan los enlaces del sitio IIS.Son más como alias para un solo sitio.Si ese es el caso, y el sitio tiene múltiples enlaces y desea redirigir según la conexión a la que se usó la unión, entonces sí, usaría una regla de reescritura en la sección web.config System.WebServer, como SO:

    <rewrite>
        <rules>
            <clear />
            <rule name="redirect" stopProcessing="true">
                <match url="(.*)" />
                <conditions logicalGrouping="MatchAll" trackAllCaptures="false">
                    <add input="{SERVER_NAME}" pattern="www.binding1.com" />
                </conditions>
                <action type="Redirect" url="http://www.binding2.com/pages/binding1home" />
            </rule>
        </rules>
    </rewrite>

Otros consejos

Puede encontrar el nombre de unión en Solicit .ServerVariables en: "http_host" o "server_name".Si tiene acceso a las variables del servidor?Si es así, podría redirigir a una página específica si se encuentra el nombre de enlace especificado.(ver: msdn )

Dependiendo de cómo se configura la redirecta, podría intentar usar la propiedad URLREFERRERRER de la solicitud actual:

Request.UrlReferrer

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top