LNMP架構部署

  • LNMP架構簡介
    LNMP就是:Linux系統下Nginx+MySQL+PHP這種網站服務器架構。組合到一起,成爲一個免費、高效、擴展性強的網站服務系統。
    Nginx 安裝非常的簡單,配置文件 非常簡潔(還能夠支持perl語法),Bugs非常少的服務器: Nginx 啓動特別容易,並且幾乎可以做到不間斷運行,即使運行數個月也不需要重新啓動。你還能夠在 不間斷服務的情況下進行軟件版本的升級。

  • 部署LNMP
    安裝nginx
    之前的文章中寫過Nginx詳細配置方法
    地址:http://blog.51cto.com/13630803/2128888

* 安裝mysql

    # 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    

複製/opt/mysql-5.5.24/support-files 目錄下的 my-medium.cnf 保存到/etc 命名 my.cnf
複製/opt/mysql-5.5.24/support-files 目錄下的 my.server 保存到/etc/init.d 命名 mysqld
設置 /etc/init.d/mysql 文件的權限
添加mysqld 服務並開啓 3 5 的開機自啓動

# 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 

創建一個mysql用戶 禁止shell登錄
設置/usr/local/mysql 的屬主爲mysql

# 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
# vi /etc/init.d/mysqld
basedir=/usr/local/mysql
datadir=/home/mysql
# service mysqld start
  • 安裝配置PHP
    首先安裝GD庫及GD庫關聯程序

    # yum -y install \
    gd \
    libxml2-devel \
    libjpeg-devel \
    libpng-devel \
    zlib-devel \
    fontconfig-devel \
    openssl-devel \
    bzip2-devel

解壓縮安裝包

    # tar xjvf /opt/lamp/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

安裝編譯安裝

# make && make install

優化調整PHP

# cp php.ini-development /usr/local/php5/php.ini
# ln -s /usr/local/php5/bin/* /usr/local/bin/
# ln -s /usr/local/php5/sbin/* /usr/local/sbin/

爲PHP安裝加速器

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

配置PHP識別加速器

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

LNMP架構部署

開啓nginx的PHP支持

# cd /usr/local/php5/etc/
# cp  php-fpm.conf.default php-fpm.conf
# useradd -M -s /sbin/nologin php
# vi php-fpm.conf     //修改參數
pid = run/php-fpm.pid
user = php
group = php
pm.max_children=50
pm.start_servers = 20
pm.min_spare_servers = 5
pm.max_spare_servers = 35

# /usr/local/sbin/php-fpm    //啓用該模塊
# netstat -tnal | grep 9000    //查看

# vi /usr/local/nginx/conf/nginx.conf
location ~ \.php$ {
        root           /var/www/bt;
        fastcgi_pass   127.0.0.1:9000;
        fastcgi_index  index.php;
        include        fastcgi.conf;
    }

LNMP架構部署

  • 測試下LNMP架構

    # vi /var/www/bt/index.php
    <?php
    phpinfo();
    ?>
    
     在網頁測試輸入“http://192.168.100.102/index.php”

    LNMP架構部署

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章