CentOS7でFlaskをmod_wsgiで動かす2020-04-19CentOS7でFlaskをmod_wsgiで動かすはじめに社内でAPIを必要とする場面が発生しました。その際の環境構築のメモの残します。実際はESXiに乗せていますが、今回はVirtualboxで検証します。復習の意味も兼ねてできるだけ詳しく書いています。詳しい方は次へ飛ばしてもらって構いません。インストールした状態から開始します。rootでログインします。-インストールした直後でDCHPだったので固定IP化します。--今回の環境はenp0s3がNIC名になります。環境ごとに名前が違うかも知れません。一度確認してから固定IP化します。getenforceEnforcing有効状態なので常時無効化しておきます。update開発者ツール群を一括インストール。今後の開発中に無用なトラブルを避けるためにもインストールしておきます。httpdhttpd-devlはhttpdの開発パッケージでmod_wsgiを使用するときに必要なのでインストールをします。これがないとmod_wsgiをインストールするときにエラーになりますので必ずインストールします。--reload今回はhttpでしか使いませんが、今後の展開のためにhttpsも開けておきます。必要に応じて開放してください。起動確認ブラウザで上記で指定した固定IPで見れることを確認します。Pythonインストール今回はPython3.6をインストールします。0.34.2Flaskとmod_wsgiがインストールされていることを確認するアプリの作成/var/www/html内にFlaskのアプリを作成していきます。本当は別のディレクトリの方がセキュリティが高いのですが、ユーザーの権限の問題が複雑化するので上記のパスで作成します。作成したアプリをデバックモードで実行するとポート5000番を使用します。外部から接続ができるようにするために、ポート開けてあげます。デバッグ時だけ有効にしてあげましょう。applicationmod_wsgiモジュールをコピーmod_wsgiをインストールするとApacheで使用するモジュールも作成されます。そのためこのモジュールを使用できるようにする必要があります。選択肢はいくつかあって権限の問題が発生しないコピーの方法を選択します。__pycache__apxs_config.pyenviron.pymanagementmod_wsgi-py36.cpython-36m-x86_64-linux-gnu.somod_wsgiがあることを確認します確認したモジュールをApacheのモジュールディレクトリ/etc/httpd/modules/にコピーします。今回のコピーコマンドになります。環境によって違う可能性があるのでパスを確認しながらコピーしてください。/etc/httpd/modules/Apacheに設定wsgiの設定情報を作成するには2つパターンがあります。confに追記するか/etc/httpd/conf.d/の中にwsgi.confファイルを作成するかいずれかになります。今回は作成する方法を採用します。Worldが出てくれば成功です。今後もブログの方を更新していきますのでよろしくお願いします。最後になりますが、もしよろしければ読者の皆様からご支援いただけるのであればご支援いただきたく思います。Amazon欲しい物リストを公開していますので、ご支援よろしくお願いします。インストールとトラブルpandas_datareaderをインストールして使おうとしたらエラーが発...2023-03-07WindowsでVirtualenvを構築して実行させるVirtualenvを使ったPython開発時にWindowsでの実行スクリプトに...2022-05-23【製造業DX】紙からデータ読み取りする方法こんにちは、はじめまして、めじろです。(2)はてなブログをはじめよう!boonv4m312sさんは、はてなブログを使っています。ブログを報告する引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。