LNMP架构部署

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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

技术分享图片

开启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架构

    # vi /var/www/bt/index.php
    <?php
    phpinfo();
    ?>
    
     在网页测试输入“http://192.168.100.102/index.php”

    技术分享图片

以上是关于LNMP架构部署的主要内容,如果未能解决你的问题,请参考以下文章

LNMP架构部署!

LNMP源码编译安装及一键部署LNMP架构

部署社交网站-SVN 与 LNMP架构

LNMP架构部署

LNMP网站架构

Lnmp架构部署动态网络环境