IIS7 以降では、 URL 書き換えモジュールを使用して Apache .htaccess ルールをインポートできることがわかりました。
- Microsoft Web Platform Installerを介してURL Rewrite モジュールをインストールします。
- IIS マネージャーを起動し、左側の [接続] ウィンドウで、必要なサイト (既定の Web サイトなど) を選択します。
- 中央 (Features View) でURL Rewriteをダブルクリックします。
- 右側のパネルで [ルールのインポート... ] をクリックし、ルールを .htaccess ファイルから[ルールの書き換え]ボックスに貼り付けます。
- 右側の列で [適用] をクリックします。
上記の特定の質問では、次の .htaccess リダイレクト ルール
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule ^(.*)$ $1.php [NC,L]
次の web.config ファイルを生成します。
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<system.webServer>
<rewrite>
<rules>
<rule name="Imported Rule 1" stopProcessing="true">
<match url="^(.*)$" />
<conditions logicalGrouping="MatchAll">
<add input="{REQUEST_FILENAME}" matchType="IsFile" ignoreCase="false" negate="true" />
<add input="{REQUEST_FILENAME}.php" matchType="IsFile" ignoreCase="false" />
</conditions>
<action type="Rewrite" url="{R:1}.php" />
</rule>
</rules>
</rewrite>
</system.webServer>
</configuration>