Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
30
Help us understand the problem. What is going on with this article?
@itisyuu

UbuntuにApacheとPythonとDjangoを入れようとした話(2)

More than 1 year has passed since last update.

困ったときは凝ったことをせずに、最小限のことでやろうと思いました故。
覚書程度です。

まずはpip3のインストール

$sudo apt install python3-pip
$pip3 install --upgrade pip

pip自体はpythonで書かれたパッケージの管理システムです。
python2系とpython3系では異なることが多いのでpip(python2用)とpip3(python3用)があります。
今回はpip3の方を使います。
何もない段階でpip3をインストールすると現時点(2017/10/27)ではpython3.5系もインストールされます。

Djangoのインストール

$pip3 install django
$apt install python-django-common
$django-admin --version

先程いれたpip3を使ってdjangoを入れます。
念のためバージョン確認してきちんと入ってるかを見ておいて下さい。

apache2のインストール

$sudo apt-get update
$sudo apt-get install apache2
$apt-get install apache2-dev
$systemctl start apache2

apache2とapache2-devをインストールします。apache2-devが無い場合、この後使うmod_wsgiのインストールに失敗するようです。
apache2を起動したらwebブラウザからlocalhostに接続してきちんと表示されていることを確認します。

mod_wsgiのインストール

$pip3 install mod_wsgi
$sudo mod_wsgi-express install-module

mod_wsgiをインストールします。
mod_wsgiはapacheとpythonを繋いでくれるモジュールです。
おとなしくpipコマンドで入れるのが得策です。

$mod_wsgi-express install-module

でapacheの設定のためのパスが出てきます。

Djangoのプロジェクトを作成する

$mkdir /home/django
$cd /home/django
$django-admin startproject proj1

今回はこのような環境で行っています。
仮想環境とかでやるのが推奨されているらしいですが...
djangoとかの文字列は好きなように置き換えてもらって構いません。

apacheとdjangoを結びつける

$vi /etc/apache2/sites-available/django.conf

でdjango.confファイルを作成し、

<VirtualHost *:80>
  WSGIDaemonProcess proj1 python-home=/usr python-path=/home/django/proj1
  WSGIScriptAlias / /home/django/proj1/proj1/wsgi.py process-group=proj1
  <Directory /home/django/proj1/proj1>
    <Files wsgi.py>
      Require all granted
    </Files>
  </Directory>
</VirtualHost>

のような内容を書き込みます。各自環境に合わせてください。

$vi /etc/apache2/apache2.conf 

ここの設定ファイルの末尾に

$sudo mod_wsgi-express install-module

で現れた文字列を追加しておきます

で最後に

$sudo a2dissite 000-default
$sudo a2ensite django
$systemctl restart apache2

設定ファイルを読み込み、apacheを起動させて終わりです。
設定が無事終わっていれば、localhostに接続したときにIt works!!みたいな表示がされているはずです。

まとめ

anacondaいれてライブラリを一括にインストールしようとすると余計にめんどくさかった。
機械学習系のライブラリを使いたいけど個別に入れるしかないのかなぁ。。。

[追伸]
It works!!は表示されるけど、このままの状態だとdjangoの初期設定は何もしていないので
http://localhost/admin
は見れてもその先は行けないかと。

とりあえずdjangoの初期DBであるsqlite3とか入れて下さい。

30
Help us understand the problem. What is going on with this article?
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
itisyuu
とあるつぶやき。

Comments

No comments
Sign up for free and join this conversation.
Sign Up
If you already have a Qiita account Login
30
Help us understand the problem. What is going on with this article?