一聚教程网:一个值得你收藏的教程网站

最新下载

热门教程

Centos6.5安装配置nginx与mongodb环境教程

时间:2014-12-04 编辑:简简单单 来源:一聚教程网

安装配置nginx

方法一:安装最新版的nginx

1、下载nginx1.7.4

注:下载地址:http://nginx.org/download/nginx-1.7.4.tar.gz
wget -c http://nginx.org/download/nginx-1.7.4.tar.gz 
2、安装

注:默认安装到/usr/local/nginx
tar -zxvf nginx-1.7.4.tar.gz  
cd nginx-1.7.4  
./configure   
make && make install #注:会出来一堆东西 
3、运行

/usr/local/nginx/sbin/nginx

查看nginx是否正常
[root@aaa nginx-1.2.4]# /usr/local/nginx/sbin/nginx -t 
出现如下代码: nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful 安装成功!

方法二:

编译安装nginx,(参考我同事的安装方法) 安装 OpenSSL(方法自行搜索,或者yum install openssl) 准备 pcre 库 pere 是为了让 nginx 支持正则表达式。只是准备,并不安装,是为了避免在64位系统中出现错误。

wget ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.30.tar.gz
//在/usr/local目录下解压
tar -zxf pcre-8.30
准备 zlib 库,同样只是准备,并不安装,是为了避免在64位系统中出现错误。

wget http://sourceforge.net/projects/libpng/files/zlib/1.2.6/zlib-1.2.6.tar.gz/download
//在/usr/local目录下解压
tar -zxf zlib-1.2.6.tar.gz
编译安装
1、下载、创建临时目录

wget http://nginx.org/download/nginx-1.1.9.tar.gz
tar -zxf nginx-1.1.9.tar.gz
cd nginx-1.1.9
mkdir -p /var/tmp/nginx
2、编译与安装

./configure --prefix=/usr/local/nginx \
--pid-path=/var/run/nginx.pid \
--lock-path=/var/lock/nginx.lock \
--with-http_ssl_module \
--with-http_dav_module \
--with-http_flv_module \
--with-http_realip_module \
--with-http_gzip_static_module \
--with-http_stub_status_module \
--with-mail --with-mail_ssl_module \
--with-pcre=../pcre-8.30 \
--with-zlib=../zlib-1.2.6 \
--with-debug \
--http-client-body-temp-path=/var/tmp/nginx/client \
--http-proxy-temp-path=/var/tmp/nginx/proxy \
--http-fastcgi-temp-path=/var/tmp/nginx/fastcgi \
--http-uwsgi-temp-path=/var/tmp/nginx/uwsgi \
--http-scgi-temp-path=/var/tmp/nginx/scgi

make && make install
ln -s /usr/local/nginx/sbin/nginx /usr/sbin/
可参考:Nginx编译参数解析

–prefix #nginx安装目录,默认在/usr/local/nginx
–pid-path #pid问件位置,默认在logs目录
–lock-path #lock问件位置,默认在logs目录
–with-http_ssl_module #开启HTTP SSL模块,以支持HTTPS请求。
–with-http_dav_module #开启WebDAV扩展动作模块,可为文件和目录指定权限
–with-http_flv_module #支持对FLV文件的拖动播放
–with-http_realip_module #支持显示真实来源IP地址
–with-http_gzip_static_module #预压缩文件传前检查,防止文件被重复压缩
–with-http_stub_status_module #取得一些nginx的运行状态
–with-mail #允许POP3/IMAP4/SMTP代理模块
–with-mail_ssl_module #允许POP3/IMAP/SMTP可以使用SSL/TLS
–with-pcre=../pcre-8.11 #注意是未安装的pcre路径
–with-zlib=../zlib-1.2.5 #注意是未安装的zlib路径
–with-debug #允许调试日志
–http-client-body-temp-path #客户端请求临时文件路径
–http-proxy-temp-path #设置http proxy临时文件路径
–http-fastcgi-temp-path #设置http fastcgi临时文件路径
–http-uwsgi-temp-path=/var/tmp/nginx/uwsgi #设置uwsgi 临时文件路径
–http-scgi-temp-path=/var/tmp/nginx/scgi #设置scgi 临时文件路径
3、开机自启动 nginx 脚本

