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

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

        眾所周知,LAMP 平臺(tái)是目前應(yīng)用最為廣泛的網(wǎng)站服務(wù)器架構(gòu),其中的“A”對(duì)應(yīng)著Web服務(wù)軟件Apache HTTP Server。隨著Nginx在企業(yè)中的使用越來(lái)越多,LNMP(或LEMP)架構(gòu)也受到越來(lái)越多Linux系統(tǒng)工程師的青睞,其中的“E”就來(lái)自于Nginx的發(fā)音[engine x]。就像構(gòu)建LAMP平臺(tái)一一樣, 構(gòu)建LNMP平臺(tái)也需要Linux服務(wù)器、MySOL數(shù)據(jù)庫(kù)和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            //開(kāi)啟stub_status狀態(tài)統(tǒng)計(jì)模塊//

        make
        make install

        2.制作啟動(dòng)腳本

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

        —–檢查、啟動(dòng)、重啟、停止——–
        nginx -t        //檢查
        nginx          //啟動(dòng)
        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  //開(kāi)機(jī)自啟動(dòng)
        service nginx start

        第二步:安裝MySQL

        這里以版本5.5.24為例

        1.編譯安裝MySQL

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

        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ù)制啟動(dòng)腳本
        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ù)庫(kù)

        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.啟動(dòng)MySQL服務(wù)

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

        service mysqld start

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

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

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

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

        //首先安裝GD庫(kù)及GD庫(kù)關(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的主配置文件,開(kāi)啟ZendGuardLoader模塊

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

        第四步:配置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模塊的最大進(jìn)程數(shù)

        pm.start_servers = 20  //啟動(dòng)時(shí)開(kāi)啟的進(jìn)程數(shù)

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

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

        (3)啟動(dòng)PHP-FPM模塊,進(jìn)程使用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平臺(tái)架構(gòu)

        2.配置Nginx支持PHP解析

        (1)在Nginx的主配置文件中的server{}配置段,將PHP的網(wǎng)頁(yè)請(qǐ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;        //默認(rèn)文件是index.php
                    include        fastcgi.conf;  //包含fastcgi.conf配置文件
                }

        nginx -t  //檢測(cè)語(yǔ)法

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

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

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

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

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

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

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

        mysql -u root -p

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

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

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

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

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

        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平臺(tái)架構(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.訪問(wèn)瀏覽器,安裝論壇

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

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

        贊(0)
        分享到: 更多 (0)
        網(wǎng)站地圖   滬ICP備18035694號(hào)-2    滬公網(wǎng)安備31011702889846號(hào)
        主站蜘蛛池模板: 无码日韩精品一区二区人妻| 亚洲精品高清国产一线久久| 在线观看国产精品普通话对白精品| 国产精品666| 亚洲福利精品一区二区三区| 国产精品无码DVD在线观看| 91精品在线看| 精品久久久久香蕉网| 亚洲无码精品浪潮| 久久精品国产99国产精品| 一区二区三区四区精品视频| 99在线精品视频| 国产精品网站在线观看免费传媒 | 欧美精品v欧洲精品| 久久久久国产成人精品亚洲午夜| 91麻精品国产91久久久久| 国产精品视频免费观看| 精品福利视频一区二区三区 | 国产精品自产拍在线观看花钱看| 国产精品爽爽va在线观看网站| 久久久久人妻精品一区| 一本色道久久88—综合亚洲精品| 日韩精品无码永久免费网站 | 久草热8精品视频在线观看| 国产成人精品免费视频大全| 亚洲人成亚洲精品| 欧美精品免费观看二区| 欧美精品在线一区| 久久国产精品久久精品国产| 精品福利一区二区三| 国产精品专区第二| 国产一区二区精品久久| 国产国产成人精品久久| 500av导航大全精品| 99爱在线精品免费观看| www.久久精品| 久久91精品国产91久久麻豆| 四虎影视884a精品国产四虎| wwwvr高清亚洲精品二区| 国产AⅤ精品一区二区三区久久| 99久久夜色精品国产网站|