回答編集履歴
1
コメントを受けての追記
answer
CHANGED
@@ -20,9 +20,30 @@
|
|
20
20
|
```Apache
|
21
21
|
RewriteEngine On
|
22
22
|
RewriteCond %{REQUEST_URI} !.
|
23
|
+
#RewriteCond %{REQUEST_URI}.html -f ・・・・・この行間違い
|
23
|
-
RewriteCond %{
|
24
|
+
RewriteCond %{REQUEST_FILENAME}.html -f
|
24
25
|
RewriteRule .* %{REQUEST_URI}.html [L]
|
25
26
|
```
|
26
27
|
4つ目のような、ディレクトリ部分にのみドットがある場合にも`.html`を付ける場合は、
|
27
28
|
2行目の`!.`を引用されているような`!.[^/.]+$`にします。
|
28
|
-
(2つ目の`\`は不要なので`!.[^/.]+$`でいいです)
|
29
|
+
(2つ目の`\`は不要なので`!.[^/.]+$`でいいです)
|
30
|
+
|
31
|
+
#追記
|
32
|
+
すいません。まず前回の付け足し部分に間違いがありましたので訂正しておきます。
|
33
|
+
`REQUEST_URI`→`REQUEST_FILENAME`
|
34
|
+
|
35
|
+
最初の質問と違いますね。
|
36
|
+
というか、最初の質問が書き足りてなかったのか。今後の質問では、最初からちゃんと全部書いてください。
|
37
|
+
|
38
|
+
http://example.com/dir に.htmlを付加するだけでなく http://example.com/dir/ に対して末尾の/を取って.htmlを付加するのであれば、
|
39
|
+
```Apache
|
40
|
+
RewriteEngine On
|
41
|
+
RewriteBase /
|
42
|
+
RewriteCond %{REQUEST_URI} !.
|
43
|
+
RewriteCond %{REQUEST_FILENAME}.html -f
|
44
|
+
RewriteRule .* %{REQUEST_URI}.html [L]
|
45
|
+
RewriteCond %{REQUEST_URI} !.
|
46
|
+
RewriteCond %{REQUEST_FILENAME}../$1.html -f
|
47
|
+
RewriteRule (.*)/$ $1.html [L]
|
48
|
+
```
|
49
|
+
で、どうでしょうか。
|