Centos6.5安裝配置nginx與mongodb環境教程

來源:互聯網
上載者:User

安裝配置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 支援Regex。只是準備,並不安裝,是為了避免在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=<mongodb-install-directory>:$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資料庫的安裝就介紹到這裡了,有興趣的可參考文章過程非常的仔細。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.