Предотвратить перезапись IIS7 от добавления «index.php» к пути при перенаправлении? - PullRequest
0 голосов
/ 08 мая 2009

Я пытаюсь настроить переписать правила для Wordpress MU 2.7 на IIS7 с PHP5 (fastcgi).

На данный момент у меня есть только следующее правило перезаписи в Web.config:

         <rule name="Canonical Host Name" stopProcessing="true">
             <match url="(.*)" />
             <conditions logicalGrouping="MatchAll">
                 <add input="{HTTP_HOST}" negate="true"
                      pattern="^subdomain\.example\.com$" />
             </conditions>
             <action type="Redirect"
                     url="http://subdomain.example.com/{R:1}"
                     redirectType="Permanent" />
         </rule>

В тот момент, когда я ввожу URL (см. Ниже), он перенаправляет на правильное имя хоста, но по какой-то причине добавляет путь к index.php/:

url: `http://subdomain/my/path/123`
redirects to: `http://subdomain.example.com/index.php/my/path/123`
should redirect to: `http://subdomain.example.com/my/path/123`

Кто-нибудь имеет представление, почему это так и как я могу предотвратить это?

Мне не хватает определенной настройки сервера или чего-то ...? php.ini? правило web.config? Или это просто мое правило переписывания, которое не так?

Редактировать: Эта проблема, похоже, не имеет ничего общего со структурой постоянных ссылок Wordpress! Поведение такое же, если я удаляю перенаправление index.php. Я не думаю, что какой-либо код PHP работает ... это должно быть на более высоком уровне.

Ответы [ 2 ]

1 голос
/ 08 мая 2009

Wordpress, по умолчанию (я думаю), форматирует дружественные постоянные ссылки как index.php / path / to / post, так как это имитирует перезапись, не требуя от сервера поддержки перезаписи. Это объясняет, почему ваши перезаписи таковы - в них есть index.php перед перезаписью.

0 голосов
/ 08 мая 2009

Вы можете предотвратить это, изменив параметр Постоянная ссылка в конфигурации WordPress.

...