質問編集履歴

5

文章の改善

2021/09/16 06:52

投稿

ASAPBYAF
ASAPBYAF

スコア2

test CHANGED
File without changes
test CHANGED
@@ -1,8 +1,8 @@
1
- #現在、apacheとmod_wsgiの連携をして、ブラウザからアクセスした際に、pythonのファイルを実行して返すことを実装したいと考えています。フレームワークは使用していません。
1
+ #apacheとmod_wsgiの連携をして、ブラウザからアクセスした際に、pythonのファイルを実行して返すサーバーを実装したいす。フレームワークは使用していません。
2
2
 
3
3
  apacheは2.4.48でmod_wsgiは4.9.0のバージョンを使っています。
4
4
 
5
- #これでにapacheのHostとVirtualHostそれぞれにアクセスし、htmlのファイルを返すこと確認しました。
5
+ #まずmod_wsgiを使わず、apacheのHostとVirtualHostそれぞれにアクセスし、htmlのファイルを返すこと確認しました。
6
6
 
7
7
  具体的には、curl localhost:80,curl localhost:81を入力して、設定したindex.htmlが表示されました。
8
8
 
@@ -16,7 +16,7 @@
16
16
 
17
17
 
18
18
 
19
- #このような状況の下で、以下のような4つの設定をしました。
19
+ #このような環境の下で、以下のような4つの設定をしました。
20
20
 
21
21
  ###(1)WSGIScriptAliasの設定(/usr/local/apache2/conf/extra/httpd-vhosts.conf)
22
22
 

4

内容の追加

2021/09/16 06:52

投稿

ASAPBYAF
ASAPBYAF

スコア2

test CHANGED
@@ -1 +1 @@
1
- Load Module wsgi_modulesとWSGIScriptAlias設定方法
1
+ Load Module wsgi_modulesとWSGIScriptAlias設定すると動かなくなる。
test CHANGED
@@ -1,4 +1,4 @@
1
- #現在、apacheとmod_wsgiの連携をしたいと考えています。
1
+ #現在、apacheとmod_wsgiの連携をして、ブラウザからアクセスし際に、pythonのファイルを実行して返すことを実装したいと考えています。フレームワークは使用していません。
2
2
 
3
3
  apacheは2.4.48でmod_wsgiは4.9.0のバージョンを使っています。
4
4
 

3

書式の改善。

2021/09/16 06:49

投稿

ASAPBYAF
ASAPBYAF

スコア2

test CHANGED
File without changes
test CHANGED
@@ -1,4 +1,4 @@
1
- ###現在、apacheとmod_wsgiの連携をしたいと考えています。
1
+ #現在、apacheとmod_wsgiの連携をしたいと考えています。
2
2
 
3
3
  apacheは2.4.48でmod_wsgiは4.9.0のバージョンを使っています。
4
4
 

2

書式の改善。

2021/09/16 06:46

投稿

ASAPBYAF
ASAPBYAF

スコア2

test CHANGED
File without changes
test CHANGED
@@ -1,18 +1,14 @@
1
- ![イメージ説明](4899d2f5a3867c2a46fa8f1251e78260.png)
2
-
3
- ![イメージ説明](5bb1264696b64e7f522c107fc1ec0c68.png)
4
-
5
1
  ###現在、apacheとmod_wsgiの連携をしたいと考えています。
6
2
 
7
3
  apacheは2.4.48でmod_wsgiは4.9.0のバージョンを使っています。
8
4
 
9
- ###これまでにapacheのHostとVirtualHostそれぞれにアクセスし、htmlのファイルを返すこと確認しました。h3
5
+ #これまでにapacheのHostとVirtualHostそれぞれにアクセスし、htmlのファイルを返すこと確認しました。
10
6
 
11
7
  具体的には、curl localhost:80,curl localhost:81を入力して、設定したindex.htmlが表示されました。
12
8
 
13
9
 
14
10
 
15
- ###次の段階として、mod_wsgiを連携させたいと考えています。
11
+ #次の段階として、mod_wsgiを連携させたいと考えています。
16
12
 
17
13
  mod_wsgiは、ソースコードからダウンロードanaconda4.10.1において仮想環境を構築し、その仮想環境の中にpipを使ってインストールしました。
18
14
 
@@ -20,23 +16,109 @@
20
16
 
21
17
 
22
18
 
23
- ###このような状況の下で、写真にあるような設定をしました。
19
+ #このような状況の下で、以下のような4つの設定をしました。
24
20
 
25
- 1枚目写真はhttpd.conf、2枚目の写真はhttpd-vhosts.confの内容です。
21
+ ###(1)WSGIScriptAlias設定(/usr/local/apache2/conf/extra/httpd-vhosts.conf)
26
22
 
