`
mcjiffy
  • 浏览: 18676 次
  • 性别: Icon_minigender_1
  • 来自: 苏州
最近访客 更多访客>>
社区版块
存档分类
最新评论

教你在Mandriva 2009.1(Apache2/mod_python)上安装Django

阅读更多

这篇教程介绍了如何在Mandriva 2009.1 server上安装Django.Django是一种能快速且尽可能自动化开发Python web程序的web框架.我讲在这篇教程和Apache2,mod_Python一起使用它.这篇howto可以当作使用指南:它不包括理论背景,在网络 上很多文档中也被采用过.

1.安装MySQL

首先更新我们打包的数据库:

urpmi.update -a

Django可以使用多个数据库后台,例如:PostgreSQL,MySQL,SQLite等等.如果你想要使用MySQL,你可以按照下面的命令安装它:

urpmi MySQL MySQL-client

默认Mandriva2009.1的MySQL包中网络是没有启用的.我们可以去掉/etc/my.cnf中的skip-networking这一行的注释来开启网络.

vi /etc/my.cnf

[...]

# Don’t listen on a TCP/IP port at all. This can be a security enhancement,

# if all processes that need to connect to mysqld run on the same host.

# All interaction with mysqld must be made via Unix sockets or named pipes.

# Note that using this option without enabling named pipes on Windows

# (via the “enable-named-pipe” option) will render mysqld useless!

#

#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                     *:*                         LISTEN      2602/mysqld
tcp        0      0 *:mysql-im                  *:*                         LISTEN      2576/mysqlmanager
[root@server1 ~]#

启动

mysqladmin -u root password yourrootsqlpassword
mysqladmin -h server1.example.com -u root password yourrootsqlpassword

设置用户的root密码(否则任何人可以访问你的MySQL数据库!).

2.安装Apache和mod_python

如果你的系统上没有安装apache2和mod_python,你可以按照下面来安装:

urpmi apache-mod_python

(如果你没有安装Apache2,这条命令同时会安装它).

3.安装Django

为了安装Django和Python的MySQL的绑定,我们运行:

urpmi python-django python-mysql

4.配置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

这将和一些Python一起创建/home/mycode/mysite目录.

现在我们已经创建了mysite工程,我们可以配置Apache了.我备份了/ect/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
 
<Location "/mysite">
    SetHandler python-program
    PythonHandler django.core.handlers.modpython
    SetEnv DJANGO_SETTINGS_MODULE mysite.settings
    PythonDebug On
    PythonPath "['/home/mycode'] + sys.path"
</Location>

(这种默认Mandriva vhost在/var/www/html的配置是正确的-如果你已经在其他vhosts上定义了你希望使用的Django,请 在<Location…>…</Location>内配置适当的vhost,但是在/ect/httpd/modules.d /16_mod_python.conf中要保留LoadModule这一行.)

第一行的路径(<Location “/mysite”>)引用的是网址-这个配置意味着你讲使用/mysite在URL中(例如:http://www.example.com /mysite).你可以改为你喜欢的.请调整其他的值(SetEnv DJANGO_SETTINGS_MODULE mysite.settings and PythonPath “['/home/mycode'] + sys.path”)名字为你的工程和所在位置的路径.

之后重启Apache:

/etc/init.d/httpd restart

现在你可以在浏览器中查看http://www.example.com/mysite .如果一切正常,你可以看到如下页面:

How To Install Django On Mandriva 2009.1 (Apache2 mod_python)

它表明Django已经被成功安装,现在你已经可以使用它来开发你的Python Web程序了(请参考http://www.djangoproject.com/documentation/ 学习如何用Django开发Web程序).

5.从Django工程链接到MySQL数据库

如果你现在你的Django工程里使用MySQL数据库的话,首先你必须先创建一个数据库(例如叫mysite)和一个数据库用户(例如:mysiteadmin):

mysql -u root -p
CREATE 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;

然后打开工程文件夹里的settings.py(例如:/home/mycode/mysite)并且修改数据库配置,例子如下:

vi /home/mycode/mysite/settings.py
[...]
DATABASE_ENGINE = 'mysql'           # 'postgresql_psycopg2', 'postgresql', 'mysql', 'sqlite3' or 'oracle'.
DATABASE_NAME = 'mysite'             # Or path to database file if using sqlite3.
DATABASE_USER = 'mysiteadmin'             # Not used with sqlite3.
DATABASE_PASSWORD = 'mysiteadmin_password'         # Not used with sqlite3.
DATABASE_HOST = ''             # Set to empty string for localhost. Not used with sqlite3.
DATABASE_PORT = ''             # Set to empty string for default. Not used with sqlite3.
[...]

6.链接

7.声明

原文地址:http://www.howtoforge.com/how-to-install-django-on-mandriva-2009.1-apache2-mod_python

翻译By: McJiffy   http://www.txtbar.cn

  • 大小: 25.7 KB
1
0
分享到:
评论

相关推荐

    Apache_OpenOffice_4.1.10_Linux_x86-64_install-rpm_zh-CN.tar.gz

    Apache OpenOffice是一款开源的办公软件套件,它包含多个组件,如文字处理、电子表格、演示文稿、绘图和数据库管理工具,是Microsoft Office的一个有力替代品。在这个"Apache_OpenOffice_4.1.10_Linux_x86-64_...

    服务器性能监控APM快速安装操作手册范本.doc

    1. **下载APM**:访问指定的下载地址&lt;.zohocorp./manageengine/products/applications_manager/download-info.html&gt;获取APM,并查阅用户手册以了解更多详细信息,手册可在&lt;.zohocorp./manageengine/products/...

    fetion的安装

    在本文中,我们将探讨如何在CentOS 6.x系统上安装飞信。 首先,尝试使用RPM包直接安装飞信。你可以通过运行以下命令来尝试安装: ```bash Rpm -ivh ...

    Mandriva桌面新境界——体验Mandriva Linux 2006.pdf

    在安装过程中,Mandriva Linux 2006沿用了自8.0版本以来的简洁明了的界面设计,使得无论是新手还是老手都能轻松应对。虽然集成显卡可能会导致字符安装界面的出现,对于新手来说可能稍显复杂,但整体的安装流程直观且...

    Getting_Started_With_PyQt4_v1.pdf

    在安装完成后,可以通过 Python 会话验证 PyQt4 是否正确安装。打开终端并执行以下命令: ```python from PyQt4.QtCore import QT_VERSION_STR print(QT_VERSION_STR) ``` 如果安装成功,将显示当前使用的 Qt 版本...

    Atheros 无线网卡驱动 for Linux

    Mandriva Linux 2009.0 (formally known as Mandrake Linux) ARCH Linux Gentoo Linux Red Flag Linux 7.0 (based on Fedora 10) RHEL5 2.6.18 kernel being tested When it went in ath9k was announced to ...

    libpam.so.0

    在Mandriva Linux中,如果你在安装或运行SSH服务器(sshd)时遇到“libpam.so.0 no version”的错误,这表明系统找不到或者无法识别该库的正确版本。可能的原因有多种,比如库文件损坏、版本不兼容、缺失依赖等。...

    arm Linux嵌入式开发

    2. **Anjuta**:Anjuta是一款专为C/C++语言设计的强大IDE,支持多种编译器和调试器,安装非常方便(例如在Mandriva系统中可使用urpmi anjuta进行安装)。Anjuta集成了源代码管理、自动完成、语法检查等功能,非常...

    Linux Mandrava Certified

    【Linux Mandriva Certified】教程主要面向有一定Linux基础的学习者,提供全英文的教程内容,旨在帮助用户深入了解和掌握Linux操作系统,尤其是与Apache Web服务器相关的知识。本教程不仅包括安装和基本操作,还涉及...

    Linux Bible 2010 Edition: Boot Up to Ubuntu, Fedora, KNOPPIX, Debian, openSUSE, and 13 Other Disributions

    Running Mandriva Chapter 26: ..................................................................................................689 Running a Linux Firewall Router Chapter 27: ............................

    浅谈Linux目录.pdf

    Mandrake(现为Mandriva)则在保持易用性的同时,增加了对新手友好的功能。 理解Linux目录结构对于系统管理、软件安装和问题排查至关重要。通过深入研究,用户可以更有效地利用Linux系统的强大功能。

    linux教程第三版课后答案.doc.docx

    3. 安装 Linux 时最少需要三个分区:boot 分区、根分区和 swap 分区。 4. Linux 默认的系统管理员帐号是 root。 5. 进入 GUI 模式可以执行 init 5 命令。 二、引导过程 6. RHEL 6.2 默认的系统引导工具是 GRUB。 7...

    User-Agent库useragent.js.zip

    安装方式:npm: $ npm install useragent.js bower: $ bower install useragent.js支持检测列表: Tested Browsers: 114Browser / 115Browser / 2345Chrome / 2345Explorer / 360 Aphone Browser / 360 ...

    linux爱好者入门教程.txt

    它的设计初衷是为了让Linux更加易于使用,尤其是在图形界面和安装过程方面进行了优化。Mandrake Linux以其用户友好的特性而受到欢迎。 #### 二、Linux的发展历程 - **起源与发展:**Linux起源于1991年,最初作为...

    rt73无线网卡驱动源码 RT73_Android_Linux_STA_Drv1.1.0.2.tar.bz2

    rt73 usb无线网卡linux内核驱动的源码 * README * Ralink Tech Inc. ...====================================... You have to remove the module pre-loaded by Mandriva 2007.1 before you can load our rt73sta module.

    wireshark傻瓜版教程PDF

    在Windows平台上安装Wireshark,首先需要安装WinPcap,这是Windows系统进行封包捕获所必需的组件。然后下载Wireshark的安装程序,按照提示完成安装过程。 #### Wireshark支持的通信协议 Wireshark支持超过680种通信...

    Mandriva2010入门指南下

    ### Mandriva2010入门指南:个性化系统与配置管理 #### 1. 用户认证 (User Authentication) 在Mandriva Linux系统中,用户认证是非常重要的一个环节,它确保了系统的安全性和稳定性。通过`DrakAuth`工具,用户可以...

    linux教程第三版课后答案..docx

    3. Linux 安装所需分区:安装 Linux 至少需要三个分区,包括 boot 分区(存放引导加载器),根分区(/),以及 swap 分区(用于虚拟内存)。 4. Linux 系统管理员帐号:默认的系统管理员帐号是 `root`。 5. 进入 ...

    linux教程第三版课后答案.docx

    Linux教程第三版课后答案涵盖了Linux操作系统的基础知识,包括GNU的含义、Linux版本的分类、安装Linux所需的分区、系统管理员帐号、启动命令、系统引导工具GRUB及其操作模式、MBR(主引导记录)的组成、内核的类型、...

    硬盘安装Mandriva Linux2006的方法

    本文将为大家介绍硬盘安装Mandriva Linux2006的方法。

Global site tag (gtag.js) - Google Analytics