安裝配置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資料庫的安裝就介紹到這裡了,有興趣的可參考文章過程非常的仔細。