在Linux系統(tǒng)上部署Apache+Python+Django+MySQL環(huán)境
Linux+apache+mysql+python+mod_python+Django
說明:系統(tǒng)rhel 5.3,默認(rèn)安裝httpd、mysql,沒有安裝的,請下載安裝RPM包,刪除/etc/httpd/modules/mod_python.so,如果有的話。
一、安裝python
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
安裝
./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
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模塊
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 ##安裝
測試:
[root@localhost conf]# python2.7
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
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,因?yàn)橐獎(jiǎng)討B(tài)加入python模塊,要不然找不到apxs
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這個(gè)不用添加,因?yàn)樵?etc/httpd/conf.d/python.conf 已經(jīng)配置好
7ervice httpd restart (重啟下apache)
測試:
[root@localhost conf]# python
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
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
測試:
[root@localhost conf]# python
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 >>>
六、測試全部
mkdr /www cd /www ./usr/local/python/bin/django-admin.py startproject mytest mytest python manage.py runserver 0.0.0.0:8000
效果如下:
PS:關(guān)于mod_python
mod_python是apache組織的一個(gè)項(xiàng)目,通過它,可以開發(fā)psp或cgi,mod_python功能強(qiáng)大,速度快,是非常優(yōu)秀的web開發(fā)工具。
Mod_python起源于一個(gè)被稱為Httpdapy(1997)的項(xiàng)目。很長時(shí)間以來, Httpdapy并沒有被稱作mod_python,因?yàn)镠ttpdapy不是專門用于Apache的。 Httpdapy被設(shè)計(jì)成跨平臺(tái)的,實(shí)際上最初是為Netscape server寫的(那個(gè)時(shí)候被稱為Nsapy)(1997)
這個(gè)Httpdapy的README文件的摘要,很好的闡述了在HTTP server中嵌入Python所帶來的挑戰(zhàn)和解決方案。
Apache分階段的處理請求(比方說:讀取請求,解析header, 檢查存取路徑,等等)。這些階段能被稱為"處理器"(handler)的函數(shù)實(shí)現(xiàn)。傳統(tǒng)上, "處理器"是由C語言編寫,并編譯成Apache的模塊。Mod_python提供了一個(gè)通過Python寫的Apache處理器的來擴(kuò)展Apache功能的方法。關(guān)于Apache請求處理過程的詳盡描述,請參閱 Apache API Notes, 也可以參閱 Mod_python - Integrating Python with Apache。
為了輕松地從CGI移植,一個(gè)標(biāo)準(zhǔn)的mod_python處理器提供了模擬的CGI環(huán)境,允許用戶在不對(duì)代碼做任何修改的情況下,使遺留的腳本運(yùn)行在mod_python下(大多數(shù)情況)。
mod_python的一個(gè)最主要優(yōu)點(diǎn)就是在性能上超越傳統(tǒng)CGI。下面是一個(gè)非常粗略的測試。該測試是在一臺(tái)運(yùn)行Red Hat Linux 7.3的奔騰1.2G的機(jī)器上完成的。Ab 用來對(duì)4種腳本進(jìn)行測試,所有的都是從標(biāo)準(zhǔn)cgi模塊輸入(因?yàn)檫@是一個(gè)典型Python cgi腳本開始的方式), 然后輸出一個(gè)簡單的單詞"Hello!"。這個(gè)結(jié)果是基于10000次并發(fā)為1的請求。
Standard CGI: 23 requests/s
Mod_python cgihandler: 385 requests/s
Mod_python publisher: 476 requests/s
Mod_python handler: 1203 requests/s
相關(guān)文章
pycharm中報(bào)ModuleNotFoundError:No?module?named?'tensor
這篇文章主要給大家介紹了關(guān)于pycharm中報(bào)ModuleNotFoundError:No?module?named?'tensorflow'錯(cuò)誤的解決方法,文中通過圖文介紹的非常詳細(xì),需要的朋友可以參考下2023-07-07Windows 安裝 Anaconda3+PyCharm的方法步驟
這篇文章主要介紹了Windows 安裝 Anaconda3+PyCharm的方法步驟,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2019-06-06Python OpenCV利用筆記本攝像頭實(shí)現(xiàn)人臉檢測
這篇文章主要為大家詳細(xì)介紹了Python OpenCV利用筆記本攝像頭實(shí)現(xiàn)人臉檢測,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2019-04-04Python的面向?qū)ο缶幊谭绞綄W(xué)習(xí)筆記
Python深度具備面向?qū)ο缶幊陶Z言所應(yīng)有的特性,這里我們以類和方法為主,來整理一下Python的面向?qū)ο缶幊谭绞綄W(xué)習(xí)筆記:2016-07-07