私の問題(Regular Expression For URL Query)に似た質問が見つかりましたが、解決するために問題を解決できませんでした。URL書き換えの正規表現
HTACCESSの正規表現に問題があります。
だから私は私のウェブサイトを持っていることである。
ROOT:
/sites/index.phpおよびその他のファイル
(私のウェブルートは、サブフォルダ内のサイト」です)/サイト/サイト/ sample_folder_name/
は今、私がやりたいものをURLをリライトすることです:
/サイト/サイト/ sample_folder_name/file_name.php
へ:
/サイト/ file_name.phpsiteredirect = sample_folder_name
覚えている:? をURLはいずれも含まれている場合リクエストパラメータの場合は、次のように書き直す必要があります。
例:
/サイト/サイト/ sample_folder_name/file_name.php CAT_ID = 1 &ユーザ= 2
に:?
/サイト/ file_name.php = 1 &ユーザ= 2 &をCAT_ID siteredirect = sample_folder_name
パラメータは、userおよびcat_idの代わりに不明であると想定されています。それはどんなパラメータでもあり得る。 .phpの後ろに書かれているものは、URLにも記述する必要があります。
手段:?
/サイト/サイト/ sample_folder_name/file_name.php if_any_parameters
その後:?
/サイト/ file_name.php if_any_parameters & siteredirect = sample_folder_name
それ以外の場合:
/サイト/ file_name.php?siteredirect = sample_folder_name
現在、書き換えは素晴らしい取り組んでいるが、私は彼らがパラメータで動作させることができないのです。私は今、私のhtaccessファイルを持っている何
:この後
RewriteRule ^sites\/([0-9A-Za-z_]+)\/([0-9A-Za-z_]+)\.php(.*)$ $2.php(?(?=$3)$3&)siteredirect=$1 [L]
RewriteRule ^sites\/([0-9A-Za-z_]+)\/$ index.php?siteredirect=$1 [L]
、それは私に404
を与えている場合は、私はそれが間違ってやっている...助けてください!
RewriteRule ^sites(/sites/[^/]+)/([^/]+)$ $1?siteredirect=$2 [QSA]
多くはである何、あなたのルールを反転:あなたはQSA
フラグ(クエリ文字列追加)必要