以下实验所用文件可到此处下载(百度秒传链接,不会可度娘)

C5B151A70E9CEED5308F108F1ECE7B3B#C0B06146A5DF31031C675163A16AFE70#24475686#mysql-5.5.22.tar.gz

899B873BD5496CC05E422533A80ABFCF#25339B9B4E92ABB20A31BA77C6704F89#8257536#SKYUC.v3.4.2.SOURCE.zip

995EB0A140455CF0CFC497E5BD7F94B3#5BD7D90A7536C89C6CCCC501288455AE#980831#nginx-1.12.0.tar.gz

56FF88934E068D142D6C0DEEFD1F396B#32E93C965ACB522BE5AE2D18C888DAA1#11051714#php-5.3.28.tar.bz2

一、LNMP的介绍

1、LNMP介绍

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文档的脚本语言。
  • 这四种软件均为免费开源软件,组合到一起,成为一个免费、高效、扩展性强的网站服务系统。

2、特点

Nginx是一个小巧而高效的Linux下的Web服务器软件,是由 Igor Sysoev 为俄罗斯访问量第二的 Rambler 站点开发的,已经在一些俄罗斯的大型网站上运行多年,相当的稳定。

Nginx性能稳定、功能丰富、运维简单、处理静态文件速度快且消耗系统资源极少

3、优点

作为 Web 服务器:相比 Apache,Nginx 使用更少的资源,支持更多的并发连接,体现更高的效率。

 作为负载均衡服务器:Nginx 既可以在内部直接支持Rails和PHP,也可以支持作为 HTTP代理服务器对外进行服务。Nginx 用C编写,不论是系统资源开销还是CPU使用效率都比Perlbal要好的多。

 作为邮件代理服务器:Nginx同时也是一个非常优秀的邮件代理服务器(最早开发这个产品的目的之一也是作为邮件代理服务器),Last/fm 描述了成功并且美妙的使用经验。

 Nginx 安装非常的简单,配置文件非常简洁(还能够支持perl语法)。Nginx支持平滑加载新的配置,还能够在不间断服务的情况下进行软件版本的升级。

二、LNMP部署

1、部署 Nginx

(1)安装依赖包
yum -y install pcre-devel zlib-devel openssl-devel
(2)创建运行用户
useradd -M -s /sbin/nologin nginx
(3)编译安装 Nginx
tar xzvf nginx-1.12.0.tar.gz -C /usr/src/

cd /usr/src/nginx-1.12.0/

./configure --prefix=/usr/local/nginx --user=nginx --group=nginx

make && make install

ln -s /usr/local/nginx/sbin/* /usr/local/sbin/

或 echo "PATH=$PATH:/usr/local/nginx/sbin" >>/etc/profile && source /etc/profile


nginx //运行nginx服务;killall -9 nginx

netstat -utpln | grep 80

2、部署 Mysql

(1)编译安装 Mysql
yum -y install cmake ncurses-devel

tar -zxvf mysql-5.5.22.tar.gz -C /usr/src

cd /usr/src/mysql-5.5.22/

cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_EXTRA_CHARSETS=all -DSYSCONFDIR=/etc/

make && make install

//-DCMAKE_INSTALL_PREFIX:指定Mysql安装目录

//-DDEFAULT_CHARSET:指定默认字符集

//-DDEFAULT_COLLATION:指定使用的字符校验集

//-DWITH_EXTRA_CHARSETS:支持所有其他额外的字符集

//-DSYSCONFDIR:指定配置文件存储目录

(2)优化 Mysql
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 "export PATH=$PATH:/usr/local/mysql/bin/" >>/etc/profile

source /etc/profile

useradd -M -s /sbin/nologin mysql

chown -R mysql:mysql /usr/local/mysql/

/usr/local/mysql/scripts/mysql_install_db --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data/ --user=mysql

/etc/init.d/mysqld start

mysqladmin -u root password '123'

3、部署PHP

(1)安装依赖包
yum -y install gd libxml2-devel libjpeg-devel libpng-devel
(2)新建运行用户
useradd -M -s /sbin/nologin php
(3)编译安装
 tar xjvf php-5.3.28.tar.bz2 -C /usr/src/

cd /usr/src/php-5.3.28/

./configure --prefix=/usr/local/php --with-gd –with-zlib --with-mysql=/usr/local/mysql/ --with-config-file-path=/usr/local/php --enable-mbstring --enable-fpm --with-jpeg-dir=/usr/lib

make && make install

cp php.ini-development /usr/local/php/php.ini
(4)php优化
ln -s /usr/local/php/bin/* /usr/local/bin/

ln -s /usr/local/php/sbin/* /usr/local/sbin/

cd /usr/local/php/etc/

cp php-fpm.conf.default php-fpm.conf

vim php-fpm.conf

140 user = php
141 group = php


vim /usr/local/php/php.ini

226 short_open_tag = On
784 default_charset = "utf-8" //设置默认字符集


php-fpm

4、修改Nginx支持动态页面

(1)修改Nginx主配置文件
vim /usr/local/nginx/conf/nginx.conf

Location / {
Root html;
45 Index index.php index.html index.htm;
}

65 location ~ \.php$ {
66 root html;
67 fastcgi_pass 127.0.0.1:9000;
68 fastcgi_index index.php;
69 # fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name;
70 include fastcgi.conf;
71 }
(2)编辑测试页面
vim /usr/local/nginx/html/index.php

<?php

phpinfo();

?>


vim /usr/local/nginx/html/test.php

<?php
$link=mysql_connect('localhost','root','123');
if($link) echo "数据库连接成功!";
mysql_close();
?>

重启nginx:
Killall -9 nginx
nginx
或执行 killall -1 nginx

www.xueluo.org/index.php

www.xueluo.org/test.php

5、部署 SKYUC项目(用于测试LNMP环境)电影网站

(1)解压
unzip SKYUC.v3.4.2.SOURCE.zip

cd SKYUC.v3.4.2.SOURCE

rm -rf /usr/local/nginx/html

cp -rf wwwroot/ /usr/local/nginx/html

cd /usr/local/nginx/html
(2)属主
chown -R php:php admincp/ data/ templates/ upload/
(3)创建数据库和授权用户
mysql -u root

mysql> create database skyuc;

mysql> grant all on skyuc.* to skyuc@localhost identified by '123';

mysql> flush privileges;

6、访问

浏览器访问:​​​​​http://192.168.100.10/index.php​

LNMP的部署和配置_nginx

浏览器访问:​​http://192.168.100.10/admincp/index.php​

LNMP的部署和配置_php_02