仓酷云

标题: Linux教程之nginx+web.py+spawn-fcgi+mongodb搭建 [打印本页]

作者: 只想知道    时间: 2015-1-14 21:04
标题: Linux教程之nginx+web.py+spawn-fcgi+mongodb搭建
小知识:退一万步讲,即使CentOS项目终结,正在运行它的企业也可以很轻松的转移到另一个企业Linux的克隆版。1、装置python2.7.3
留意,在还没有装置之前先应用python-V检查下版本,普通情形下都邑装置低版本
假如曾经有装置低版本的,请应用
mv/usr/bin/python/usr/bin/python24
如许修正后,假如之前的剧本应用的是旧版本的话,请修正将/#!/usr/bin/python改成#!/usr/bin/python24便可

wgethttp://www.python.org/ftp/python/2.7.3/Python-2.7.3.tar.bz2
tarzxvfPython-2.7.3.tar.bz2
cdPython-2.7.3
留意:假如想要支撑其他模块,请修正./Modules/Setup.dist这个文件,把须要添加模块的后面的#号正文去失落
./configure--prefix=/usr/local/python27--enable-unicode=ucs4
make
makeinstall
ln-s/usr/local/python27/bin/python/usr/bin/python
ln-s/usr/local/python27/bin/python2.7/usr/bin/python2.7

到这里新版本python2.7.3装置完成
python-V检查




2、装置easy_install,便利装置第三方扩大包
wgethttp://pypi.python.org/packages/2.7/s/setuptools/setuptools-0.6c11-py2.7.egg
下载后装置
shsetuptools-0.6c11-py2.7.egg
会主动装置后,装置在/usr/local/python27/bin/这个目次,做个软链接,便利应用
ln-s/usr/local/python27/bin/easy_install*/usr/bin/





3、装置web.py
应用easy_install敕令
easy_installweb.py

测试装置能否正常
[root@localhostPython-2.7.3]#python
Python2.7.3(default,Aug312012,18:37:11)
[GCC4.1.220080704(RedHat4.1.2-44)]onlinux2
Type"help","copyright","credits"or"license"formoreinformation.
>>>importweb
>>>
##########假如涌现以上这个情形,解释曾经装置好web.py#################





4、装置Spawn-fcgi
在装置装置Spawn-fcgi之前要装置flup
easy_installflup

wgethttp://www.lighttpd.net/download/spawn-fcgi-1.6.3.tar.bz2
tarxvfspawn-fcgi-1.6.3.tar.bz2
cdspawn-fcgi-1.6.3
./configure--prefix=/usr/local/spawn-fcgi
make
makeinstall
做个软链接
ln-s/usr/local/spawn-fcgi/bin/spawn-fcgi/usr/bin/





5、装置pcre-8.20.tar.bz2
在装置之前,说一个小小的成绩,pcre-8.30.tar.bz2与nginx-1.2.3.tar.gz有不兼容的成绩
tarzxvfpcre-8.20.tar.bz2
cdpcre-8.30
./configure
make
makeinstall





6、装置nginx
yum-ypcre-developenssl-develinstallzlib-devel
wgethttp://nginx.org/download/nginx-1.2.3.tar.gz
tarzxvfnginx-1.2.3.tar.gz
cdnginx-1.2.3
./configure--prefix=/usr/local/nginx--with-pcre--with-http_stub_status_module--with-openssl=/usr/
make
makeinstall





7、设置装备摆设nginx.conf

usernobody;
worker_processes4;

pidlogs/nginx.pid;

events{
worker_connections1024;
}

http{
includemime.types;
default_typeapplication/octet-stream;
sendfileon;
keepalive_timeout65;
gzipon;

server{
listen80;
server_namelocalhost;


location/{
includefastcgi_params;
fastcgi_paramSCRIPT_FILENAME$fastcgi_script_name;
fastcgi_paramPATH_INFO$fastcgi_script_name;
fastcgi_passunix:/tmp/pyweb.sock;
fastcgi_paramSERVER_ADDR$server_addr;
fastcgi_paramSERVER_PORT$server_port;
fastcgi_paramSERVER_NAME$server_name;
}


error_page500502503504/50x.html;
location=/50x.html{
roothtml;
}
}
}
#################################设置装备摆设nginx.conf完成#####################################


8、测试
vi/usr/local/nginx/html/index.py
#!/usr/bin/envpython
#-*-coding:utf8-*-
importweb
urls=("/.*","hello")
app=web.application(urls,globals())
classhello:
defGET(self):
returnhellopythonandweb.py

