質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.37%
Windows 10

Windows 10は、マイクロソフト社がリリースしたOSです。Modern UIを標準画面にした8.1から、10では再びデスクトップ主体に戻され、UIも変更されています。PCやスマホ、タブレットなど様々なデバイスに幅広く対応していることが特徴です。

Flask

FlaskはPython用のマイクロフレームワークであり、Werkzeug・Jinja 2・good intentionsをベースにしています。

Apache

Apacheは、Apache HTTP Serverの略で、最も人気の高いWebサーバソフトウェアの一つです。安定性が高いオープンソースソフトウェアとして商用サイトから自宅サーバまで、多くのプラットフォーム向けに開発・配布されています。サーバーソフトウェアの不具合(NCSA httpd)を修正するパッチ(a patch)を集積、一つ独立したソフトウェアとして開発されました。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

XAMPP

XAMPP(ザンプ)は、ウェブアプリケーションの実行に必要なフリーソフトウェアをパッケージングしたApacheディストリビューションです。 XAMPPひとつインストールするだけで、Apache、MySQL、PHP、Perlなどのソフトウェアと、 phpMyAdminなどの管理ツール、SQLiteなどのソフトウェアやライブラリモジュールなどを利用することが可能です。

Q&A

解決済

1回答

2913閲覧

apacheで外部モジュールが読み込まれない

gogotowel

総合スコア9

Windows 10

Windows 10は、マイクロソフト社がリリースしたOSです。Modern UIを標準画面にした8.1から、10では再びデスクトップ主体に戻され、UIも変更されています。PCやスマホ、タブレットなど様々なデバイスに幅広く対応していることが特徴です。

Flask

FlaskはPython用のマイクロフレームワークであり、Werkzeug・Jinja 2・good intentionsをベースにしています。

Apache

Apacheは、Apache HTTP Serverの略で、最も人気の高いWebサーバソフトウェアの一つです。安定性が高いオープンソースソフトウェアとして商用サイトから自宅サーバまで、多くのプラットフォーム向けに開発・配布されています。サーバーソフトウェアの不具合(NCSA httpd)を修正するパッチ(a patch)を集積、一つ独立したソフトウェアとして開発されました。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

XAMPP

XAMPP(ザンプ)は、ウェブアプリケーションの実行に必要なフリーソフトウェアをパッケージングしたApacheディストリビューションです。 XAMPPひとつインストールするだけで、Apache、MySQL、PHP、Perlなどのソフトウェアと、 phpMyAdminなどの管理ツール、SQLiteなどのソフトウェアやライブラリモジュールなどを利用することが可能です。

0グッド

0クリップ

投稿2020/08/23 01:07

解決したいこと

apache上でpythonを実行させたいのですが、うまくいきません。
エラーログを見た限り外部モジュールが読み込まれずに実行できないのかな、と思ってググるのですが、そのような情報にたどり着かないため、他の原因なのかな・・・?とも思ってます。

環境

windows10
python3.7 64bit
xampp 7.4.8
mod-wsgi 4.7.1

error.log

1[Sun Aug 23 08:46:51.499330 2020] [cgi:error] [pid 17184:tid 1996] [client ::1:53690] AH01215: from flask import Flask,render_template,request,redirect\r: C:/xampp/htdocs/myapp/main.py, referer: http://localhost/myapp/ 2[Sun Aug 23 08:46:51.499330 2020] [cgi:error] [pid 17184:tid 1996] [client ::1:53690] AH01215: ModuleNotFoundError: No module named 'flask'\r: C:/xampp/htdocs/myapp/main.py, referer: http://localhost/myapp/ 3[Sun Aug 23 08:48:12.552295 2020] [cgi:error] [pid 17184:tid 2000] [client ::1:53710] AH01215: Traceback (most recent call last):\r: C:/xampp/htdocs/myapp/main.py, referer: http://localhost/myapp/

※Hello Worldまではできてます。
参考:https://techacademy.jp/magazine/22048

Apache側の設定

httpd

1#mod_wsgiの読み込み 2LoadFile "C:/Users/user/Anaconda3/python37.dll" 3LoadModule wsgi_module "C:/Users/user/Anaconda3/lib/site-packages/mod_wsgi/server/mod_wsgi.cp37-win_amd64.pyd" 4WSGIPythonHome "C:/Users/user/Anaconda3" 5 6#仮想ホストの設定 7<VirtualHost *:80> 8 DocumentRoot C:\xampp\htdocs 9 ServerName localhost 10 WSGIScriptAlias / C:\xampp\htdocs\app\main.wsgi 11 12 <Directory "C:\xampp\htdocs"> 13 AllowOverride All 14 Allow from All 15 </Directory> 16</VirtualHost>

wsgi

1#app.wsgi 2#app.pyと同じ階層に配置 3 4import sys 5sys.path.insert(0, 'C:\xampp\htdocs\app') 6 7from main import app as application

自分で試したことは以上です。
こちらのサイトを参考に進めました。

解決法、助言いただけると大変助かります。
どうぞよろしくお願いいたします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2020/08/24 01:17

「参考に進めました。」では第三者はあなたが何をしたのか全く分かりません。 ご自分で実施した手順を正確に記載してください。 また確認した手順も同様に必要です。 仮にあなたが他人と全く同じ環境を作らないといけないとしたら、こういう情報が必要だと思う情報を全て記載しましょう。 こういうことを回答者がわざわざコメントすることは稀で、皆スルーするか、無責任な回答をしてお茶を濁すだけなので、本当に回答が必要なのであれば、「1回目で」手を抜かずに全力で記載してください。
gogotowel

2020/08/24 08:18

それらのサイトの内容を参考に上記の設定を作成しました。その設定内容が今回私のしたことの全てなので、それでご理解いただけると思って記載しましたが、伝わらなかったようで申し訳ない限りです。 ご忠告どうもありがとうございました。
guest

回答1

0

ベストアンサー

XAMPPに含まれるApache httpdって32ビット版だった気がします。
そのため、64ビット版のモジュールを組み込もうとしてもうまくいきません。
32ビット版を改めて組み込んでみるか、
XAMPPに頼らず、素のWindows向けApache httpdを
例えば Apache Haus Downloads からダウンロードして使います。

投稿2020/08/23 02:19

退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

gogotowel

2020/08/24 08:20

pythonの32ビット版環境をインストールの上試したところ、見事エラーもなく起動しました! 自分では思い至らなかったので、良い経験となりました。 大変ありがとうございました。
退会済みユーザー

退会済みユーザー

2020/08/24 22:49

@質問者様 あまりこういうことはしたくないのですが、xamppで普通にインストールされたhttpdは64bit版です。 (32bit版Windowsでは確認していません) C:\xampp\apache\bin>dir httpd.exe ドライブ C のボリューム ラベルは Windows です ボリューム シリアル番号は CEF8-D636 です C:\xampp\apache\bin のディレクトリ 2020/08/04 20:54 29,696 httpd.exe 1 個のファイル 29,696 バイト 0 個のディレクトリ 223,803,564,032 バイトの空き領域 C:\xampp\apache\bin>dumpbin /headers httpd.exe | findstr machine 8664 machine (x64) C:\xampp\apache\bin> 何をしたいのか知りませんが、嘘を記載するのは止めましょう。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.37%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問