vim /etc/init.d/nginx
进入编辑模式,键入以下脚本内容:

#!/bin/bash 

#chkconfig: - 85 15 
#description: Nginx is a World Wide Web server. 
#processname: nginx 

nginx=/usr/local/nginx/sbin/nginx 
conf=/usr/local/nginx/conf/nginx.conf 

case $1 in 
       start) 
              echo -n "Starting Nginx" 
              $nginx -c $conf 
              echo " done" 
       ;; 

       stop) 
              echo -n "Stopping Nginx" 
              killall -9 nginx 
              echo " done" 
       ;; 

       test) 
              $nginx -t -c $conf 
       ;; 

        reload) 
              echo -n "Reloading Nginx" 
              ps auxww | grep nginx | grep master | awk '{print $2}' | xargs kill -HUP 
              echo " done" 
       ;; 

        restart) 
                $0 stop 
                $0 start 
       ;; 

       show) 
              ps -aux|grep nginx 
       ;; 

       *) 
              echo -n "Usage: $0 {start|restart|reload|stop|test|show}" 
       ;; 

esac

保存以上脚本后,执行以下操作

chmod +x /etc/init.d/nginx
chkconfig --add nginx 
chkconfig nginx on

可以使用nginx -t来检验语法是否有问题

安装配置mongodb


mongodb官网上下载最新版本的mongodb,按照官网上的说明进行安装:

首先运行如下命令:

curl -O http://downloads.mongodb.org/linux/mongodb-linux-x86_64-2.6.3.tgz
其次,运用tar 进行解压缩,按照如下命令

tar -zxvf mongodb-linux-x86_64-2.6.3.tgz
第三,新建mongodb文件夹,把解压了的mongodb-linux-x86_64-2.6.3复制到mongodb下面。

按照如下命令

mkdir -p mongodb
cp -R -n mongodb-linux-x86_64-2.6.3/ mongodb
第四,更改环境变量,在路径 /etc/下面,找到bashrc文件

export PATH=:$PATH
替换成你的mongodb路径就可以了

第五,创建mongodb的dbdata的路径

mkdir -p  /usr/local/mongo/data 
mongod --dbpath /usr/local/mongo/data
第六,进入mongo的文件夹,运行mongo命令,启动mongo就可以了。

上面的安装方法比较简单,但是有个问题,就是mongo启动必须同时制定data,也就是要运行mongod --dbpath /usr/local/mongo/data,比较繁琐,下面介绍一种一劳永逸的安装办法,把mongo的启动添加到服务当中。但是必须制定安装的版本,本例以mongodb-src-r1.8.1.tar.gz 具体可以参考博客:http://www.9958.pw/post/centos_mongodb 注:每个版本必须和博客中一致,下面对rin博客的这篇文章做一下转载!

下载所需软件(下载到/usr/local/src目录)

#wget http://downloads.mongodb.org/src/mongodb-src-r1.8.1.tar.gz
#wget http://ftp.mozilla.org/pub/mozilla.org/js/js-1.7.0.tar.gz
#wget http://sourceforge.net/projects/pcre/files/pcre/8.12/pcre-8.12.tar.bz2
安装 python

