環境変数に入れる以外に良い方法が出回ってなさそうですね。manage.pyの中でこの方法でやってるからこれしかないのかしらね。誰かいい方法知ってたら教えてほしい。)2018年07月09日01:17カテゴリプログラムCentOS7でApacheでDjango動かすまでまーはまったので、残しとく。ApacheでDjango動かすまでのまとめ。Python3.6とDjango入れるのはこっちがメイン。Python3.6入れる。httpd-develで、ここから人によると思うんだけど、自分はユーザのホームに「public_html」を作ってそこにDjangoのプロジェクト入れる感じでやる。/home/hogeusrで、ホームディレクト内のディレクトリ使う場合は、ホームディレクトリそのものの、パーミッションで他ユーザの実行権限つけないと動かない。これのやり方はなんか他にないか今度調べよ。したら、とりあえずDjangoのプロジェクト作って確認しておく。runserver#↓にブラウザでアクセスhttp://127.0.0.1:8000/そしたら、mod_wsgiをインストしておく。#pipで入れないとダメらしい。あと、仮想環境上でやらないとダメ。httpd」を実行するとSELinuxに拒否られる。この辺の設定を次にする。httpd#↓にブラウザでアクセスhttp://localhostこれでDjangoの初画面がでるはず。WSGIPythonHomeは仮想環境のディレクトリを指定。WSGIScriptAliasはここで指定したURLに来た時にどのWsgiスクリプト動かすか。WSGIPythonPathはWSGIで動かした時に読ませるPythonPath。色んなモジュール読み込みで必要らしい。PythonPathについてはココのブログが分かりやすい。公式はこっちApacheで動かすときのDjangoの公式はコッチ。やっててエラーが出たら「/etc/httpd/logs/error_log」にヒントが出るので見ながらアレコレやるしかあるまい。homeティレクトリのパーミッション。パスが違う自分は他のセキュリティ系の設定はやらなくてもlocalhostで動いたけど、ほんとはやらないとダメなのかな?下の内容。#↓のファイルでALLOWED_HOSTS=['*']にしておく。#全OKの設定なのでホントは色々考えないとダメだろね。~/public_html/pyenv/mysite/mysite/settings.pyあとはファイヤーウォール。面倒なので、一回切ればいいじゃないだろか。7でPython3.6入れるのとDjangoを動かすまでタイトル通り。Python3.6の入れ方が色々あってよくわかんないのでまとめ的に。ApacheでDjango動かうまではコッチ。CentOSで現状入ってるPythonのバージョンは2.7。最新は3.7っぽいけど、3.6用のRPMしかないっぽいので3.6を入れる。ソースからビルドすれば3.7も行けるらし。RPM配布してるのはココまず、Python3.6入れる。-Vそしたら、Django動かす。python3.6で仮想環境作れば、仮想環境上のpythonは3.6見る様子。runserver#↓でアクセスしてみるhttp://127.0.0.1:8000/#仮想環境抜けるときdeactivateホントは元から入ってるPythonも3.6にならないか、↓みたいにコマンドのリンクつけ直してみたんだけど、やってみたらyumが動かなくなった。yumでシンタックスエラーが出る。バージョン変わったからなんか直さないとダメなんかね。yumってPythonだったのね。)2018年06月08日23:50カテゴリプログラムDjangoとApacheとWSGIとWindowsWindows上でDjangoで作ったアプリをApacheからWSGIで呼べるようにする。まーWindowsはいばらの道じゃ。必要な資源をダウンロードしておく。ApacheとかPythonとか。PythonはPIPとVirtualEnvも。1Djangoで適当にアプリを作る。デフォでC:\Apache24みたいになってるところを格納したフォルダのパスに全部変える。WORKS!!って出ればOK。ポート変えてる時はURLは適宜変える。したら、胆のmod_wsgiのインスト。仮想環境上でやってもいいかもだけど、自分は本体(って言い方であってんのかな)の方にインストした。windowsでインストールするやり方は昔はアレコレ大変だったようですが、今は割と楽。調べてて、昔のやり方ではまりそうになったんだけど、mod_wsgiのGitのReadmeにちゃんと書いてあった。一次情報をちゃんと読まないとダメですね。これには大部分が昔のやり方で載ってるんだけど、一番上にここに載ってる事はもうやんなって書いてありましたね。mod_wsgiこれだけ。・・・が、ApacheをC:の直下に展開してないとエラーが出ると言う罠。location.」っていうエラーが出る。C:直下以外にある場合は、この環境変数setしてからじゃないとダメっぽいですね。stackoverflowに質問もあった。いう事で、C:直下以外にある場合は↓の感じ。mod_wsgiで、Apacheには32bit版と64bit版があるんですが、64bit版だとこれでもまだ変なエラーがでる。あきらめて32bit版にしましたとさ。あと、自分のPCにはVisualStudio2017も入ってるんですが、上記のStackOverflow見てると、VisualStudio入ってないとダメそう?mod_wsgiのインストールの中で、コンパイルしてるっぽい?インストール出来たら↓。module-config上記のコマンド実行すると↓感じの設定文字列が出てくるので、これをApacheのhttpd.confにコピペする。"f:/python36"そしたら、あとはDjangoの公式に載ってる設定をhttopd.confに追加しておしまい。最終的にhttpd.confに追記するのは↓。granted</Files></Directory>WSGIPythonHomeはDjangoを使ってる仮想環境のルートを指定するっぽいですよ。これで、WSGIScriptAliasで指定してるURLにアクセスすればDjangoが動くという寸法です。なんだかデフォのままだとトップページが出ないぽいので、「/mysite/admin/」みたいに中のURLまで行かないとダメな感じ?あんま調べてない。まー動いたから良しとしよう。PyMySQL」だけで動くんだけど、Apache通すと動かない。mysqlclient」でインストールしたら動くようになった。