站長資訊網(wǎng)
最全最豐富的資訊網(wǎng)站

源碼編譯LNMP平臺架構(gòu)

眾所周知,LAMP 平臺是目前應(yīng)用最為廣泛的網(wǎng)站服務(wù)器架構(gòu),其中的“A”對應(yīng)著Web服務(wù)軟件Apache HTTP Server。隨著Nginx在企業(yè)中的使用越來越多,LNMP(或LEMP)架構(gòu)也受到越來越多Linux系統(tǒng)工程師的青睞,其中的“E”就來自于Nginx的發(fā)音[engine x]。就像構(gòu)建LAMP平臺一一樣, 構(gòu)建LNMP平臺也需要Linux服務(wù)器、MySOL數(shù)據(jù)庫和PHP解析環(huán)境,區(qū)別主要在Nginx與PHP的協(xié)作配置上。

第一步:安裝Nginx

1.編譯安裝Nginx

——–安裝依賴包——-
yum -y install pcre-devel zlib-devel gcc gcc-c++ cmake

//創(chuàng)建nginx用戶
useradd -M -s /sbin/nologin nginx

//解壓到/opt
tar xzvf nginx-1.6.0.tar.gz -C /opt

———配置編譯安裝——–
cd /opt/nginx-1.6.0/

 ./configure
–prefix=/usr/local/nginx
–user=nginx
–group=nginx
–with-http_stub_status_module            //開啟stub_status狀態(tài)統(tǒng)計模塊//

make
make install

2.制作啟動腳本

ln -s /usr/local/nginx/sbin/nginx /usr/local/sbin/  //讓系統(tǒng)識別命令

—–檢查、啟動、重啟、停止——–
nginx -t        //檢查
nginx          //啟動
killall -1 nginx    //重啟
killall -3 nginx    //停止

——-制作管理角本——–
vi /etc/init.d/nginx
#!/bin/bash
# chkconfig: – 99 20
# description: Nginx Service Control Script
PROG=”/usr/local/nginx/sbin/nginx”
PIDF=”/usr/local/nginx/logs/nginx.pid”
case “$1” in
  start)
    $PROG
    ;;
  stop)
    kill -s QUIT $(cat $PIDF)
    ;;
  restart)
    $0 stop
    $0 start
    ;;
  reload)
    kill -s HUP $(cat $PIDF)
    ;;
  *)
        echo “Usage: $0 {start|stop|restart|reload}”
        exit 1
esac
exit 0

chmod +x /etc/init.d/nginx
chkconfig –add nginx  //開機自啟動
service nginx start

第二步:安裝MySQL

這里以版本5.5.24為例

1.編譯安裝MySQL

yum -y install ncurses-devel                  //ncurses是字符終端下屏幕控制的基本庫//

tar xzvf mysql-5.5.24.tar.gz -C /opt
cd /opt/mysql-5.5.24
cmake 
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql
-DDEFAULT_CHARSET=utf8
-DDEFAULT_COLLATION=utf8_general_ci
-DWITH_EXTRA_CHARSETS=all
-DSYSCONFDIR=/etc
-DMYSQL_DATADIR=/home/mysql/
-DMYSQL_UNIX_ADDR=/home/mysql/mysql.sock
-DWITH_MYISAM_STORAGE_ENGINE=1
-DWITH_INNOBASE_STORAGE_ENGINE=1
-DWITH_ARCHIVE_STORAGE_ENGINE=1
-DWITH_BLACKHOLE_STORAGE_ENGINE=1
-DENABLED_LOCAL_INFILE=1
-DWITH_SSL=system
-DMYSQL_TCP_PORT=3306
-DENABLE_DOWNLOADS=1
-DWITH_SSL=bundled

make && make install

2.優(yōu)化調(diào)整

cp support-files/my-medium.cnf /etc/my.cnf    //復(fù)制配置文件
cp support-files/mysql.server /etc/init.d/mysqld  //復(fù)制啟動腳本
chmod +x /etc/init.d/mysqld     
chkconfig –add mysqld
chkconfig –level 35 mysqld on
echo “PATH=$PATH:/usr/local/mysql/bin/” >> /etc/profile //配置環(huán)境變量
. /etc/profile            (注意:”.”后面有空格)

3.初始化數(shù)據(jù)庫

useradd -s /sbin/nologin mysql
chown -R mysql.mysql /usr/local/mysql