(注:scons必须是2.0.1的,具体下载地址是http://prdownloads.sourceforge.net/scons/scons-2.0.1.tar.gz):

#yum install -y python-devel 
安装scons: 下载scons(http://www.scons.org/download.php)
tar zxf scons-2.0.1.tar.gz
cd scons-2.0.1
python setup.py install
安装spidermonkey库,

下载支持c的js api库 js-1.7.0.tar.gz(http://ftp.mozilla.org/pub/mozilla.org/js/)

yum install -y boost boost-devel

tar zxvf js-1.7.0.tar.gz
cd js/src/
export CFLAGS="-DJS_C_STRINGS_ARE_UTF8"
make -f Makefile.ref
JS_DIST=/usr gmake -f Makefile.ref export
cd ../..
安装pcre

tar zxf pcre-8.12.tar.gz
cd pcre-8.12
./configure --enable-utf8 --enable-unicode-properties
make && make install
cd ..
安装MongoDB

tar zxf mongodb-src-r1.8.1.tar.gz
 cd mongodb-src-r1.8.1
scons all   // scons可能出现找不到pcre库的现象(修改/etc/ld.so.conf也无用,是scons自身的问题),这时需要打开mongodb-src-r1.8.0下的SConstruct,查找【 linux2"== os.sys.platform:】,在LIBPATH后面添加上pcrecpp库的安装路径,在LIBS后添加上pcrecpp库名,再重新scons all即可(操作:vim SConstruct;原来:env.Append( LIBPATH=["/usr/lib64" , "/lib64" ] ) ;修改后env.Append( LIBPATH=["/usr/lib64" , "/lib64" ,"/usr/local/pcre/lib"]);  接下来在env.Append( LIBS=["pthread"] )后面添加 env.Append( LIBS=["libpcrecpp"] )  )
scons --prefix=/usr/local/mongo install
如果需要安装lib和head,使用如下方式安装
scons --prefix=/usr/local/mongo --full install
创建配置文件

mkdir -p /usr/local/mongo/etc /usr/local/mongo/data /usr/local/mongo/log/ /usr/local/mongo/repair
vim  /usr/local/mongo/etc/mongo.conf
在mongo.conf中添加下面的内容
dbpath = /usr/local/mongo/data
logpath = /usr/local/mongo/mongodb.log
repairpath = /usr/local/mongo/repair
pidfilepath = /usr/local/mongo/mongodb.pid
directoryperdb = true
logappend = true
noauth = true
port = 27017
maxConns = 1024
fork = true
rest = true
quota = true
quotaFiles = 1024
nssize = 16
启动mongodb

ln -s /usr/local/mongo/bin/mongod /usr/bin/mongod
mongod -f /usr/local/mongo/etc/mongo.conf
看看是不是启动起来了,但是使用这种方式管理mongodb服务器很不明智,我们完善一下:

mkdir -p /usr/local/mongo/srv
vim /usr/local/mongo/srv/mongodb-start
添加下面的内容

#!/bin/sh
mongod -f /usr/local/mongo/etc/mongo.conf

vim /usr/local/mongo/srv/mongodb-stop
添加下面的内容

#!/bin/bash
pid=`ps -o pid,command ax | grep mongod | awk '!/awk/ && !/grep/ {print $1}'`;
if [ "${pid}" != "" ]; then
    kill -2 ${pid};
fi
添加执行权限

chmod a+x /usr/local/mongo/srv/mongodb-start
chmod a+x /usr/local/mongo/srv/mongodb-stop
vim /etc/rc.d/init.d/mongodb
添加下面的内容

#! /bin/sh
#
# mongodb – this script starts and stops the mongodb daemon
#
# chkconfig: - 85 15
# description: MongoDB is a non-relational database storage system.
# processname: mongodb
# config: /usr/local/mongo/etc/mongo.conf
# pidfile: /usr/local/mongo/mongodb.pid
PATH=/usr/local/mongo/bin:/sbin:/bin:/usr/sbin:/usr/bin
NAME=mongodb
test -x $DAEMON || exit 0
set -e
case "$1" in
  start)
        echo -n "Starting MongoDB... "
        /usr/local/mongo/srv/mongodb-start
        ;;
  stop)
        echo -n "Stopping MongoDB... "
        /usr/local/mongo/srv/mongodb-stop
        ;;
      *)
            N=/etc/init.d/$NAME
            echo "Usage: $N {start|stop}" >&2
            exit 1
            ;;
    esac
    exit 0

添加服务

chmod a+x /etc/rc.d/init.d/mongodb
chkconfig --add mongodb
chkconfig --level 345 mongodb on
/etc/rc.d/init.d/mongodb start

好了到这里关于nginx与mongodb数据库的安装就介绍到这里了,有兴趣的可参考文章过程非常的仔细。

热门栏目