【Apache】mod_rewriteについて語るスレ (686レス)
上下前次1-新
131: 2005/05/10(火)18:19 ID:GC3gP9kT(1) AAS
>>130
ありがとうございます。やはり駄目みたいですね。
mod_proxyかませるしかないか・・・
132(1): 2005/06/02(木)00:10 ID:7p4TKpYJ(1/2) AAS
DirectoryIndex hoge.php
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([0-9A-Za-z]+)/([0-9A-Za-z)]+)\.html$ hoge.php?var1=$1&var2=$2 [L]
------------------------------------------------------------------------------
...../test1/test2.html という仮想アドレスにアクセスしてきた
ユーザに対して、hoge.php?var1=test1&var2=test2
の結果を返したいので、上記のように.htaccessに書きましたが、
..../test2/test2.htmlにアクセスするとページがありませんエラーに
省4
133(1): 2005/06/02(木)06:47 ID:??? AAS
([0-9A-Za-z)]+
134: 132 2005/06/02(木)20:34 ID:7p4TKpYJ(2/2) AAS
Apache/1.3.33 Server
ですが、どうもうまくうごきません。
>>133
ありがとうございます。
そのようにやってみましたが、ダメみたいです。
さくらというレンタル鯖は
同じサイトでも2つのアドレスがあります。
一つは独自ドメイン。
もう一つは http://○○.sakura.ne.jp/というアドレスです。
こういうことも関係してエラーになるんだろうか・・・
135(1): 2005/07/05(火)01:22 ID:netfphaS(1) AAS
通常の使い方とは逆に、
search.cgi?dir=hoge&file=foo
のようなパラメータ付きのURLを
/hoge/foo/
のように書き換えたいんですが、これではうまくいきません。
省3
136(1): 2005/07/05(火)23:37 ID:??? AAS
ルールの左右逆じゃね?
137: 135 2005/07/06(水)01:13 ID:??? AAS
>>136
はい、通常のmod_rewrite利用法とは逆の書き換えを
実現したいんです。
/hoge/foo/ を search.cgi?dir=hoge&file=foo みたいな
書き換えはきちんと動作するサーバ環境です。
気長にお待ちしております。
138(1): 2005/07/15(金)10:24 ID:yoPQBliE(1) AAS
外部リンク:hogehoge
↓
外部リンク:hogehoge
に書き換えたいのですが、?に正規表現設定をマッチさせることができません。
ご教授願います。
139: 2005/07/16(土)10:25 ID:??? AAS
>>138
\?じゃないの?
140(1): 2005/08/05(金)23:22 ID:euh07aXu(1) AAS
こんばんは。ドメイン直下のディレクトリをキーに検索結果を
表示する書き換えを行いました。
RewriteRule ^([^/]+)/$ /search.cgi?key=$1 [L]
/hoge/ でアクセスすると search.cgi?key=hoge を返します。
続いて /hoge のようにディレクトリにスラッシュがない場合に、
スラッシュを補完しようと思って、以下のように書き換えると
無限ループを起こします。
RewriteRule ^([^/]+)$ /$1/ [R=301,L]
省1
141: 2005/08/25(木)01:01 ID:??? AAS
>>140
Apache はデフォルトで / 無しのリクエストに対して 301 を返し / を補完させるようになっている。
不要。
142: [ ] 2005/08/25(木)09:50 ID:??? AAS
例えば
http://***.com/~test/index.php?id=10
というURLを
http://***.com/~test/10.html
と言う風にするには
RewriteEngine on
RewriteRule ^/~test/([0-9A-Za-z)]+)\.html$ /~test/index.php?id=$1 [L]
省3
143(5): 2005/08/25(木)15:27 ID:??? AAS
すみません、mod_rewrite で以下のような変換は可能でしょうか?
/a/1/b/2/c/3/d/4/e/5.html
↓
/index.php?a=1&b=2&c=3&d=4&e=5
パラメータ数は、可変にしたいのですが・・・
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]
上下前次1-新書関写板覧索設栞歴
あと 536 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.011s