0

PHP5 (fastcgi) を使用して IIS7 で Wordpress MU 2.7 の書き換えルールを構成しようとしています。

現時点では、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 のパーマリンク構造とは何の関係もないようです! redirect を削除しても、動作は同じですindex.php。PHPコードが実行されているとは思いません...これはより高いレベルにある必要があります。

4

2 に答える 2

1

Wordpress は、デフォルトで (私が思うに)、使いやすいパーマリンクを index.php/path/to/post としてフォーマットします。これは、サーバーが書き換えをサポートする必要なく書き換えを模倣するためです。それはあなたの書き直しがそのようである理由を説明するでしょう - それらは書き直される前に index.php を持っています。

于 2009-05-08T16:25:12.533 に答える
0

WordPress設定でパーマリンク構造オプションを変更することで、これを防ぐことができます.

于 2009-05-08T19:15:19.300 に答える