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

回答編集履歴

4

追記

2019/12/12 04:16

投稿

Y.H.
Y.H.

スコア7918

answer CHANGED
@@ -1,3 +1,25 @@
1
+ 解決済みのところ蛇足ですが追記しておきます
2
+
3
+ http2 (port 80のhttp)は単にリダイレクトするだけのhttpdサーバーとなっているためリソースの無駄が多いので、停止してしまってもいい気がします。
4
+
5
+ - http2停止
6
+ - http1で、http(port 80)とhttps(port 443)両方を受けるようにする。
7
+ - http1のconfでhttpの場合httpsへリダイレクトする。
8
+
9
+ ```
10
+ LoadModule rewrite_module modules/mod_rewrite.so
11
+ # 略
12
+ LISTEN 80
13
+ LISTEN 443
14
+ # 略
15
+ RewriteEngine On
16
+ RewriteCond %{HTTPS} off
17
+ RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
18
+ # 略
19
+ ```
20
+
21
+ ----
22
+
1
23
  http2のconfで`mod_rewrite`は`LoadModule`されてますか?コメントになってたりしないでしょうか?
2
24
  rewrite必須の場合は`<ifModule mod_rewrite.c>`は不要です。
3
25
  ※というか書いちゃダメです。書いてしまうと`LoadModule`されてない場合単に無視して起動できてしまいエラーにならずに設定ミスなどの発見が遅れます。

3

回答修正:まだつじつまの合わない箇所が有ったので修正

2019/12/12 04:16

投稿

Y.H.
Y.H.

スコア7918

answer CHANGED
@@ -10,7 +10,7 @@
10
10
 
11
11
  http1はポート443のみをLISTEN
12
12
  http2はポート80のみをLISTEN
13
- としているのであれば、http1で`%{HTTPS}`を検査する必要はありません。(httpのアクセスは来ないので)
13
+ としているのであれば、`%{HTTPS}`を検査する必要はありません。(httpのアクセスは来ないので)
14
14
 
15
15
  http2のconf
16
16
  ```htaccess

2

回答修正

2019/12/12 03:49

投稿

Y.H.
Y.H.

スコア7918

answer CHANGED
@@ -1,4 +1,4 @@
1
- `mod_rewrite`は`LoadModule`されてますか?コメントになってたりしないでしょうか?
1
+ http2のconfで`mod_rewrite`は`LoadModule`されてますか?コメントになってたりしないでしょうか?
2
2
  rewrite必須の場合は`<ifModule mod_rewrite.c>`は不要です。
3
3
  ※というか書いちゃダメです。書いてしまうと`LoadModule`されてない場合単に無視して起動できてしまいエラーにならずに設定ミスなどの発見が遅れます。
4
4
 
@@ -8,11 +8,11 @@
8
8
  LoadModule rewrite_module modules/mod_rewrite.so
9
9
  ```
10
10
 
11
- http1はポート80のみをLISTEN
12
- http2はポート443のみをLISTEN
11
+ http1はポート443のみをLISTEN
12
+ http2はポート80のみをLISTEN
13
13
  としているのであれば、http1で`%{HTTPS}`を検査する必要はありません。(httpのアクセスは来ないので)
14
14
 
15
- http1のconf
15
+ http2のconf
16
16
  ```htaccess
17
17
  #<ifModule mod_rewrite.c>
18
18
  RewriteEngine On

1

誤記修正

2019/12/12 02:56

投稿

Y.H.
Y.H.

スコア7918

answer CHANGED
@@ -8,8 +8,8 @@
8
8
  LoadModule rewrite_module modules/mod_rewrite.so
9
9
  ```
10
10
 
11
- http1はポート80をLISTEN
11
+ http1はポート80のみをLISTEN
12
- http2はポート443をLISTEN
12
+ http2はポート443のみをLISTEN
13
13
  としているのであれば、http1で`%{HTTPS}`を検査する必要はありません。(httpのアクセスは来ないので)
14
14
 
15
15
  http1のconf