/usr/local/mysql/scripts/mysql_install_db
–user=mysql
–ldata=/var/lib/mysql
–basedir=/usr/local/mysql
–datadir=/home/mysql

ln -s /var/lib/mysql/mysql.sock  /home/mysql/mysql.sock

4.啟動MySQL服務(wù)

vi /etc/init.d/mysqld    //配置啟動腳本
 basedir=/usr/local/mysql 
 datadir=/home/mysql

service mysqld start

mysqladmin -u root -p password “abc123”  //為root用戶設(shè)置密碼

第三步:安裝PHP解析環(huán)境

•Nginx配置網(wǎng)頁動靜分離、解析PHP,有兩種方法可以選擇:使用PHP的FPM模塊,或者將訪問PHP頁面的Web請求轉(zhuǎn)交給Apache服務(wù)器去處理。
•較新版本的PHP已經(jīng)自帶FPM (FastCGI Process Manager, FastCGI進程管理器)模塊,用來對PHP解析實例進行管理和優(yōu)化解析效率。FastCGI 將靜態(tài)請求和動態(tài)腳本語言分離開,Nginx 專門處理靜態(tài)請求,并轉(zhuǎn)發(fā)動態(tài)請求給PHP-FPM。單服務(wù)器的
LNMP架構(gòu)通常使用FPM的方式來解析PHP。

1.使用yum工具安裝PHP的依賴包。

//首先安裝GD庫及GD庫關(guān)聯(lián)程序
yum -y install
gd
libxml2-devel
libjpeg-devel
libpng-devel
zlib-devel
fontconfig-devel
openssl-devel
bzip2-devel

2.編譯安裝PHP

tar jxvf php-5.4.5.tar.bz2 -C /opt
cd /opt/php-5.4.5
./configure
–prefix=/usr/local/php5
–with-gd
–with-zlib
–with-mysql=/usr/local/mysql
–with-config-file-path=/usr/local/php5
–enable-mbstring
–with-jpeg-dir
–with-openssl
–disable-ipv6
–enable-fpm    //添加fpm模塊

make && make install

3.復(fù)制模板文件作為PHP的主配置文件

cp php.ini-development /usr/local/php5/php.ini

4.為PHP安裝加速器,用于提高PHP的解析效率

tar xzvf ZendGuardLoader-php-5.3-linux-glibc23-i386.tar.gz -C /opt
cd /opt/ZendGuardLoader-php-5.3-linux-glibc23-i386/php-5.3.x
cp ZendGuardLoader.so /usr/local/php5/lib/php

修改PHP的主配置文件,開啟ZendGuardLoader模塊

vi /usr/local/php5/php.ini
[Zend Guard Loader]
zend_extension=/usr/local/php5/lib/php/ZendGuardLoader.so
zend_loader.enable=1  //1表示開啟

第四步:配置Nginx支持PHP環(huán)境

1.PHP-FPM模塊配置

(1)復(fù)制模板文件php-fpm.conf.default作為PHP-FPM的配置文件

cd /usr/local/php5/etc/
cp  php-fpm.conf.default php-fpm.conf

(2)修改php-fpm.conf配置文件

useradd -M -s /sbin/nologin php  //創(chuàng)建php用戶

vi php-fpm.conf //修改

pid = run/php-fpm.pid    //確定pid文件位置

user = php              //表示由php用戶調(diào)用
group = php

pm.max_children=50      //fpm模塊的最大進程數(shù)

pm.start_servers = 20  //啟動時開啟的進程數(shù)

pm.min_spare_servers = 5  //最小空閑進程數(shù)

pm.max_spare_servers = 35 //最大空閑進程數(shù)

(3)啟動PHP-FPM模塊,進程使用9000端口

