質問編集履歴

2

実アドレスを記載したので修正

2019/06/16 00:43

投稿

old_dog
old_dog

スコア51

test CHANGED
File without changes
test CHANGED
@@ -46,7 +46,7 @@
46
46
 
47
47
  C:***>laravelapp> php artisan serve --host 19*.16.1*.1**
48
48
 
49
- Laravel development server started:<http://192.168.10.106:8000>
49
+ Laravel development server started:<http://19*.16*.1*.1**:8000>
50
50
 
51
51
  ```
52
52
 

1

質問内容を整理しなおしました。

2019/06/16 00:43

投稿

old_dog
old_dog

スコア51

test CHANGED
@@ -1 +1 @@
1
- xamppからlaravelのプロジェクトにssl認証発行したい
1
+ Laraverlで作成したサイトにスマホでアクセスし、スマホの位置情報取得したい
test CHANGED
@@ -1,105 +1,143 @@
1
- ### 前提
1
+ ##問題
2
2
 
3
- 現在laravelgoogle.mapを表示するサイトを試作しています。スマホでサイトインするとgoogle.mapが表示されません。原因は保護された通信ない、ということらしいです。そこで、laravelで作成したページ(google.map埋め込まれてる)にSSL認証を与と考えています。
3
+ スマホでローカル環境自作している位置情報表示サイトにアクセスして位置情報を取得ない(geolocation使)
4
4
 
5
5
 
6
6
 
7
- スマホでのサイトインは、IPアドレス:8000で行ってます。
7
+ ##実現したこと
8
8
 
9
- ```
10
-
11
- php artisan serve --host ***.***.*.*
9
+ ローカル環境で自作している位置情報サイトを、スマホでアクセスできるようにし、かつSSL通信にして、位置情報を取得したい。
12
-
13
- // *はIPアドレス
14
10
 
15
11
 
16
12
 
13
+ ##コード
14
+
15
+ ローカルでxamppを使ってます。
16
+
17
+
18
+
17
- Laravel development server started:<http://***.***.*.*:8000
19
+ C:\xampp\htdocs\laravelapp\resources\views\alert_location.blade.php
20
+
21
+ ```javascript
22
+
23
+ <script>
24
+
25
+ navigator.geolocation.getCurrentPosition(function(position){
26
+
27
+ latitude = position.coords.latitude;
28
+
29
+ alert(latitude);
30
+
31
+ });
32
+
33
+ </script>
18
34
 
19
35
  ```
20
36
 
21
37
 
22
38
 
