LNMP环境由Linux+Nginx+Mysql+Php构成,作为一种成熟的网站架构,具有着方便,运行稳定的特点。
Linux:开源的操作系统,安全且高效。
Nginx:高性能的HTTP和反向代理服务器,不仅性能稳定且功能丰富,运维简单,处理静态文件速度快,消耗资源小。
Mysql:小型数据库,灵活性高,利于管理。
Php:动态编程语言,适用于web网页开发。
LNMP的搭建:
1.Nginx的安装:
a.上传所需要的软件包
想要安装nginx,需要先安装libevent
拆解软件包 tar -zxvf libevent-2.0.16-stable.tar.gz -C /usr/local/src/
[root@localhost nginx]# cd /usr/local/src/libevent-2.0.16-stable/
[root@localhost libevent-2.0.16-stable]# ./configure --prefix=/usr/local/libevent 指明安装路径
make && make install 编译安装
处理libevent的库文件
[root@localhost libevent]# vim /etc/ld.so.conf.d/libevent.conf 指明库文件位置
编辑文档里面填上 /usr/local/libevent/lib 即可
处理头文件
[root@localhost libevent]# ln -s /usr/local/libevent/include/ /usr/include/libevent 做 符号链接
b.安装pcre
两者安装上即可[root@localhost Server]# rpm -ivh pcre-devel-6.6-2.el5_1.7.i386.rpm
c.安装nginx
groupadd -r nginx 建组
useradd -r -g nginx -s /bin/nologin -M nginx 用户
拆包 [root@localhost nginx]# tar -zxvf nginx-1.0.11.tar.gz -C /usr/local/src/
[root@localhost nginx-1.0.11] ./configure \ ( 默认安装在/usr/local/nginx目录下)
--conf-path=/etc/nginx/nginx.conf \ 配置文件的位置
--error-log-path=/var/log/nginx/error.log \
--http-log-path=/var/log/nginx/access.log \
--pid-path=/var/run/nginx/nginx.pid \
--lock-path=/var/lock/nginx.lock \
--user=nginx \
--group=nginx \
--with-http_ssl_module \
--with-http_flv_module \
--with-http_stub_status_module \
--with-http_gzip_static_module \
--http-client-body-temp-path=/var/tmp/nginx/client/ \
--http-proxy-temp-path=/var/tmp/nginx/proxy/ \
--http-fastcgi-temp-path=/var/tmp/nginx/fcgi/ \
--with-pcre
make && make install //编译安装
d.控制脚本编写
[root@localhost nginx]# cd /etc/init.d/ linux中控制脚本所在目录
vim nginx
#!/bin/bash
prog=/usr/local/nginx/sbin/nginx
pidfile=/var/run/nginx/nginx.pid
lockfile=/var/lock/nginx.lock
start(){
[ -f $lockfile ] && echo "nginx is started" && exit
echo -n "nginx is starting......."
sleep 1
$prog && touch $lockfile && echo "ok" ||echo "file"
}
stop (){
[ ! -f $lockfile ] && echo "nginx is stoped" && exit
echo -n "nginx is stoping......"
sleep 1
$prog -s stop && rm -rf $lockfile && echo "ok" ||echo "file"
}
status(){
[ -f $pidfile ] && echo "the nginx server is runing...pid is `cat $pidfile`" ||echo "the nginx server is stoped"
}
case "$1" in
start)
start
;;
stop)
stop
;;
restart)
stop
start
;;
status)
status
;;
*)
echo "USAGE: start|stop|status|restart"
;;
esac
2.mysql的安装
tar -zxvf mysql-5.5.15-linux2.6-i686.tar.gz -C /usr/local 拆解软件包
ln -s mysql-5.5.15-linux2.6-i686 mysql 做个链接 较 方便
查看mysql的安装文件
a.安装方法
[root@localhost mysql]# groupadd -r mysql //建立用户组
[root@localhost mysql]# useradd -r -g mysql mysql -s /sbin/nologin // 增加用户
[root@localhost mysql]# chown -R mysql:mysql . // 改变所属
[root@localhost mysql]# scripts/mysql_install_db --user=mysql //初始化mysql
[root@localhost mysql]# chown -R root .
[root@localhost mysql]# chown -R mysql data
[root@localhost mysql]# cp support-files/my-medium.cnf /etc/my.cnf // 配置文件
[root@localhost mysql]# cp support-files/mysql.server /etc/init.d/mysqld //可执行文件
[root@localhost mysql]# service mysqld start //启动mysql
b.设置bin文件
[root@localhost mysql]# vim /etc/profile
[root@localhost mysql]# . /etc/profile // 刷新环境变量
c.设置lib文件
[root@localhost mysql]# vim /etc/ld.so.conf.d/mysql.conf
加入/usr/local/mysql/lib 即可
[root@localhost mysql]# ldconfig //刷新
[root@localhost mysql]# ldconfig -pv |grep mysql //查询
d.设置 include文件
[root@localhost mysql]# ln -s /usr/local/mysql/include/ /usr/include/mysql 符号链接
3.php的安装
1. tar -zxvf php-5.4.13.tar.bz2 -C /usr/local/src/ 拆解软件包
2.安装选项
./configure \
--prefix=/usr/local/php \ //安装路径
--enable-fpm \
--enable-sockets \
--with-mysql=/usr/local/mysql \
--with-mysqli=/usr/local/mysql/bin/mysql_config \
--enable-mbstring \
--enable-xml \
--with-png-dir \
--with-png \
--with-jpeg-dir \
--with-zlib \
--with-freetype-dir \
--with-config-file-path=/etc/php \
--with-config-file-scan-dir=/etc/php5.d
3.编译安装
make && make install
4.bin文件的处理
[root@localhost php-5.4.13]#
mkdir /etc/php /etc/php5.d
5..php.ini 文件
进入源码目录
cp php.ini-production /etc/php/php.ini
[root@localhost php-5.4.13]# cp php.ini-production /etc/php/php.ini
[root@localhost php-5.4.13]# cp sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm
[root@localhost php-5.4.13]# chmod a+x /etc/init.d/php-fpm // 改变权限
[root@localhost php-5.4.13]# cd /usr/local/php/etc/
[root@localhost etc]# cp php-fpm.conf.default php-fpm.conf
[root@localhost etc]# service php-fpm start
Starting php-fpm done
[root@localhost etc]# netstat -tulnp |grep fpm //查看端口
tcp 0 0 127.0.0.1:9000 0.0.0.0:* LISTEN 28270/php-fpm.conf)
[root@localhost etc]#
chkconfig --add php-fpm //开机启动
[root@localhost etc]# chkconfig --list |grep php-fpm //查看开机启动
4.nginx+php 的结合
编辑配置文档
[root@localhost etc]# vim /etc/nginx/nginx.conf
5.测试
至此lnmp的环境已经搭建完成,由于php的速度较慢,我们可以对其加速。
6.php的加速(采用xcache)
xcache的使用
1.拆解压缩包
tar -zxvf xcache-2.0.1.tar.gz -C /usr/local/src/
2.[root@localhost ~]# cd /usr/local/src/xcache-2.0.1/
[root@localhost xcache-2.0.1]# phpize (位于/usr/local/php/bin/phpize)(和php的lib文件有关)
Configuring for:
PHP Api Version: 20100412
Zend Module Api No: 20100525
Zend Extension Api No: 220100525
3 安装选项
./configure --enable-xcache --with-php-config=/usr/local/php/bin/php-config
4.编译安装
make
&& make instal
5.编辑php,整合php和xcache
cp xcache.ini /etc/php5.d //拷贝文件
编辑 xache.ini 文件 指明安装的详细路径
6.xcache的管理
[root@localhost xcache-2.0.1]# cp -r admin/ /usr/local/nginx/html/ //拷贝admin目录到nginx的站点目录
[root@localhost xcache-2.0.1]# cd /usr/local/nginx/html/
[root@localhost html]# chmod a+rx admin/ //改变执行权限
[root@localhost html]# cd admin/
[root@localhost admin]# chmod o+r index.php //改变目录和文件的权限
[root@localhost admin]#
cd /etc/php5.d/
[root@localhost php5.d]# vim xcache.ini 配置xcache.ini文件 输入帐号信息
密码采用md5的加密方法
7.测试php的加速
通过该界面可以很好的对php进行管理和加速