Переписать URL, возвращающий "нельзя использовать ведущий .. для выхода из верхнего каталога" - PullRequest
0 голосов
/ 05 апреля 2019

Мой сайт работал нормально, пока я не добавил правило перезаписи, чтобы удалить подпапку из URL, чтобы исходное значение https://example.com/folder/page было просто https://example.com/page. Мой файл действительно находится в папке / / расположение страницы ... Я просто не хочу, чтобы / folder / отображался в URL-адресе для конечного пользователя. После этого я получил следующую ошибку:

Невозможно использовать ведущий .. для выхода из верхнего каталога. Описание: Произошло необработанное исключение.

Сведения об исключении: System.Web.HttpException: невозможно использовать ведущий .. выйти из верхней директории.

Правила перезаписи моего URL:

<rule name="Remove Folder" enabled="true" stopProcessing="true">
    <match url="^folder$|^folder/(.*)$" />
    <conditions>
    </conditions>
    <action type="Redirect" url="{R:1}" />
</rule>
<rule name="RewriteToFile" stopProcessing="true">
    <match url="^(?!/folder)(.*)$" />
    <conditions>
        <add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" />
        <add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" />
    </conditions>
    <action type="Rewrite" url="folder/{R:1}" />
</rule>

Кроме того, это правило заставляет каждую другую страницу, кроме домашней, возвращать ошибку 404.

Кроме того, если это имеет значение, этот сайт работает на Sitecore, поэтому папки и файлы не являются действительными папками или файлами. Это предметы Sitecore.

Кто-нибудь знает, что теперь может вызывать у меня ошибки?

...