2

事があります:

.htaccessにこのURL書き換え条件があります:

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([-A-Za-z0-9]+)/([A-Za-z0-9\-_]+) app.php?pattern=$1&content=$2 [L]

次に、このURLで完全に機能します。例: www.mysite.com/pony/mycontent

しかし、私がそのようないくつかのHttp GETパラメーターを追加しようとすると: www.mysite.com/pony/mycontent?moreparameter=true

var_dump($ _ GET)は私を返します:

array (size=2)
  'pattern' => string 'pony' (length=4)
  'content' => string 'mycontent' (length=8)

そして、これ以上の値はありません..

他のパラメータを取得する方法は?

4

1 に答える 1

2

「クエリ文字列の追加」フラグ(QSA)をRewriteRuleに追加してみてください-

RewriteRule ^([-A-Za-z0-9]+)... app.php?pattern=$1&content=$2 [QSA,L]

QSA | qsappend-置換URIにクエリ文字列が含まれている場合、RewriteRuleのデフォルトの動作では、既存のクエリ文字列を破棄し、新しく生成されたものに置き換えます。[QSA]フラグを使用すると、クエリ文字列が結合されます。

詳細はこちら

于 2013-01-22T11:20:39.807 に答える