Правила перезаписи URL в IIS 7 не применяются - PullRequest
6 голосов
/ 09 ноября 2010

У меня есть веб-приложение .net 4.0, размещенное на сервере IIS7.

После прочтения: http://learn.iis.net/page.aspx/496/iis-url-rewriting-and-aspnet-routing/ об отправке статического содержимого с другого сервера, чтобы файлы cookie не отправлялись при каждом запросе.для статического файла я попробовал его, но без особого успеха.

Эта часть записана в файле web.config:

<system.webServer>
    <rewrite>
        <rules>
            <rule name="images" stopProcessing="true">
                <match url="^images/(.*)$" />
                <action type="Rewrite" url="http://static-server.com/images/{R:1}" appendQueryString="true" logRewrittenUrl="true" />
            </rule>
        </rules>
    </rewrite>
</system.webServer>

С этим правилом определена каждая ссылка нафайл в папке с изображениями следует переписать в URL-адрес статического сервера.Но это не работает вообще, теперь каждое изображение, которое находится в папке изображений, возвращает 404 не найденных.Любая идея о том, что может быть причиной такого поведения или другое решение о том, как обслуживать файлы из определенной папки с другого сервера без необходимости проходить через тонны кода и изменять все ссылки для ссылки на статический сервер?

Я также попытался использовать тип действия «Перенаправить» вместо действия «Перезаписать», что на самом деле сработало, но это не соответствует причине, по которой я пытаюсь обслуживать файлы на другом сервере (таким образом отправляется запросна мой сервер динамического содержимого со всеми необходимыми файлами cookie и перенаправляется на статический сервер, что на самом деле хуже, чем передача изображений с сервера динамического содержимого).

1 Ответ

2 голосов
/ 09 ноября 2010

Я не думаю, что одно только правило решит эту проблему для вас. Вероятно, он не переписывает ссылки на страницах, которые отправляются пользователям.

В статье, на которую вы ссылаетесь, предлагается делать это «вместе с модулем маршрутизации запросов приложений IIS ». Это модуль маршрутизации, который фактически изменяет ссылки в файлах, отправляемых клиенту.

...