23
-
24
-
25
- ### 発生している問題・エラーメッセージ
26
-
27
- こちら様を参考にしています。
28
-
29
- [リンク内容](https://www.keycoxs.com/entry/2018/03/29/161052)
30
-
31
- https://www.keycoxs.com/entry/2018/03/29/161052
39
+ 'localhost:8000/'(127.0.0.1)でアクセスすると、PCでは位置情報は取得でき、スマホでは接続できません。
32
40
 
33
41
 
34
42
 
43
+ このファイルに、スマートホンでアクセスするために、アドレスを以下に変更します。
44
+
45
+ ```command
46
+
47
+ C:***>laravelapp> php artisan serve --host 19*.16.1*.1**
48
+
49
+ Laravel development server started:<http://192.168.10.106:8000>
50
+
51
+ ```
52
+
53
+
54
+
55
+ ブラウザで、`19*.16*.1*.1**:8000/alert_location`にアクセスすると、サイトは表示されますが、位置情報は取得できません。スマホでも同様です。
56
+
57
+
58
+
59
+ geolocation.getCurrentPosition()は、SSL通信でないと使えないということなので、`19*.16*.1*.1**:8000/alert_location`でのアクセスが、SLL通信になるようにすればいいのかな、と考えているのですが、良い方法が見当たりません。
60
+
61
+
62
+
63
+ ##一応、試してみたこと
64
+
65
+ PCのブラウザで、'https://laravelapp'でアクセスできるようにしてみました。
66
+
67
+ [リンク内容](https://www.keycoxs.com/entry/2018/03/29/161052) https://www.keycoxs.com/entry/2018/03/29/161052
68
+
69
+ を参考にさせていただきました。ありがとうございます。
70
+
71
+
72
+
35
- 2.httpd-ssl.confの編集
73
+ - C:\xampp\php\php.ini
74
+
75
+ extension = php opensell.dll //有効化
76
+
77
+  
78
+
79
+ - C:\xampp\apache\conf\extra\httpd-ssl.conf
80
+
81
+ 末尾に以下を追加
36
82
 
37
83
  ```
38
84
 
39
85
  <VirtualHost *:443>
40
86
 
41
- ServerName sample
87
+ ServerName laravelapp
42
88
 
43
- DocumentRoot "C:/xampp/htdocs/"
89
+ DocumentRoot "C:/xampp/htdocs/laravelapp/public"
44
90
 
45
-   // DocumentRoot "C/xampp/htdocs/laravelapp/resouces/view
91
+ SSLEngine on
46
92
 
47
- SSLEngine on
93
+ SSLCertificateFile "conf/ssl.crt/laravelapp.crt"
48
94
 
49
- SSLCertificateFile "conf/ssl.crt/server.crt"
50
-
51
- SSLCertificateKeyFile "conf/ssl.key/server.key"
95
+ SSLCertificateKeyFile "conf/ssl.key/laravelapp.key"
52
96
 
53
97
  </VirtualHost>
54
-
55
- ```
56
-
57
- 2.hostsファイルの編集
58
-
59
- ```
60
-
61
- 127.0.0.1 sample
62
-
63
- ```
64
-
65
-
66
-
67
- ##実現したいこと
68
-
69
- VirtualHostの DocumentRootの設定を、laravelで作成しているViewディレクトリに設定してSSL通信したい。
70
-
71
-
72
-
73
- DocumentRootを、viewディレクトリの絶対パスを指定すると、ディレクトリの内容が表示されるだけで、laravelは起動しません。
74
-
75
- DocumentRootに、"C:/xampp/htdocs/"を指定すると、以下のエラーが発生してxamppのapacheが停止します。
76
-
77
-
78
-
79
- エラー
80
-
81
- ```
82
-
83
- 7:21:14 [Apache] Error: Apache shutdown unexpectedly.
84
-
85
- 7:21:14 [Apache] This may be due to a blocked port, missing dependencies,
86
-
87
- 7:21:14 [Apache] improper privileges, a crash, or a shutdown by another method.
88
-
89
- 7:21:14 [Apache] Press the Logs button to view error logs and check
90
-
91
- 7:21:14 [Apache] the Windows Event Viewer for more clues
92
-
93
- 7:21:14 [Apache] If you need more help, copy and post this
94
-
95
- 7:21:14 [Apache] entire log window on the forums
96
98
 
97
99
 
98
100
 
99
101
  ```
100
102
 
101
- DocumentRootの指定の仕方が分かりません。
103
+ - C:\Windows\System32\drivers\etc\hosts
102
104
 
103
- laravelのViewSSL通信を指定する方法をご教授ください。
105
+ 以下を末尾追加
104
106
 
107
+ `19*.16*.1*.1** laravelapp
108
+
109
+
110
+
111
+  
112
+
113
+
114
+
115
+ - C\xampp\apache\conf\opnessl-san.cnf
116
+
117
+
118
+
119
+ ```
120
+
121
+ [ SAN ]
122
+
123
+ subjectAltName = @alt_names
124
+
125
+
126
+
127
+ [ alt_names ]
128
+
129
+ DNS.1 = laravelapp
130
+
131
+ ```
132
+
105
- よろしくお願いしま
133
+ 以上を行、証明書を発行しました
134
+
135
+
136
+
137
+ ##結果
138
+
139
+ PCからは`https://laravelapp/alert_location`で目的とするサイトに接続し、位置情報を取得できましたが、スマホからアクセスすると、「IPアドレスが見つかりませんでした」とエラーになり、接続拒否されます。
140
+
141
+
142
+
143
+ どうやったら、ローカルで作成しているサイトに、スマホでアクセスして、位置情報を取得できるようになるのでしょうか?ご教授お願いします。