27
- httpd.conf側Load moduleの設定、httpd-vhosts.conf側にWSGIScriptAlias指定しています。
23
+ ```ここ言語入力
28
24
 
29
- httpd.confのディレクトリは/usr/local/apache2/conf/httpd.conf
25
+ Listen 81
30
26
 
31
- httpd-vhosts.confのディレクトリは/usr/local/apache2/conf/extra/httpd-vhosts.conf
27
+ <VirtualHost *:81>
32
28
 
33
- となっています。
34
-
35
- Load moduleで設定しているディレクトリはmod_wsgi-express module-configによって確認したものを使っています。
29
+ ServerName wsgiapp.example.com
36
30
 
37
31
 
38
32
 
33
+ DocumentRoot "/usr/local/vhosts"
34
+
35
+ <Directory "/usr/local/vhosts">
36
+
37
+ AllowOverride All
38
+
39
+ Require all granted
40
+
41
+ </Directory>
42
+
43
+
44
+
45
+ Alias /vhalias "/usr/local/vhalias"
46
+
47
+ <Directory "/usr/local/vhalias">
48
+
49
+ AllowOverride All
50
+
51
+ Require all granted
52
+
53
+ </Directory>
54
+
55
+
56
+
57
+ WSGIScriptAlias /myapp "/usr/local/www/myapp.wsgi"
58
+
59
+ <Directory "/usr/local/www">
60
+
61
+ AllowOverride All
62
+
63
+ Require all granted
64
+
65
+ </Directory>
66
+
67
+
68
+
69
+ </VirtualHost>
70
+
71
+ ```
72
+
73
+ ###(2)Load moduleの設定(/usr/local/apache2/conf/httpd.conf)
74
+
75
+ ```
76
+
77
+ LoadModule wsgi_module /home/vagrant/anaconda3/envs/gaia/lib/python3.9/site-packages/mod_wsgi/server/mod_wsgi-py39.cpython-39-x86_64-linux-gnu.so
78
+
79
+ ```
80
+
81
+ このディレクトリはmod_wsgi-express module-configによって確認したものを使っています。
82
+
83
+ ###(3)Include conf/extra/httpd-vhosts.confはコメントアウトを解除(/usr/local/apache2/conf/httpd.conf)
84
+
85
+ ```ここに言語を入力
86
+
87
+ # Virtual hosts
88
+
89
+ Include conf/extra/httpd-vhosts.conf
90
+
91
+ ```
92
+
93
+ ###(4)myapp.wsgiの設定(/usr/local/www/myapp.wsgi)
94
+
95
+ ```ここに言語を入力
96
+
97
+ def application(environ, start_response):
98
+
99
+ status = '200 OK'
100
+
101
+ output = b'Hello World!'
102
+
103
+
104
+
105
+ response_headers = [('Content-type', 'text/plain'),
106
+
107
+ ('Content-Length', str(len(output)))]
108
+
109
+ start_response(status, response_headers)
110
+
111
+
112
+
113
+ return [output]
114
+
115
+ ```
116
+
117
+
118
+
119
+
120
+
39
- ###このように設定し、apacheを再起動すると、curl localhost:80,curl localhost:81と打っても何も反応がないです。エラーが発生するわけでもないです。
121
+ #このように設定し、apacheを再起動すると、curl localhost:80,curl localhost:81,curl localhost:81/myappと打っても何も反応がないです。エラーが発生するわけでもないです。
40
122
 
41
123
 
42
124
 
@@ -46,10 +128,8 @@
46
128
 
47
129
  (2)httpd.confとhttpd-vhosts.conf側の両方にLoad moduleの設定、httpd-vhosts.conf側にWSGIScriptAlias
48
130
 
49
- (3)WSGIScriptAliasの実行パスをmyapp.pyまで書く。
50
-
51
131
  のどの場合も同じように動作しないことがわかっています。
52
132
 
53
133
 
54
134
 
55
- ###設定方法のわかる方がいらっしゃれば教えていただければと思います。よろしくお願いします。
135
+ #設定方法のわかる方がいらっしゃれば教えていただければと思います。よろしくお願いします。

1

書式の改善。内容の追加。

2021/09/16 06:46

投稿

ASAPBYAF
ASAPBYAF

スコア2

test CHANGED
File without changes
test CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  ![イメージ説明](5bb1264696b64e7f522c107fc1ec0c68.png)
4
4
 
5
- ###現在、apacheとmod_wsgiの連携をしたいと考えています。h3
5
+ ###現在、apacheとmod_wsgiの連携をしたいと考えています。
6
6
 
7
7
  apacheは2.4.48でmod_wsgiは4.9.0のバージョンを使っています。
8
8
 
@@ -12,7 +12,7 @@
12
12
 
13
13
 
14
14
 
15
- ###次の段階として、mod_wsgiを連携させたいと考えています。h3
15
+ ###次の段階として、mod_wsgiを連携させたいと考えています。
16
16
 
17
17
  mod_wsgiは、ソースコードからダウンロードanaconda4.10.1において仮想環境を構築し、その仮想環境の中にpipを使ってインストールしました。
18
18
 
@@ -20,7 +20,7 @@
20
20
 
21
21
 
22
22
 
23
- ###このような状況の下で、写真にあるような設定をしました。h3
23
+ ###このような状況の下で、写真にあるような設定をしました。
24
24
 
25
25
  1枚目の写真はhttpd.conf、2枚目の写真はhttpd-vhosts.confの内容です。
26
26
 
@@ -36,7 +36,7 @@
36
36
 
37
37
 
38
38
 
39
- ###このように設定し、apacheを再起動すると、curl localhost:80,curl localhost:81と打っても何も反応がないです。エラーが発生するわけでもないです。h3
39
+ ###このように設定し、apacheを再起動すると、curl localhost:80,curl localhost:81と打っても何も反応がないです。エラーが発生するわけでもないです。
40
40
 
41
41
 
42
42
 
@@ -46,8 +46,10 @@
46
46
 
47
47
  (2)httpd.confとhttpd-vhosts.conf側の両方にLoad moduleの設定、httpd-vhosts.conf側にWSGIScriptAlias
48
48
 
49
+ (3)WSGIScriptAliasの実行パスをmyapp.pyまで書く。
50
+
49
- という二つも同じように動作しないことがわかっています。
51
+ のどの場合も同じように動作しないことがわかっています。
50
52
 
51
53
 
52
54
 
53
- ###設定方法のわかる方がいらっしゃれば教えていただければと思います。よろしくお願いします。h3
55
+ ###設定方法のわかる方がいらっしゃれば教えていただければと思います。よろしくお願いします。