RewriteCond %{DOCUMENT_ROOT}%{REQUEST_URI} !-f
RewriteCond %{THE_REQUEST} \s/+(\S+)
RewriteRule (.*) index.php?i=%1 [B,L]
は残念ながら行う方法を見つけ出すことはできませんApacheの.htaccessを使用してフラグを「パラメータとしてURLを」疥癬 Openi:
<configuration>
<system.webServer>
<defaultDocument enabled="true">
<files>
<clear/>
<add value="index.php"/>
</files>
</defaultDocument>
<modules runAllManagedModulesForAllRequests="true"/>
<rewrite>
<rules>
<rule name="rule" stopProcessing="true">
<match url="^(.*)$" ignoreCase="false" />
<conditions>
<add input="{REQUEST_FILENAME}" matchType="IsFile" ignoreCase="false" negate="true" />
<add input="{REQUEST_FILENAME}" matchType="IsDirectory" ignoreCase="false" negate="true" />
</conditions>
<action type="Rewrite" url="index.php?i={R:1}" appendQueryString="true" />
</rule>
</rules>
</rewrite>
</system.webServer>
</configuration>
IISのweb.configファイルでも同じことが... web.configファイルがhttp://localhost/dir/web.configの下にあると言う
結果をしますNG http://localhost/dir/とhttp://localhost/dir/example実行は正しくはindex.phpが、アクセスhttp://localhost/dir/i/http://example.orgリターンは500The page cannot be displayed because an internal server error has occurred.
が予想されるエラー:http://localhost/dir/i/http://example.orgは、IISを使用することはできませんようだdir/i/http://example.org
$_GET['i']
値とのindex.phpを実行する必要がありますURL :/
...これにはどのような回避策がありますか?
http://www.htaccesstowebconfig.comのようなツールは、.htaccessを正しく変換しません。ヘルプ/アドバイスは非常に高く評価されます。