• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:htaccessのマッチが失敗します)

htaccessマッチの失敗と修正方法

このQ&Aのポイント
  • htaccessの書き方でマッチが失敗し、全てのリクエストがall.cgiに渡されてしまう問題が発生しています。
  • リクエストURI中に「abc」という文字列が3回以上出現する場合にはabc3.cgiを、1回から2回の場合にはabc12.cgiを動作させるという条件を設定しています。
  • 手直し方法としては、RewriteCondの正規表現パターンを修正し、マッチする条件を適切に指定すれば解決する可能性があります。

質問者が選んだベストアンサー

  • ベストアンサー
  • php504
  • ベストアンサー率42% (926/2160)
回答No.2

それなら ##リクエストURI中に、abcという文字列が3回以上ならabc3.cgiを動作させる RewriteCond %{Request_URI} abc.*abc.*abc [NC] RewriteRule ^(.+)$ abc3.cgi?$1 [L] ##リクエストURI中に、abcという文字列が1回以上(3回未満)ならabc12.cgiを動作させる RewriteCond %{Request_URI} abc [NC] RewriteRule ^(.+)$ abc12.cgi?$1 [L]

ayaka19801201
質問者

お礼

ありがとうございました!! とても助かりました!

その他の回答 (1)

  • php504
  • ベストアンサー率42% (926/2160)
回答No.1

abcで始まってabc.htmlで終わるなら RewriteCond %{Request_URI} "^abc.*abc.*abc\.html$" [NC] かな

ayaka19801201
質問者

お礼

回答いただきありがとうございます!! mukankei_abc_ab_abc_abc_abc_abc_mukankei_.html など様々なテストをしたいのですが、 URL中に挟まれる、abcという文字列の数や、出てくる場所が予測できません。 そこで、abcという文字列の出現回数によって振り分けをしたいのですが、うまくマッチしてくれません。 どうすればいいでしょうかね・・・涙;

関連するQ&A