• <acronym id='pgxpr'><em id='pgxpr'></em><td id='pgxpr'><div id='pgxpr'></div></td></acronym><address id='pgxpr'><big id='pgxpr'><big id='pgxpr'></big><legend id='pgxpr'></legend></big></address>

    <span id='pgxpr'></span><i id='pgxpr'><div id='pgxpr'><ins id='pgxpr'></ins></div></i>
  • <tr id='pgxpr'><strong id='pgxpr'></strong><small id='pgxpr'></small><button id='pgxpr'></button><li id='pgxpr'><noscript id='pgxpr'><big id='pgxpr'></big><dt id='pgxpr'></dt></noscript></li></tr><ol id='pgxpr'><table id='pgxpr'><blockquote id='pgxpr'><tbody id='pgxpr'></tbody></blockquote></table></ol><u id='pgxpr'></u><kbd id='pgxpr'><kbd id='pgxpr'></kbd></kbd>

      <code id='pgxpr'><strong id='pgxpr'></strong></code>

        <fieldset id='pgxpr'></fieldset>

        <ins id='pgxpr'></ins>
        <i id='pgxpr'></i>

        <dl id='pgxpr'></dl>

          1. 在Linux系统上部署Apache+Python+Django+MySQL环境

            • 时间:
            • 浏览:7
            • 来源:124软件资讯网

                Linux+apache+mysql+python+mod_python+Django

                说明:系统rhel 5.3,默认安装httpd、mysql,没有安装的  ,请下载安装RPM包 ,删除/etc/httpd/modules/mod_python.so  ,若是有的话  。

                一、安装python

                ?

              1 2 wget http://www.python.org/ftp/python/2.7.1/Python-2.7.1.tgz tar xfz mod_python-2.7.11.tgz
              cd python-2.7.11

                安装

                ?

              1 2 3 4 ./config --prefix=/usr/local/python/ make && make install ln -s /usr/local/python/bin/python2.7 /usr/bin/ ln -s /usr/local/python/bin/python/usr/bin/

                二、安装setuptools

                ?

              1 2 3 4 5 wget http://pypi.python.org/packages/2.7/s/setuptools/setuptools-0.6c11-py2.7.egg#md5=fe1f997bc722265116870bc7919059ea sh setuptools-0.6c11-py2.7.egg ldconfig #让它生效

                三、安装 mysqldb模块

                ?

              1 2 3 4 5 6 wget http://cdnetworks-kr-2.dl.sourceforge.net/project/mysql-python/mysql-python/1.2.3/MySQL-python-1.2.3.tar.gz tar zxvf MySQL-python-1.2.3.tar.gz cd MySQL-python python2.7 setup.py build # #ln -s /usr/local/python/bin/python2.7 /usr/bin/(注重建设毗连) python2.7 setup.py install ##安装

                测试:

                ?

              1 [root@localhost conf]# python2.7

                ?

              1 2 3 4 5 Python 2.7.1 (r271:86832, Mar 21 2011, 10:13:38) [GCC 4.1.2 20080704 (Red Hat 4.1.2-44)] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>> import MySQLdb >>>

                没有提醒说明是准确的 。

                四、安装mod_python

                ?

              1 wget http://archive.apache.org/dist/httpd/modpython/mod_python-3.3.0b.tgz

                安装前安装apr-devel-1.2.7-11.el5_5.2.i386.rpm、apr-util-devel-1.2.7-7.SEL5_3.2.i386.rpm、httpd-devel-2.4.el5.centos.i386.rpm  ,由于要动态加入python模块 ,要否则找不到apxs

                ?

              1 2 3 4 tar xvf mod_python-3.3.0b.tgz cd mod_python-3.3.0b ./configure --with-apxs=/usr/sbin/apxs --with-python=/usr/local/python/bin/python ###(apache支持python) make && make install

                注重

                LoadModule python_module modules/mod_python.so这个不用添加  ,由于在/etc/httpd/conf.d/python.conf 已经设置好

                7ervice httpd restart (重启下apache)

                测试:

                ?

              1 [root@localhost conf]# python

                ?

              1 2 3 4 5 Python 2.7.1 (r271:86832, Mar 21 2011, 10:13:38) [GCC 4.1.2 20080704 (Red Hat 4.1.2-44)] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>> import mod_python >>>

                五、安装Django

                ?

              1 2 3 4 wget http://www.djangoproject.com/download/1.2.5/tarball/ tar xfz Django-1.2.5.tar.gz cd Django-1.2.5 python2.7 setup.py install

                测试:

                ?

              1 [root@localhost conf]# python

                ?

              1 2 3 4 5 Python 2.7.1 (r271:86832, Mar 21 2011, 10:13:38) [GCC 4.1.2 20080704 (Red Hat 4.1.2-44)] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>> import django >>>

                六、测试所有

                ?

              1 2 3 4 5 mkdr /www cd /www ./usr/local/python/bin/django-admin.py startproject mytest mytest python manage.py runserver 0.0.0.0:8000

                效果如下:

                PS:关于mod_python

                mod_python是apache组织的一个项目  ,通过它  ,可以开发psp或cgi  ,mod_python功效强盛  ,速率快  ,是很是优异的web开发工具  。

                Mod_python起源于一个被称为Httpdapy(1997)的项目  。很长时间以来, Httpdapy并没有被称作mod_python  ,由于Httpdapy不是专门用于Apache的  。 Httpdapy被设计成跨平台的  ,现实上最初是为Netscape server写的(谁人时间被称为Nsapy)(1997)

                这个Httpdapy的README文件的摘要  ,很好的论述了在HTTP server中嵌入Python所带来的挑战息争决方案  。

                Apache分阶段的处置惩罚请求(例如说:读取请求,剖析header, 检查存取路径,等等)  。这些阶段能被称为"处置惩罚器"(handler)的函数实现  。传统上, "处置惩罚器"是由C语言编写  ,并编译成Apache的模块 。Mod_python提供了一个通过Python写的Apache处置惩罚器的来扩展Apache功效的要领 。关于Apache请求处置惩罚历程的详尽形貌  ,请参阅 Apache API Notes, 也可以参阅 Mod_python - Integrating Python with Apache  。

                为了轻松地从CGI移植  ,一个尺度的mod_python处置惩罚器提供了模拟的CGI情况  ,允许用户在差池代码做任何修改的情形下  ,使遗留的剧本运行在mod_python下(大多数情形)  。

                mod_python的一个最主要优点就是在性能上逾越传统CGI  。下面是一个很是大略的测试  。该测试是在一台运行Red Hat Linux 7.3的飞跃1.2G的机械上完成的  。Ab 用来对4种剧本举行测试 ,所有的都是从尺度cgi模块输入(由于这是一个典型Python cgi剧本最先的方式), 然后输出一个简朴的单词"Hello!"  。这个效果是基于10000次并发为1的请求  。

                Standard CGI: 23 requests/s

                Mod_python cgihandler: 385 requests/s

                Mod_python publisher: 476 requests/s

                Mod_python handler: 1203 requests/s