teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

3

訂正: httpd-2\.4 で、\[L\] フラグでループする。

2017/06/02 04:40

投稿

TaichiYanagiya
TaichiYanagiya

スコア12218

answer CHANGED
@@ -10,6 +10,7 @@
10
10
 
11
11
  ループさせないよう、`[END]` フラグを使っています。
12
12
  Apache httpd-2.4 の場合、`[L]` フラグでもループを判定して 2回目で終了してくれるようです。
13
+ →(2017/06/02) 訂正:ループするようです。
13
14
 
14
15
  Apache httpd-2.2 の .htaccess の場合、`[END]` フラグが使えません。
15
16
  `[L]` フラグでも、書き換え後のパスに対して再度先頭のルールから処理され、ループしてしまいます。

2

誤記修正

2017/06/02 04:40

投稿

TaichiYanagiya
TaichiYanagiya

スコア12218

answer CHANGED
@@ -31,5 +31,5 @@
31
31
  「http://sub.example.jp/123 → http://example.jp/data?mode=sub&id=123」とのこと、RewriteRule に以下のように「&id=$1」を追加すればいいと思います。
32
32
 
33
33
  ```
34
- RewriteRule ^(.*)$ /data.cgi?mode=%1&id=$1 [END]
34
+ RewriteRule ^(.*)$ /data?mode=%1&id=$1 [END]
35
35
  ```

1

追記

2017/06/02 03:16

投稿

TaichiYanagiya
TaichiYanagiya

スコア12218

answer CHANGED
@@ -23,4 +23,13 @@
23
23
  RewriteRule ^(.*)$ http://example.jp/data?mode=%1 [L,P]
24
24
  ```
25
25
 
26
- ところで、**http://sub.example.jp/** のトップページは良いとして、その下のパスの扱いはどうしたいのでしょうか?
26
+ ところで、**http://sub.example.jp/** のトップページは良いとして、その下のパスの扱いはどうしたいのでしょうか?
27
+
28
+ ---
29
+ **(2017/06/02 01:05) 追記**
30
+
31
+ 「http://sub.example.jp/123 → http://example.jp/data?mode=sub&id=123」とのこと、RewriteRule に以下のように「&id=$1」を追加すればいいと思います。
32
+
33
+ ```
34
+ RewriteRule ^(.*)$ /data.cgi?mode=%1&id=$1 [END]
35
+ ```