站長資訊網
        最全最豐富的資訊網站

        源碼編譯LNMP平臺架構

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

        第一步:安裝Nginx

        1.編譯安裝Nginx

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

        //創建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狀態統計模塊//

        make
        make install

        2.制作啟動腳本

        ln -s /usr/local/nginx/sbin/nginx /usr/local/sbin/  //讓系統識別命令

        —–檢查、啟動、重啟、停止——–
        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.優化調整

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

        3.初始化數據庫

        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服務

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

        service mysqld start

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

        第三步:安裝PHP解析環境

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

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

        //首先安裝GD庫及GD庫關聯程序
        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.復制模板文件作為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環境

        1.PHP-FPM模塊配置

        (1)復制模板文件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  //創建php用戶

        vi php-fpm.conf //修改

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

        user = php              //表示由php用戶調用
        group = php

        pm.max_children=50      //fpm模塊的最大進程數

        pm.start_servers = 20  //啟動時開啟的進程數

        pm.min_spare_servers = 5  //最小空閑進程數

        pm.max_spare_servers = 35 //最大空閑進程數

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

        //設置軟鏈接,方便命令使用
        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平臺架構

        2.配置Nginx支持PHP解析

        (1)在Nginx的主配置文件中的server{}配置段,將PHP的網頁請求轉發給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文件轉發給FPM模塊
                    fastcgi_index  index.php;        //默認文件是index.php
                    include        fastcgi.conf;  //包含fastcgi.conf配置文件
                }

        nginx -t  //檢測語法

        源碼編譯LNMP平臺架構

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

        service nginx restart      //重啟服務

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

        在瀏覽器中訪問PHP文件
        源碼編譯LNMP平臺架構

        第五步:創建論壇

        1.創建bbs數據庫并授權

        mysql -u root -p

        mysql> CREATE DATABASE bbs;  //創建一個數據庫//

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

        mysql>flush privileges; //刷新數據庫//

        源碼編譯LNMP平臺架構

        2.測試數據庫

        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平臺架構

        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平臺架構
        源碼編譯LNMP平臺架構
        源碼編譯LNMP平臺架構
        源碼編譯LNMP平臺架構
        源碼編譯LNMP平臺架構
        源碼編譯LNMP平臺架構

        贊(0)
        分享到: 更多 (0)
        網站地圖   滬ICP備18035694號-2    滬公網安備31011702889846號
        主站蜘蛛池模板: 亚洲av无码国产精品色午夜字幕 | 国产亚洲精品国产| 国产精品免费久久久久久久久| 久久99精品久久只有精品| 久久国产精品波多野结衣AV| 精品国产欧美一区二区| 午夜精品射精入后重之免费观看| 精品无码人妻久久久久久| 国内精品手机在线观看视频| 久久精品亚洲一区二区三区浴池| 午夜精品久久影院蜜桃| 久久精品成人欧美大片| 国产精品国产三级国产a| 青青草原综合久久大伊人精品| 国产精品区一区二区三在线播放| 亚洲第一极品精品无码久久| 完整观看高清秒播国内外精品资源 | 福利姬在线精品观看| 亚洲精品制服丝袜四区| 人妻偷人精品成人AV| 国产内地精品毛片视频| www亚洲欲色成人久久精品| 好属妞这里只有精品久久| 国产精品女同久久久久电影院| 人妻少妇精品中文字幕AV| 亚洲一区爱区精品无码| 亚洲国产午夜中文字幕精品黄网站| 久久久久国产成人精品亚洲午夜| 国产精品亚洲高清一区二区 | 色久综合网精品一区二区| 中文字幕一区二区三区日韩精品 | 国产精品日本一区二区不卡视频 | 一级成人精品h| 永久免费精品视频| 日韩精品在线观看视频| 四虎国产精品永久地址99| 国产精品嫩草视频永久网址| 98视频精品全部国产| 成人精品在线视频| 99热国内精品| 四虎成人www国产精品|