0

FastCGIを使用してPHP5.3およびIIS5.1で機能するクエリ文字列パラメーターを使用して「クリーンな」PathInfoスタイルのURLを取得しようとしています。私は私が使用できることを発見しました:

1http://www.example.com/index.php?/path/to/foo/

だがしかし:

2http://www.example.com/index.php/path/to/foo/(欠落していることに注意してください

URLを次のようなクエリ文字列と混合するまでは、これは大きな問題ではありません。

3http://www.example.com/index.php?/path/to/foo/?color=blue&size=small

これにより、$_GETは次のようになります。

Array
(
    [/myapp/foo/bar?colour] => blue
    [size] => small
)

以下の(4)のようなURLスキームを機能させ、IIS5.1で$_GETが正しく入力されるようにする方法はありますか?

4http://www.example.com/index.php/path/to/foo/?color=blue&size=small

PS-以前はこれができたのを覚えていますが、当時はIISではなくApacheを使用していたと思います。これにApacheを使用できません。ただし、運用サーバーにはIIS7があります(マシンにはIIS 5.1しかありません)。

4

1 に答える 1

0

(3) の場合、クエリ文字列を 1 つのテキストとして扱うだけです。使用しないでください。代わりに、環境変数を直接$_GET使用する必要があります。QUERY_STRINGを取得する必要があります/path/to/foo/?color=blue&size=small

(4) については、PATH_INFOQUERY_STRING環境変数を連結し、 で結合して?、その値を使用する必要があります。繰り返しますが、取得する必要があります/path/to/foo/?color=blue&size=small。これはPATH_INFOhas/path/to/fooQUERY_STRINGhasのためcolor=blue&size=smallです。

于 2010-01-11T15:46:37.190 に答える