LNMP是一个基于CentOS/Debian编写的Nginx、PHP、MySQL、phpMyAdmin、eAccelerator一键安装包。可以在VPS、独立主机上轻松的安装LNMP生产环境。
简介
LNMP代表的就是:Linux系统下Nginx+MySQL+PHP这种网站服务器架构。
Linux是一类Unix计算机操作系统的统称,是目前最流行的免费操作系统。代表版本有:debian、centos、ubuntu、fedora、gentoo等。
Nginx是一个高性能的HTTP和反向代理服务器,也是一个IMAP/POP3/SMTP代理服务器。
Mysql是一个小型关系型数据库管理系统。
PHP是一种在服务器端执行的嵌入HTML文档的脚本语言。
这四种软件均为免费开源软件,组合到一起,成为一个免费、高效、扩展性强的网站服务系统。
环境:centos6.5 32位
版本:nginx-1.9.4.tar.gz
版本:mysql-5.5.15-linux2.6-i686.tar.gz
版本:php-5.5.8.tar.bz2
安装nginx
版本:nginx-1.9.4.tar.gz
[root@new ~]# yum --disablerepo=\* --enablerepo=c6-media groupinstall "Development tools" -y [root@new ~]# tar -zxvf nginx-1.9.4.tar.gz -C /usr/local/src/ [root@new ~]# cd /usr/local/src/nginx-1.9.4/ [root@new nginx-1.9.4]# yum --disablerepo=\* --enablerepo=c6-media install openssl-devel pcre-devel -y [root@new nginx-1.9.4]# ./configure > --prefix=/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 [root@new nginx-1.9.4]# groupadd nginx [root@new nginx-1.9.4]# useradd -r -g nginx nginx [root@new nginx-1.9.4]# make && make install [root@new nginx]# vim /etc/profile
[root@new nginx]# . /etc/profile [root@new nginx]# mkdir -pv /var/tmp/nginx/client/ [root@new nginx]# nginx -t nginx: the configuration file /etc/nginx/nginx.conf syntax is ok nginx: configuration file /etc/nginx/nginx.conf test is success [root@new nginx]# nginx
****控制脚本没有写,有时间再补充吧
安装MySQL
版本:mysql-5.5.15-linux2.6-i686.tar.gz
[root@new ~]# rpm -qa |grep mysql mysql-libs-5.1.71-1.el6.i686 [root@new ~]# rpm -e mysql-libs --nodeps [root@new ~]# groupadd mysql [root@new ~]# useradd -r -g mysql mysql [root@new ~]# tar -zxvf mysql-5.5.15-linux2.6-i686.tar.gz -C /usr/local/ [root@new local]# ln -s mysql-5.5.15-linux2.6-i686/ mysql [root@new mysql]# chown -R mysql:mysql . [root@new mysql]# yum --disablerepo=\* --enablerepo=c6-media install libaio -y [root@new mysql]# ./scripts/mysql_install_db --user=mysql ***初始化 [root@new mysql]# chown -R root . [root@new mysql]# chown -R mysql data/ [root@new mysql]# cp support-files/my-medium.cnf /etc/my.cnf [root@new mysql]# cp support-files/mysql.server /etc/init.d/mysqld [root@new mysql]# service mysqld start [root@new mysql]# chkconfig --add mysqld [root@new mysql]# vim /etc/profile
[root@new mysql]# . /etc/profile ***重新读取一下 [root@new mysql]# mysqladmin -u root -p password ‘123‘ [root@new mysql]# vim /etc/ld.so.conf.d/mysql.conf ***扩展名.conf结尾,
***加入新的库的路径 [root@new mysql]# ldconfig ***刷新 [root@new mysql]# ldconfig -pv |grep mysql libtcmalloc_minimal.so.0 (libc6) => /usr/local/mysql/lib/libtcmalloc_minimal.so.0 libmysqlclient.so.18 (libc6) => /usr/local/mysql/lib/libmysqlclient.so.18 libmysqlclient.so (libc6) => /usr/local/mysql/lib/libmysqlclient. [root@new mysql]# echo "MANPATH /usr/local/mysql/man" >> /etc/man.config
安装PHP
版本:php-5.5.8.tar.bz2
[root@new ~]# tar -jxvf php-5.5.8.tar.bz2 -C /usr/local/src/ [root@new ~]# cd /usr/local/src/php-5.5.8/ [root@new php-5.5.8]# yum --disablerepo=\* --enablerepo=c6-media install libxml2-devel libjpeg-turbo-devel libpng-devel freetype-devel -y [root@new php-5.5.8]# ./configure > --prefix=/usr/local/php > --sysconfdir=/etc/fpm > --enable-fpm \ **形成独立的服务器 > --enable-sockets > --with-mysql=/usr/local/mysql > --with-pdo-mysql=/usr/local/mysql > --with-mysqli=/usr/local/mysql/bin/mysql_config > --enable-mbstring > --enable-xml > --with-png-dir > --with-gd > --with-jpeg-dir > --with-zlib > --with-freetype-dir > --with-config-file-path=/etc/php > --with-config-file-scan-dir=/etc/php5.d
由于编译时间过长,安装screen
[root@new php-5.5.8]# yum --disablerepo=\* --enablerepo=c6-media install screen -y [root@new php-5.5.8]# make && make install [root@new php]# cd /etc/fpm [root@new fpm]# cp php-fpm.conf.default php-fpm.conf **配置文件 [root@new mysql]# cd /usr/local/src/php-5.5.8/ [root@new php-5.5.8]# mkdir /etc/php /etc/php5.d [root@new php-5.5.8]# cp php.ini-production /etc/php/php.ini **初始化文件 [root@new fpm]# pwd /usr/local/src/php-5.5.8/sapi/fpm [root@new fpm]# cp init.d.php-fpm /etc/init.d/php-fpm **控制脚本 [root@new fpm]# chmod a+x /etc/init.d/php-fpm [root@new fpm]# service php-fpm start Starting php-fpm done [root@new fpm]# netstat -tupln |less
[root@new fpm]# chkconfig --add php-fpm [root@new fpm]# chkconfig --list |grep php-fpm php-fpm 0:off 1:off 2:on 3:on 4:on 5:on 6:off [root@new php]# vim /etc/profile
[root@new php]# . /etc/profile
nginx与PHP 的结合
[root@new php]# vim /etc/nginx/nginx.conf
[root@new php]# nginx -t nginx: the configuration file /etc/nginx/nginx.conf syntax is ok nginx: configuration file /etc/nginx/nginx.conf test is successful [root@new php]# nginx -s reload
测试PHP,nginx,MySQL的结合
[root@new php]# cd /usr/local/nginx/html/ [root@new html]# vim index.php
如果访问不到,可能是防火墙没有关闭
连接数据库测试
[root@new html]# vim index1.php
至此,LNMP环境已经搭建完成。
xcache的安装
[root@new ~]# tar -zxvf xcache-3.1.0.tar.gz -C /usr/local/src/ [root@new ~]# cd /usr/local/src/xcache-3.1.0/ [root@new xcache-3.1.0]# phpize **把xcache变成PHP的功能扩展 Configuring for: PHP Api Version: 20121113 Zend Module Api No: 20121212 Zend Extension Api No: 220121212 [root@new xcache-3.1.0]# ./configure --enable-xcache --with-php-config=/usr/local/php/bin/php-config **变成PHP模块,指明PHP-config位置 [root@new xcache-3.1.0]# make && make install
[root@new xcache-3.1.0]# cd /usr/local/php/lib/php/extensions/no-debug-non-zts-20121212/ [root@new no-debug-non-zts-20121212]# cp xcache.so /etc/php5.d/ [root@new no-debug-non-zts-20121212]# cd /usr/local/src/xcache-3.1.0/ [root@new xcache-3.1.0]# cp xcache.ini /etc/php5.d/
测试,重启PHP
[root@new xcache-3.1.0]# service php-fpm restart
****如果配置时没有指明PHP5.d目录,追加到php.ini
cat xcache.ini >> /usr/local/php/lib/php.ini
客户访问的对象——nginx服务器实现缓存
[root@new xcache-3.1.0]# vim /etc/nginx/nginx.conf [root@new xcache-3.1.0]# mkdir -pv /data/nginx/cache
[root@new xcache-3.1.0]# nginx -s reload
重新访问一下,看到已经有收据被缓存。
[root@new nginx]# cd /data/nginx/cache/ [root@new cache]# ll total 4 drwx------. 3 nginx nginx 4096 Sep 5 18:04 3 [root@new cache]#
本文出自 “监督局” 博客,请务必保留此出处http://shuoshuo234.blog.51cto.com/10531943/1691603
原文地址:http://shuoshuo234.blog.51cto.com/10531943/1691603