if__name__=="__main__":
web.wsgi.runwsgi=lambdafunc,addr=None:web.wsgi.runfcgi(func,addr)
app.run()


加入,chmod+x/usr/local/nginx/html/index.py赐与权限,这个就是进口文件

启动spawn-fcgi,并创立过程
spawn-fcgi-d/usr/local/nginx/html/-f/usr/local/nginx/html/index.py-s/tmp/pyweb.sock-unobody-gnobody(这里的用户最好是与nginx用户分歧)


阅读器拜访后果(如图:









9、装置python的mongodb的驱动,也就是pymongo模块
easy_installpymongo
测试模块
[root@localhosthtml]#python
Python2.7.3(default,Aug312012,18:37:11)
[GCC4.1.220080704(RedHat4.1.2-44)]onlinux2
Type"help","copyright","credits"or"license"formoreinformation.
>>>importpymongo
>>>
#######################解释正常######################################




10、装置mongodb数据库
/usr/sbin/groupadd-g690mongodb
/usr/sbin/useradd-gmongodbmongodb-u690-s/sbin/nologin
wgethttp://fastdl.mongodb.org/linux/mongodb-linux-x86_64-2.0.0.tgz(我的体系是64位)
tarzxvfmongodb-linux-x86_64-2.0.0.tgz
mvmongodb-linux-x86_64-2.0.0/usr/local/
ln-s/usr/local/mongodb/bin/*/bin/

mkdir-p/data/db/
chown-Rmongodb.mongodb/data/db/





11、启动:mongdb
nohupmongod--dbpath/data/db&
mongod--fork--port25000--auth--dbpath/data/db/--logpath/data/mongodb.log(日记文件最好与数据文件放统一个处所,默许端口27017,这里应用25000)




12、检查端口
[root@localhostdata]#netstat-ln|grep-E"25000|26000"
tcp000.0.0.0:250000.0.0.0:*LISTEN
tcp000.0.0.0:260000.0.0.0:*LISTEN
unix2[ACC]STREAMLISTENING288568/tmp/mongodb-25000.sock




13、上岸测试
[root@localhostdata]#mongo--host192.168.250.109:25000
MongoDBshellversion:2.2.0
connectingto:192.168.250.109:25000/test
>



web治理:http://IP:26000

说明下参数
dbpath:数据文件寄存路径,每一个数据库会在个中创立一个子目次。
logpath:毛病日记文件
fork:今后台Daemon情势运转办事
port:对外办事端口默许端口27017。Web治理端口在这个port的基本上+1000,这里可使用http://IP:26000治理

本文出自“游造技巧博客”博客,请务必保存此出处http://youzao.blog.51cto.com/3946111/987292


小知识:CentOS是基于RedHatEnterpriseLinux(收费昂贵但口碑极佳)的源代码再编译出来的免费版,因此不仅继承RHEL优越的稳定性,还提供免费更新,
作者: 小女巫    时间: 2015-1-16 23:38
标题: Linux教程之nginx+web.py+spawn-fcgi+mongodb搭建
即便是非英语国家的人发布技术文档,Linux也都首先翻译成英语在国际学术杂志和网络上发表。
作者: 愤怒的大鸟    时间: 2015-1-26 10:06
linux鸟哥的私房菜,第三版,基础篇,网上有pdf下的,看它的目录和每章的介绍就行了,这个绝对原创!
作者: 不帅    时间: 2015-2-4 20:37
通过一条缓慢的调制解调器线路,它也能操纵几千公里以外的远程系统。
作者: 蒙在股里    时间: 2015-3-1 09:42
熟读Linux系统有关知识,如系统目录树,有关内容可购书阅读或搜索论坛。
作者: 深爱那片海    时间: 2015-3-10 18:30
学习Linux系统在服务中的配置方法及使用方法。Linux在服务器中应用相当广,应对常用的apache,samba,ftp等服务器基本配置清楚了解。[重点,应巩固学习]
作者: 莫相离    时间: 2015-3-17 11:08
即便是非英语国家的人发布技术文档,Linux也都首先翻译成英语在国际学术杂志和网络上发表。
作者: 灵魂腐蚀    时间: 2015-3-24 10:10
我们自学,就这个循环的过程中,我们学习了基本操作,用vi,shell,模拟内存的分配过程等一些OS管理。




欢迎光临 仓酷云 (http://ckuyun.com/) Powered by Discuz! X3.2