Django インストール · 2 min read · Dec 04, 2025
Mandriva 2008.1 に Django をインストールする方法 (Apache2/mod_python)
Mandriva 2008.1 に Django をインストールする方法 (Apache2/mod_python)
バージョン 1.0
著者: Falko Timme
このチュートリアルでは、Mandriva 2008.1 サーバーに Django をインストールする方法を説明します。Django は、できるだけ自動化された形で Python ウェブアプリケーションを迅速に開発できるウェブフレームワークです。このガイドでは、Apache2 と mod_python を使用します。
このハウツーは実用的なガイドとして意図されています。理論的な背景についてはカバーしていません。それらはウェブ上の他の多くの文書で扱われています。
この文書は、いかなる種類の保証もありません!これは、このようなシステムを設定する唯一の方法ではないことを言いたいです。この目標を達成する方法はたくさんありますが、これは私が取る方法です。これがあなたにとって機能することを保証するものではありません!
1 MySQL をインストールする
パッケージをインストールする前に、main、main_updates、contrib、および contrib_updates リポジトリを有効にする必要があります。http://easyurpmi.zarb.org/ にアクセスしてください。これにより、これらのリポジトリを有効にするために実行する必要があるコマンドが表示されます。私の場合、次のコマンドを実行しました。
urpmi.addmedia contrib ftp://distrib-coffee.ipsl.jussieu.fr/pub/linux/MandrivaLinux/official/2008.1/i586/media/contrib/release with media_info/hdlist.czurpmi.addmedia --update contrib_updates ftp://distrib-coffee.ipsl.jussieu.fr/pub/linux/MandrivaLinux/official/2008.1/i586/media/contrib/updates with media_info/hdlist.czurpmi.addmedia main ftp://distrib-coffee.ipsl.jussieu.fr/pub/linux/MandrivaLinux/official/2008.1/i586/media/main/release with media_info/hdlist.czurpmi.addmedia --update main_updates ftp://distrib-coffee.ipsl.jussieu.fr/pub/linux/MandrivaLinux/official/2008.1/i586/media/main/updates with media_info/hdlist.czDjango は、PostgreSQL、MySQL、SQLite など、複数のデータベースバックエンドを使用できます。MySQL を使用したい場合は、次のようにインストールできます。
urpmi MySQL MySQL-clientデフォルトでは、Mandriva 2008.1 の MySQL パッケージではネットワーキングが有効になっていません。これを変更するには、/etc/my.cnf の skip-networking 行をコメントアウトします。
vi /etc/my.cnf| [...] # TCP/IP ポートで全くリッスンしません。これはセキュリティの強化になる可能性があります。 # mysqld に接続する必要があるすべてのプロセスが同じホストで実行される場合。 # mysqld とのすべてのやり取りは Unix ソケットまたは名前付きパイプを介して行う必要があります。 # Windows で名前付きパイプを有効にせずにこのオプションを使用すると # (「enable-named-pipe」オプションを介して) mysqld は無用になります! # #skip-networking [...] |
その後、MySQL のシステム起動リンクを作成します…
chkconfig mysqld on… そしてそれを起動します:
/etc/init.d/mysqld startネットワーキングが有効になっているか確認します。次のコマンドを実行します。
netstat -tap | grep mysql出力は次のようになります:
[root@server1 ~]# netstat -tap | grep mysql
tcp 0 0 *:mysql-im *:* LISTEN 3746/mysqlmanager
tcp 0 0 *:mysql *:* LISTEN 3754/mysqld
[root@server1 ~]#次のコマンドを実行して、root ユーザーのパスワードを設定します(さもなければ誰でもあなたの MySQL データベースにアクセスできます!)。
mysqladmin -u root password yourrootsqlpassword
mysqladmin -h server1.example.com -u root password yourrootsqlpassword2 Apache と mod_python をインストールする
Apache2 と mod_python がまだシステムにインストールされていない場合は、次のようにインストールできます。
urpmi apache-mod_python(これにより、Apache2 がまだインストールされていない場合は、Apache2 もインストールされます。)
3 Django をインストールする
Django と Python MySQL バインディングをインストールするために、次のコマンドを実行します。
urpmi python-django python-mysql4 Apache を設定する
Apache を設定する前に、Django プロジェクト(例:mysite と呼ばれる)を作成する必要があります(http://www.djangoproject.com/documentation/tutorial01/ を参照)。セキュリティ上の理由から、私はそのプロジェクトをドキュメントルートの外に作成します(ここではデフォルトの Mandriva ドキュメントルート /var/www/html を使用しています)(例:/home/mycode に)。
mkdir /home/mycode
cd /home/mycode
/usr/bin/django-admin.py startproject mysiteこれにより、/home/mycode/mysite ディレクトリが作成され、その中にいくつかの Python ファイルが作成されます。
プロジェクト mysite が作成されたので、Apache を設定できます。元の /etc/httpd/modules.d/16_mod_python.conf ファイルのバックアップコピーを作成し、次のように新しいものを作成します。
cp /etc/httpd/modules.d/16_mod_python.conf /etc/httpd/modules.d/16_mod_python.conf_orig
cat /dev/null > /etc/httpd/modules.d/16_mod_python.conf
vi /etc/httpd/modules.d/16_mod_python.conf| LoadModule python_module extramodules/mod_python.so |
(この設定は、/var/www/html のデフォルトの Mandriva vhost に対して有効です - Django を使用したい他の vhost をすでに定義している場合は、
最初の行のパス(
その後、Apache を再起動します:
/etc/init.d/httpd restartこれで、ブラウザで http://www.example.com/mysite にアクセスできます。すべてがうまくいけば、次のようなものが表示されるはずです:

これは Django が正常にインストールされたことを意味し、これで Python ウェブアプリケーションを開発するために使用できます(Django を使用してウェブアプリケーションを開発する方法については、http://www.djangoproject.com/documentation/ を参照してください)。
5 Django プロジェクトから MySQL データベースに接続する
Django プロジェクトで MySQL データベースを使用したい場合は、まずそのデータベース(例:mysite)とそのデータベース用のデータベースユーザー(例:mysiteadmin)を作成する必要があります。
mysql -u root -pCREATE DATABASE mysite;
GRANT ALL ON mysite.* TO 'mysiteadmin'@'localhost' IDENTIFIED BY 'mysiteadmin_password';
GRANT ALL ON mysite.* TO 'mysiteadmin'@'localhost.localdomain' IDENTIFIED BY 'mysiteadmin_password';
FLUSH PRIVILEGES;
quit;次に、プロジェクトフォルダー(例:/home/mycode/mysite)の settings.py ファイルを開き、データベース設定を次のように変更します。
vi /home/mycode/mysite/settings.py| [...] DATABASE_ENGINE = 'mysql' # 'postgresql_psycopg2', 'postgresql', 'mysql', 'sqlite3' または 'ado_mssql'。 DATABASE_NAME = 'mysite' # sqlite3 を使用している場合はデータベースファイルへのパス。 DATABASE_USER = 'mysiteadmin' # sqlite3 では使用されません。 DATABASE_PASSWORD = 'mysiteadmin_password' # sqlite3 では使用されません。 DATABASE_HOST = '' # localhost の場合は空の文字列に設定します。sqlite3 では使用されません。 DATABASE_PORT = '' # デフォルトの場合は空の文字列に設定します。sqlite3 では使用されません。 [...] |
6 リンク
- Django: http://www.djangoproject.com
- Python: http://www.python.org
- Mandriva: http://www.mandriva.com
新しい投稿を受信箱で受け取る
スパムはありません。いつでも購読を解除できます。