回答編集履歴
1
内容の改善。
test
CHANGED
@@ -14,128 +14,86 @@
|
|
14
14
|
|
15
15
|
|
16
16
|
|
17
|
-
###そこで
|
17
|
+
###そこで以下の2点を見直しました。
|
18
18
|
|
19
|
-
|
19
|
+
(1)実行ユーザーは誰か?
|
20
|
+
|
21
|
+
(2)(1)で確認したユーザーは適切な権限を持っているか?
|
22
|
+
|
23
|
+
###なぜこの2点だと考えたか
|
24
|
+
|
25
|
+
apacheを起動するのはrootだが、ブラウザからのアクセスに対応しているのは実行ユーザという者らしいと知り、実行ユーザが適切な権限を持って、レスポンスに必要なファイルおよびディレクトリにアクセスできる必要があると考えたから。(正直、正確な理解はできてないです。http://honana.com/apache/apache_22/userとhttps://qiita.com/100/items/ab31e57fcc66ac661d5cを参考にしました。)
|
26
|
+
|
27
|
+
###(1)について
|
28
|
+
|
29
|
+
(/usr/local/apache2/conf/httpd.conf)でhttpd.confファイルの以下を確認。
|
30
|
+
|
31
|
+
```ここに言語を入力
|
32
|
+
|
33
|
+
User daemon
|
34
|
+
|
35
|
+
Group daemon
|
36
|
+
|
37
|
+
```
|
38
|
+
|
39
|
+
###(2)について
|
40
|
+
|
41
|
+
**/home/vagrant/anaconda3/envs/gaia**の各ディレクトリの権限を確認。各ディレクトリの上のディレクトリでls -laを使うことで、確認しました。
|
20
42
|
|
21
43
|
```ここに言語を入力
|
22
44
|
|
23
45
|
drwxr-xr-x. 3 root root 21 5月 13 2020 home
|
24
46
|
|
47
|
+
drwx------. 8 vagrant vagrant 258 9月 17 14:08 vagrant
|
48
|
+
|
49
|
+
drwxrwxr-x. 28 vagrant vagrant 4096 9月 15 12:11 anaconda3
|
50
|
+
|
51
|
+
drwxrwxr-x. 3 vagrant vagrant 46 9月 15 12:17 envs
|
52
|
+
|
53
|
+
drwxrwxr-x. 11 vagrant vagrant 173 9月 15 12:17 gaia
|
54
|
+
|
25
55
|
```
|
26
56
|
|
27
|
-
|
57
|
+
vagrantのディレクトリにアクセス権限がないことが問題のように思えました。
|
28
58
|
|
29
|
-
見方は
|
59
|
+
(アクセス権限の見方はhttps://qiita.com/shizen-shin/items/453e408f78483d391930を参考にしました。)
|
30
60
|
|
61
|
+
そこで、chmod o+r vagrantとchmod o+x vagrantを使って、権限を与えました。
|
62
|
+
|
31
|
-
|
63
|
+
コマンドの詳細はhttps://qiita.com/ntkgcj/items/6450e25c5564ccaa1b95を参考にしました。
|
64
|
+
|
65
|
+
その後、homeでls -laとすると、
|
32
66
|
|
33
67
|
```ここに言語を入力
|
34
68
|
|
35
|
-
drwxr
|
69
|
+
drwx---r-x. 8 vagrant vagrant 258 9月 17 14:08 vagrant
|
36
|
-
|
37
|
-
drwxrwxr-x. 28 vagrant vagrant 4096 9月 15 12:11 anaconda3
|
38
|
-
|
39
|
-
drwxrwxr-x. 2 vagrant vagrant 12288 9月 15 12:10 bin
|
40
|
-
|
41
|
-
drwxrwxr-x. 11 vagrant vagrant 173 9月 15 12:17 gaia
|
42
|
-
|
43
|
-
|
44
70
|
|
45
71
|
```
|
46
72
|
|
47
|
-
|
73
|
+
となっており、権限が確認されました。
|
48
74
|
|
49
|
-
###
|
75
|
+
###再起動して実際にアクセスすると、出力が返ってきました。
|
50
76
|
|
51
|
-
(1)今のユーザー
|
52
|
-
|
53
|
-
(2)今のユーザーが属するグループ
|
54
|
-
|
55
|
-
(3)apacheのhttpd.confに設定されているユーザーおよびグループ
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
(1)はwho(https://eng-entrance.com/linux-user-showを参考)
|
60
|
-
|
61
|
-
(2)はcat /etc/passwdおよび cat /etc/group(https://eng-entrance.com/linux-user-showとhttps://kazmax.zpp.jp/linux_beginner/etc_group.htmlを参考)
|
62
|
-
|
63
|
-
(3)はhttpd.confファイルの中
|
64
|
-
|
65
|
-
|
77
|
+
再起動。
|
66
|
-
|
67
|
-
(1)の結果
|
68
78
|
|
69
79
|
```ここに言語を入力
|
70
80
|
|
71
|
-
|
81
|
+
systemctl restart apache2
|
72
82
|
|
73
83
|
```
|
74
84
|
|
75
|
-
|
85
|
+
リクエスト
|
76
86
|
|
77
|
-
```ここに言語を入力
|
87
|
+
```ここに言語を入力
|
78
88
|
|
79
|
-
|
89
|
+
curl localhost:81/myapp/
|
80
90
|
|
81
91
|
```
|
82
92
|
|
83
|
-
cat /etc/groupについて(vagrantの列を抜粋)
|
84
|
-
|
85
|
-
|
93
|
+
出力
|
86
|
-
|
87
|
-
vagrant:x:1000:vagrant
|
88
94
|
|
89
95
|
```
|
90
96
|
|
91
|
-
(3) もともと両方daemonになっていたので、(1)(2)の結果を受けて以下のように設定しなおしました。
|
92
|
-
|
93
|
-
```ここに言語を入力
|
94
|
-
|
95
|
-
<IfModule unixd_module>
|
96
|
-
|
97
|
-
#
|
98
|
-
|
99
|
-
# If you wish httpd to run as a different user or group, you must run
|
100
|
-
|
101
|
-
# httpd as root initially and it will switch.
|
102
|
-
|
103
|
-
#
|
104
|
-
|
105
|
-
# User/Group: The name (or #number) of the user/group to run httpd as.
|
106
|
-
|
107
|
-
# It is usually good practice to create a dedicated user and group for
|
108
|
-
|
109
|
-
# running httpd, as with most system services.
|
110
|
-
|
111
|
-
#
|
112
|
-
|
113
|
-
User vagrant
|
114
|
-
|
115
|
-
|
97
|
+
Hello World!
|
116
|
-
|
117
|
-
|
118
|
-
|
119
|
-
</IfModule>
|
120
98
|
|
121
99
|
```
|
122
|
-
|
123
|
-
|
124
|
-
|
125
|
-
これらからvagrantがapacheを動かすことになるのだろうと考え、つぎはpythonのパスに対してvagrantに権限与えることを考えました。
|
126
|
-
|
127
|
-
|
128
|
-
|
129
|
-
そこで、問題はhomeのグループ名にあると考えて、それをvagrantに変更しました。
|
130
|
-
|
131
|
-
コマンドは、**chown root:vagrant home**を使いました。(https://webkaru.net/linux/chown-command/を参考しました。)
|
132
|
-
|
133
|
-
その後、もう一度、/でls -laというコマンドを使って所有者とグループ名、およびその権限を確認しました。すると、
|
134
|
-
|
135
|
-
```ここに言語を入力
|
136
|
-
|
137
|
-
drwxr-xr-x. 3 root vagrant 21 5月 13 2020 home
|
138
|
-
|
139
|
-
```
|
140
|
-
|
141
|
-
のようにグループが変更されていることが確認できました。
|