5ちゃんねる ★スマホ版★ ■掲示板に戻る■ 全部 1- 最新50  

■ このスレッドは過去ログ倉庫に格納されています

【Apache】mod_rewriteについて語るスレ

1 :nobodyさん:02/06/11 19:29 ID:wH0rV3+D
Apacheのモジュール『mod_rewrite』に関連するスレです。

基本的な内容は↓ページを読むこと。
http://japache.infoscience.co.jp/rewriteguide/
http://japache.infoscience.co.jp/japanese_1_3_6/manual/mod/mod_rewrite.html

それではマターリ逝きましょう。

2 :nobodyさん:02/06/11 19:30 ID:???
今だ! 2ゲットォォォ!
 ̄ ̄ ̄ ̄ ̄∨ ̄ ̄ ̄       (´´
     ∧∧   )      (´⌒(´
  ⊂(゚д゚ つ≡≡≡(´⌒;;;≡≡≡
 (G)       ̄ ̄  (´⌒(´⌒;;


3 :3:02/06/11 20:03 ID:???
3

4 ::02/06/11 22:12 ID:???
mod_rewriteで凝った事やってるとsendmail.cf書いてるような気分にならない?
変換中のURI文字列に空白区切りで状態を保存したりさ。

5 :かおりん祭り ◆KAORinK6 :02/06/11 23:37 ID:???
∋8ノハヽ8∈
  ( ^▽^)___                    −=≡≡≡〜oノハヽo〜
 (つ=つ(   ()−=≡≡新スレおめでとうなのれす−♪    ( ´D`)
  ノ 人ノ  ̄ ̄                      −=≡≡≡__つ
 (___)__)



6 :デフォルトの名無しさん :02/06/12 17:40 ID:???
>4
余計なことし過ぎて、ループに陥ってしまうこともありますが、何か?

Rewriteする時にContent-typeって常に text/html なんだろうか?
textからimageにRewriteすると、text/html のままで image/xxx に変わらん。
環境によっては不味。
回避策あれば、報告キボーヌ。

7 :nobodyさん:02/06/12 23:23 ID:QxWRW/Qr
>>1見たけど、さっぱりわからん。
結局これは何なのか。

8 :nobodyさん:02/06/12 23:44 ID:K447s2+V
RewriteMap + prg使って一定時間内の同時アクセス数制限に使ってる。
計測プログラム側はPerlだけど起動しっぱなしだから早くてイイね。

mod_proxyとの組み合わせが楽しくて好きだな。

9 :nobodyさん:02/06/18 14:58 ID:???
晒し

10 :nobodyさん:02/06/19 01:10 ID:???
htaccessだけの記述で帯域制限とかmax_connectionsとか設定できるようにならんかな。
mod_throttleとかはOSがUnix・Linux系しかダメだし。

11 :nobodyさん:02/06/23 02:28 ID:???
>>10無理だろう。それは、サーバー側のオーバーでかいと思わないか?
「サーバー設定」変えるようなもんだから…

12 :nobodyさん:02/08/22 22:33 ID:???
age

つーか、板の実力を反映したスレだな・・・。

13 :nobodyさん:02/09/23 14:05 ID:YqX96leN
[P] 機能が好き

14 :nobodyさん:02/09/24 16:25 ID:/2P4+h33
mod_rewriteが使えるサーバってどこがあるの?


15 :nobodyさん:02/09/24 17:54 ID:???
糞スリア

16 :nobodyさん:02/09/24 17:59 ID:cTjjUirZ
いちいち問い合わせずにわかんないもんかな

17 :nobodyさん:02/10/02 13:14 ID:6JgGwrqz
CGIが使えるところならsystem('httpd -l')してみるとか

18 :nobodyさん:02/10/07 22:30 ID:bKtEI8Ri
 mod_rewrite について調べていたら、ここを見つけました。
 下記のことをしたいのですが、mod_rewrite でできるでしょうか?

-----------------------
 あるディレクトリ以下を呼び出すと、必ず一つのスクリプトを呼び出し、
特定ディレクトリ以下の、パス情報をパラメータとして取得することはできるでしょうか?

例:
 http://hogehoge.com/test/param1/param2

1.test/ 以下のパス情報は無視されて、hoge.php が呼ばれる。
2.test/ 以下の param1/param2 の情報を hoge.php の中で使用する。

 ちなみに tomcat では web.xml で
<servlet-mapping>
<servlet-name>
HogeHogeServlet
</servlet-name>
<url-pattern>
/test/*
</url-pattern>
</servlet-mapping>

 というような設定をして行っていました。

-----------------------------
 単純に test/* で他の場所にあるスクリプトにとばす方法はわかったのですが、
該当パスの後ろに付加されているパスを、パラメータとして渡すことができるのか
がわかりません。
 とばした先のスクリプトで、元のPATH_INFO?を参照すればいいだけかな?そもそも
参照できるのかな?
 あとで試してみます。でも経験者いたら、教えてください。

19 :nobodyさん:02/10/07 23:20 ID:???
test をディレクトリではなく、
hoge.php を test というファイルにリネームして、
.htaccess か httpd.conf で
<Files test>
SetType application/x-httpd-php
</Files>
と PHP スクリプトとして起動できるように設定しておけば、
mod_rewrite なしで PATH_INFO から情報取得できる。

あるいは、httpd.conf で
Action hoge-handler /somewhere/hoge.php
<Location /test>
SetHandler hoge-handler
</Location>
としてもいいかもしれん。この場合は PATH_TRANSLATED だったかな?

以上、まったく動作確認してないので、ウソ書いてるかもしれん。


20 :hmk:02/10/07 23:28 ID:???
>>18
詳しいことはよく憶えていないので、できるとだけ言っておこう。
確か正規表現を使ったような、、、


21 :nobodyさん:02/10/08 01:39 ID:HuLBTBG+
>>19
 ありがとうございます、試してみます。

>>20
 心強いお言葉、ありがとうございます。

22 :nobodyさん:02/10/08 01:50 ID:NmxcT/YZ
そういえば、また、新しいapacheでたね〜
アップしなきゃ。

23 :nobodyさん:02/10/08 01:50 ID:???
>>20

↓のような会話しておいておめでてーな。

http://pc.2ch.net/test/read.cgi/php/1031721334/n363-365

24 :荒川太郎:02/10/08 10:57 ID:HuLBTBG+
>>21
>>23

 めでたいことにできました。

http://hogehoge.com/redirecttest4/

/home/www/html/pathinfo.php
を呼び出しています。

設定は以下です。
--/usr/local/apache/conf/httpd.conf--

Action hoge-handler /pathinfo.php
<Location /redirecttest4>
SetHandler hoge-handler
</Location>
--

 皆様、ありがとうございました。

25 :hmk:02/10/08 11:43 ID:???
めでたし、めでたし。
正規表現使わなかったですね。失礼しました。

>>23
よく見てるな、暇人め。素人は牛鮭でも食ってろ。

26 :nobodyさん:02/11/07 11:24 ID:5CKaXlWW
すみません、ちょっと教えてください。
Apache2.0.43を使っています。configure時に
--enable-rewrite
で組み込んでも
--enable-rewrite=shard
で組み込んでもうまく動いてくれません。

httpd.confには
RewriteEngine On
RewriteRule ^old\.html$ new.html
と書いてテストしているのですが。

他に記述しなきゃいけないことってなんでしょう?
modules/ の下に mod_rewrite.so がないのが原因でしょうか?

27 :26:02/11/07 11:34 ID:5CKaXlWW
httpd -l
の結果では mod_rewrite.c は表示されます。

Compiled in modules:
core.c
mod_access.c
mod_auth.c
mod_include.c
mod_deflate.c
mod_log_config.c
mod_env.c
mod_setenvif.c
prefork.c
http_core.c
mod_mime.c
mod_status.c
mod_autoindex.c
mod_asis.c
mod_cgi.c
mod_negotiation.c
mod_dir.c
mod_imap.c
mod_actions.c
mod_userdir.c
mod_alias.c
mod_rewrite.c
mod_so.c

28 :nobodyさん:02/11/07 11:46 ID:???
>>26
mod_rewriteはちゃんと組み込まれてる。組み込まれてないのに
.htaccessではなくhttpd.conf に書いたのなら、そもそもエラーが出て
apacheが起動しない。

とりあえず、mod_rewriteに関するドキュメントをもう一度よく読み直せ。
その設定でrewriteされるはずがない。


29 :nobodyさん:02/11/07 11:55 ID:???
RewriteBaseとかも設定を

30 :26:02/11/07 13:00 ID:5CKaXlWW
んー、こういうときに自分の理解力のなさを実感します。。。

http://japache.infoscience.co.jp/japanese_1_3_6/manual/mod/mod_rewrite.html
とかも読んでいるのですが、RewriteBaseって必ず設定が必要なのでしょうか?
少なくとも同じディレクトリに置いてるファイルへのリダイレクトなら不要ですか?

先ほど書き忘れましたが、
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule ^old\.html$ new.html
</IfModule>
のように、 IfModule で囲んではあります。

で、http://www.hoge.com/old.html
にアクセスしてもそのまま表示されちゃいます。。

もう少しだけヒントをください。お願いします。

31 :26:02/11/07 13:46 ID:???
あ、なんかできたっぽいです。
<Directory /home/www/htdocs>
</Directory>
の中に書いてあげたらできました。
まだちゃんと理解してないのでちょっと整理して考えてみます。
28さん、29さんありがとうございました。

32 :山崎渉:03/01/15 13:46 ID:???
(^^)

10 KB
■ このスレッドは過去ログ倉庫に格納されています

★スマホ版★ 掲示板に戻る 全部 前100 次100 最新50

read.cgi ver 05.04.00 2017/10/04 Walang Kapalit ★
FOX ★ DSO(Dynamic Shared Object)