パスワードを忘れた? アカウント作成
この議論は賞味期限が切れたので、アーカイブ化されています。 新たにコメントを付けることはできません。

ApacheでURLのクエリ文字列によりアクセス制限」記事へのコメント

  • 動けばそれでいいとも言えますが、環境変数をセットするだけに mod_rewrite 使うのは、ドライバーがあるのにスイスアーミーナイフを持ち出してるみたいですね。

    SetEnvIf [apache.jp]を使えば、

    SetEnvIf Request_URI "action=edit" EDIT=True

    みたいな感じで書けるんじゃないでしょうか。
    もちろん、アクセス制御のところはそのままで。

    • SetEnvIfのRequest_URIには?以降は含まれないようです。
      /index.php?action=edit にマッチするのは
      "action=edit" ではなくむしろ "^/index.php$" です。

      LocationMatch における正規表現文字列とのマッチングでも
      その対象は?の前、つまりパス部分(RFC3986のabs_path)だけのようです。

      --
      屍体メモ [windy.cx]
      • あ、そうなんですか。どうも、失礼いたしました。

        そんなこと、マニュアルに書いてないじゃんと思って、英語の方で確認したら、

        the portion of the URL following the scheme and host portion without the query string.

        に続けて、query string にマッチさせたかったら mod_rewrite を使えと書いてありますね。
        やっぱりスイスアーミーナイフが必要なんだ。

        #Apache の和訳も最近滞っているみたいだなぁ。

        親コメント

日々是ハック也 -- あるハードコアバイナリアン

処理中...