回答編集履歴

1

追記: RewriteCond で対処する方法

2017/05/17 05:30

投稿

TaichiYanagiya
TaichiYanagiya

スコア12146

test CHANGED
@@ -3,3 +3,27 @@
3
3
  .htaccess の場合、[L] (Last)フラグであっても、書き換え後のパスに対して再度先頭のルールから処理されます。
4
4
 
5
5
  Apache httpd 2.4 ならば [END] が利用できます。
6
+
7
+
8
+
9
+ ---
10
+
11
+ **(2017/05/17 14:30) 追記**
12
+
13
+ Apache httpd 2.2 なのでしょうか?
14
+
15
+ 以下のように、「REQUEST_URI が /sub/ で始まっていなければ」という条件を付けるのはどうでしょうか。
16
+
17
+ ```
18
+
19
+ RewriteCond %{HTTP_HOST} ^([^.]+)\.domain\.com$ [NC]
20
+
21
+ RewriteCond %{DOCUMENT_ROOT}/sub/%1 -d
22
+
23
+ RewriteCond %{REQUEST_URI} !^/sub/
24
+
25
+ RewriteRule ^(.*)$ sub/%1/$1 [L]
26
+
27
+ ```
28
+
29
+