@demos_x3m

Почему не работает rewrite IIS?

Есть сайт, расположенный по адресу http://localhost:9999/dir1/dir2/
В этой директории лежит index.php, в который нужно перенаправлять все запросы, такие как http://localhost:9999/dir1/dir2/schedule и другие подобные адреса, которые соответственно начинаются с dir1/dir2/
Сервер работает на IIS Express, как должен выглядеть web.config, чтобы всё это работало?
Выдаёт 404-ю ошибку по такому адресу http://localhost:9999/dir1/dir2/schedule, но адресу
http://localhost:9999/dir1/dir2/ всё отрабатывает нормально.
Доступ у меня имеется лишь по SSH-туннелю, поэтому никак менять настройки сервера вообще не могу, к сожалению..

<?xml version="1.0" encoding="utf-8"?>
<configuration>
    <configSections>
          <sectionGroup name="system.webServer">
               <sectionGroup name="rewrite">
                    <section name="rewriteMaps" overrideModeDefault="Allow" />
                    <section name="rules" overrideModeDefault="Allow" />
               </sectionGroup>
         </sectionGroup>
    </configSections>
  <system.webServer>
      <rewrite>
        <rules>
          <rule name="Rewrite to index.php" stopProcessing="true">
            <match url="^.*$" />
            <conditions logicalGrouping="MatchAll">
              <add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" />
              <add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" />
            </conditions>
            <action type="Rewrite" url="/dir1/dir2/index.php" />
          </rule>
        </rules>
      </rewrite>
  </system.webServer>
  <system.web>
    <customErrors mode="Off"/>
    <pages>
      <base href="/dir1/dir2/" />
    </pages>
  </system.web>
</configuration>


Уже всяко-разно пробовал и без base href, и с ним, но без префикса /dir1/dir2/ в <action type="Rewrite">
, в чем может быть проблема?
  • Вопрос задан
  • 118 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы