【Apache】mod_rewriteについて語るスレ (686レス)
上下前次1-新
144: 2005/08/27(土)18:47 ID:??? AAS
>>143
mod_rewriteじゃ難しいかもね。
145(1): 2005/08/28(日)11:49 ID:??? AAS
>>143
これでどうよ。
俺のローカルでは動いたが。
RewriteEngine On
RewriteRule ^a/([0-9]+)/b/([0-9]+)/c/([0-9]+)/d/([0-9]+)/e/([0-9]+)\.html$
/index.php?a=$1&b=$2&c=$3&d=$4&e=$5 [L]
ちなみに、改行するなよ。
無保証でヨロ。
146(1): 2005/08/28(日)12:31 ID:??? AAS
>>145
あんたいい奴だな。けど143の質問ちゃんと読んでないよ。
ある程度パラメータ数の上限を決めて、個数ごとに145みたいなRewriteRuleを
書くしかないと思う。>>143
147(1): 2005/08/28(日)13:36 ID:??? AAS
RewriteRule ^(([a-z]/[0-9]/?)*)\.html$ /index.php/$1 [L]
とやってPHP側で $_SERVER['PATH_INFO'] を分解するくらいしか・・・
148: 2005/08/28(日)14:25 ID:??? AAS
不定個数のパラメータ名をインクリメントしていくのを
mod_rewrite の正規表現だけでやれと言われると確かに厳しい
mod_perl で PerlTransHandler あたりをフックしてちゃちゃっと書き換えるなら割と楽にできる
149(1): 2005/08/28(日)16:29 ID:??? AAS
>>143 です。
いろいろレス感謝です。
パラメータの a、b、c・・・ は固定ではなく、他の文字に変わることが
あります。例えば、page、target などです。
>>146
やはりそれしかないでしょうか。
mod_rewrite でループ処理のような形でどうにか出来れば
いいかなと思ったのですが。
とりあえず、こんな感じのを沢山書こうとしています。
RewriteRule ^(.*)/(.*)/(.*)/(.*)\.html$ index.php?$1=$2&$3=$4 [L]
省1
150(2): 147 2005/08/28(日)17:47 ID:??? AAS
>>149
そういや[N]があったな、忘れてた
RewriteRule ^([a-z0-9]+)/([a-z0-9]+)\.html index.php?$1=$2 [L,NC,QSA]
RewriteRule ^([a-z0-9]+)/([a-z0-9]+)/(.+)\.html $3.html?$1=$2 [N,NC,QSA]
151: 2005/08/28(日)19:23 ID:??? AAS
RewriteMap 使えば?
152(1): 2005/08/29(月)21:53 ID:??? AAS
RewriteCond で OR な条件を指定する際に
RewriteCond %{HTTP_HOST} ^(apple|grape|orange)\.example\.com$
とするのと
RewriteCond %{HTTP_HOST} ^apple\.example\.com$ [OR]
RewriteCond %{HTTP_HOST} ^grape\.example\.com$ [OR]
RewriteCond %{HTTP_HOST} ^orange\.example\.com$
とする場合で、一般論としてどちらが高速でしょうか?
153: 2005/09/19(月)04:05 ID:??? AAS
>>152
正規表現を1回評価するのと3回評価するのとでは明らかに1回の方が早いので前者
154(1): 2005/09/27(火)17:41 ID:??? AAS
RewriteRule ^(.*)$ /tmp/hoge.cgi [L]
としたときに、robots.txtなどのいくつかのファイルはスキップさせたいのですが
どのようにすれば良いのでしょうか?
155: 2005/09/30(金)19:04 ID:??? AAS
.htaccessスレから移動してきました。
質問があります。
URLエンコードを行って日本語等が%XYの形式になったURLを含んでいるとき、
RewriteRule ^([0-9A-Za-z%]+)$ test.php?keyword=$1
などとしても404エラーになってしまいます。(日本語がないときは通常通りです。)
ルールの記述が間違っているのでしょうか。
エラーにならない方法をご存知でしょうか。お願いします。
156: 2005/09/30(金)20:40 ID:??? AAS
>154
まずマニュアルを読んで、それから細かいところを質問する姿勢を見せる。
157(1): 2006/01/15(日)15:53 ID:0othuuG9(1) AAS
XREAでは
RewriteRule ^(.*)\.html$ test.cgi?$1
でうまくいったのに、自分のサーバーでは漢字とひらがながリライトできない。
記述の問題じゃないかも。
158: 2006/01/15(日)16:02 ID:??? AAS
文字コードでしょ
159: 157 2006/01/16(月)01:32 ID:??? AAS
かも
まあ、Apache1.3から2にしたら、何の問題もなくリライトするようになったのでよしとする
160: 2006/01/20(金)03:14 ID:??? AAS
ちょっと質問です。
なぜか"."(ドット)を使うと404になるのですが、回避する方法はないものでしょうか?
こっちだと動かないんだけど、
外部リンク[sex]:shinehage.com → 外部リンク[cgi]:shinehage.com
こっちだと動く
外部リンク:shinehage.com → 外部リンク[cgi]:shinehage.com
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([0-9A-Za-z]+\.[0-9A-Za-z]+)$ index.cgi?$1 [L]
省3
161: 2006/01/20(金)12:45 ID:??? AAS
ログ見るのがはやいんじゃ?
162: 2006/01/31(火)13:32 ID:??? AAS
mod_rewriteとpath_infoってどっちの方がいいのかな?
163(1): 2006/03/08(水)21:55 ID:F0LiHM5T(1) AAS
RewriteEngine on
RewriteBase /hogehoge
RewriteRule ^hoge/([^/]+)/$ ho.php?user=$1 [L]
とした場合、/hoge/username/?page=2 といった感じで引数userのほかに引数pageを読み込ませるにはどうしたらいいのでしょうか?
上下前次1-新書関写板覧索設栞歴
あと 523 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.008s