//設(shè)置軟鏈接,方便命令使用
ln -s /usr/local/php5/bin/* /usr/local/bin/
ln -s /usr/local/php5/sbin/* /usr/local/sbin/

/usr/local/sbin/php-fpm
netstat -lntup | grep 9000

源碼編譯LNMP平臺架構(gòu)

2.配置Nginx支持PHP解析

(1)在Nginx的主配置文件中的server{}配置段,將PHP的網(wǎng)頁請求轉(zhuǎn)發(fā)給FPM模塊處理

cd /usr/local/nginx/conf/
cp nginx.conf nginx.conf.bak  //修改前做備份
vi nginx.conf

location ~ .php$ {
            root          /var/www/benet;    //php文件所在目錄
            fastcgi_pass  127.0.0.1:9000;    //php文件轉(zhuǎn)發(fā)給FPM模塊
            fastcgi_index  index.php;        //默認文件是index.php
            include        fastcgi.conf;  //包含fastcgi.conf配置文件
        }

nginx -t  //檢測語法

源碼編譯LNMP平臺架構(gòu)

(2)在/var/www/benet下創(chuàng)建php測試頁面

service nginx restart      //重啟服務(wù)

mkdir -p /var/www/benet    //創(chuàng)建目錄
vi /var/www/benet/index.php  //創(chuàng)建php文件
<?php
phpinfo();
?>

在瀏覽器中訪問PHP文件
源碼編譯LNMP平臺架構(gòu)

第五步:創(chuàng)建論壇

1.創(chuàng)建bbs數(shù)據(jù)庫并授權(quán)

mysql -u root -p

mysql> CREATE DATABASE bbs;  //創(chuàng)建一個數(shù)據(jù)庫//

mysql> GRANT all ON bbs.* TO ‘bbsuser’@’%’ IDENTIFIED BY ‘admin123’;  //把bbs數(shù)據(jù)庫里面所有表的權(quán)限授予給bbSUSEr,并設(shè)置密碼//

mysql>flush privileges; //刷新數(shù)據(jù)庫//

源碼編譯LNMP平臺架構(gòu)

2.測試數(shù)據(jù)庫

vi /var/www/benet/index.php
<?php
$link=mysql_connect(‘192.168.26.153′,’bbsuser’,’admin123′);
if($link) echo “Success!!”;
else echo “Fail!!”;
mysql_close();
phpinfo();
?>

源碼編譯LNMP平臺架構(gòu)

3.安裝論壇

unzip Discuz_X3.3_SC_UTF8.zip -d /opt/dis  //解壓Discuz

cd /opt/dis

cp -r upload/ /var/www/benet/bbs

cd /var/www/benet/bbs
chown -R php ./config    //修改屬性
chown -R php ./data
chown -R php ./uc_client

chown -R php ./uc_server/data

4.訪問瀏覽器,安裝論壇

http://192.168.26.153/bbs/install/index.php

源碼編譯LNMP平臺架構(gòu)
源碼編譯LNMP平臺架構(gòu)
源碼編譯LNMP平臺架構(gòu)
源碼編譯LNMP平臺架構(gòu)
源碼編譯LNMP平臺架構(gòu)
源碼編譯LNMP平臺架構(gòu)

贊(0)
分享到: 更多 (0)
網(wǎng)站地圖   滬ICP備18035694號-2    滬公網(wǎng)安備31011702889846號
精品久久久一二三区| 人妻精品久久无码专区精东影业| 亚洲欧洲国产日韩精品| 国产精品麻豆成人AV网| 国产精品久久久久天天影视| 日韩精品无码中文字幕一区二区| 中文精品99久久国产| 国产精品亚洲综合一区| 精品400部自拍视频在线播放| 亚洲AV无码专区日韩| 国产精品四虎在线观看免费| 99久久综合精品五月天| 亚洲精品自偷自拍无码| 模特私拍国产精品久久| 1000部精品久久久久久久久| 国产乱码精品一区二区三区中| 91精品国产麻豆国产自产在线| 精品一区二区三区在线成人 | 91老司机深夜福利精品视频在线观看 | 中文字幕精品亚洲无线码一区| 久久国产成人亚洲精品影院| 日本精品自产拍在线观看中文| 日韩免费一级毛片| 日韩午夜激情视频| 日韩精品国产一区| 日韩美一区二区三区| 日韩精品无码人妻免费视频| 精品一区二区三区中文| 午夜三级国产精品理论三级 | 亚洲av永久无码精品漫画| 国产精品毛片无遮挡| 国产成人亚洲综合无码精品| 亚洲av永久无码精品秋霞电影影院 | 国精品午夜福利视频不卡麻豆 | 精品免费国产一区二区三区| 青青青国产精品视频| 青青青亚洲精品国产| 国产精品嫩草影院永久一| 国产精品国产三级国产普通话一| 国产精品哟哟视频| 日韩精品无码一区二区三区 |