Смущенный IIS web.config переписывание URL для довольно постоянных ссылок в WordPress - PullRequest
0 голосов
/ 08 февраля 2019

У меня совершенно новая установка WP 5 в Windows Server 2016, IIS, PHP 7.3.1 Первое, что я сделал, это установил довольно постоянные ссылки, , которые сработали мгновенно , я имею в виду, что эта ссылка работала:

https://www.template01.com/blog/hello-world/

Я знаю, к этому моменту мне нужно двигаться, но случайно я прочитал о том, что постоянные ссылки WP требуют переписывания URL-адресов в Apache или IIS.Поэтому я проверил, установлен ли у меня IIS Url модуль перезаписи, и обнаружил, что нет.Соответственно, никаких следов web.config, сгенерированных WP, когда я изменил настройки на довольно постоянные ссылки.

Итак, я установил модуль перезаписи IIS (почему?), Вернул WP permalink обратно в некрасивое состояние, затем снова установил довольно,и альт: файл web.config был отправлен в подпапку моего блога (см. кодовый фрагмент ниже)

Вопрос

Был ли модуль перезаписи URL идействительно ли необходим перезапись web.config? Или WP 5 имеет свой собственный механизм постоянных ссылок, полностью независимый от внешних возможностей перезаписи URL?Я даже не знаю, как использовать это правило перезаписи URL web.config, оно кажется слишком общим для преобразования чего-то вроде

https://www.template01.com/blog/?p=1 в https://www.template01.com/blog/hello-world/

Файл web.config, созданный wp для виртуального каталога блога:

<rewrite>
  <rules>
        <rule name="WordPress: https://www.template01.com/blog" patternSyntax="Wildcard">
            <match url="*"/>
                <conditions>
                    <add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true"/>
                    <add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true"/>
                </conditions>
            <action type="Rewrite" url="index.php"/>
        </rule></rules>
</rewrite>
...