LNMP

一、MYSQL源码安装

环境:防火墙关闭,selinux=disabled ,

1.下载mysql-boost-5.7.11.tar.gz (boost模块自带)
 cmake-2.8.12.2-4.el6.x86_64.rpm(需要2.8版本以上,编译上边的的数据库低于2.8会报错)

boost_1_59_0.tar.gz (解压到cmake目录中)

2.解压mysql-boost-5.7.11.tar.gz
安装
yum install cmake-2.8.12.2-4.el6.x86_64.rpm
更新cmake   
yum install update cmake-2.8.12.2-4.el6.x86_64.rpm
3.安装依赖包
yum install -y gcc gcc-c++ ncurses-devel bison openssl-devel zlib-devel
4.切换到mysql–5.7.11 ,cmake源码编译
第一步:cmake
cmake   
##指定目录
-DCMAKE_INSTALL_PREFIX=/usr/local/lnmp/mysq 
##指定数据库路径
-DMYSQL_DATADIR=/usr/local/lnmp/mysql/data 
##Unix socket 存放路径
-DMYSQL_UNIX_ADDR=/usr/local/lnmp/mysql/data/mysql.sock 
##安装 myisam 存储引擎
-DWITH_MYISAM_STORAGE_ENGINE=1 
##安装 innodb 存储引擎
-DWITH_INNOBASE_STORAGE_ENGINE=1 
##安装数据库分区
-DWITH_PARTITION_STORAGE_ENGINE=1
##使用 utf8 字符
-DDEFAULT_CHARSET=utf8 
##校验字符
-DDEFAULT_COLLATION=utf8_general_ci 
##安装所有扩展字符集
-DEXTRA_CHARSETS=all 
##指定 boost
-DWITH_BOOST=boost/boost_1_59_0/
## 再次编译时,清空Cmakecache,否则 cmake 时会读取错误文件
rm -fr CMakeCache.txt
第二步:make
第三步:make install
5.mysql配置

1)配置文件
将mysql配置文件复制到/etc
脚本复制到/etc/init.d/,x权限
这里写图片描述
2)新建mysql用户,指定uid、gid和家目录
这里写图片描述
3)修改mysql/目录权限
这里写图片描述
这里写图片描述
保证 mysql 用户对 data 目录有绝对权限
4)修改/etc/my.cnf
这里写图片描述
5)修改 ~/.bash_profile,添加环境变量
这里写图片描述
[root@server1 mysql]# source ~/.bash_profile 使配置生效

初始化:mysqld –initialize –user=mysql
这里写图片描述
开启mysql服务
安全初始化
密码:REDHATlj123
这里写图片描述

6.登陆测试

这里写图片描述
这里写图片描述
这里写图片描述

二、PHP的源码安装

1.下载PHP需要的数据包
libmcrypt-2.5.8-9.el6.x86_64.rpm
libmcrypt-devel-2.5.8-9.el6.x86_64.rpm
php-5.6.36.tar.bz2
re2c-0.13.5-1.el6.x86_64.rpm
2.解决依赖关系需要安装的数据包:

这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述

3.解压并源码安装PHP

1)编译

./configure --prefix=/usr/local/lnmp/php 
--with-config-file-path=/usr/local/lnmp/php/etc 
--enable-mysqlnd 
--with-mysql=mysqlnd 
--with-mysqli=mysqlnd 
--with-pdo-mysql=mysqlnd 
--with-openssl 
--with-snmp 
--with-gd 
--with-zlib 
--with-curl 
--with-libxml-dir 
--with-png-dir 
--with-jpeg-dir 
--with-freetype-dir 
--with-gettext 
--with-gmp 
--with-pear 
--enable-inline-optimization 
--enable-soap 
--enable-ftp 
--enable-sockets 
--enable-mbstring 
--enable-fpm 
--with-fpm-user=nginx 
--with-fpm-group=nginx 
--with-mcrypt 
--with-mhash

2)安装

make && make install

4.配置PHP
创建nginx用户

 useradd -M -s /sbin/nologin nginx

复制配置文件并添加pid
这里写图片描述
vim /usr/local/lnmp/php/etc/php-fpm.conf
这里写图片描述
复制启动文件并授权
这里写图片描述
复制配置文件并配置时区
这里写图片描述
这里写图片描述
启动服务并查看监听端口
这里写图片描述
此时PHP安装完成

三、nginx源码安装

1.下载nginx需要的数据包,解压

这里写图片描述
这里写图片描述
隐藏版本(删除14行nginx之后的内容)

[root@server1 nginx-1.10.1]# vim src/core/nginx.h

这里写图片描述
注释debug下的内容(179行),纯净安装

[root@server1 nginx-1.10.1]# vim auto/cc/gcc

这里写图片描述

2.解决依赖关系需要安装的包

这里写图片描述

3.源码安装

这里写图片描述
这里写图片描述

4.创建软连接,检测nginx是否正常,并开启服务

这里写图片描述

5.修改配置文件(/usr/local/lnmp/nginx/conf/nginx.conf)

这里写图片描述
Php页面首先检测
这里写图片描述
与php结合
这里写图片描述
编写php默认目录
这里写图片描述
重新加载配置文件
这里写图片描述
访问
这里写图片描述

四、mysql + php + nginx 搭建论坛

1.下载论坛模版,解压到/usr/local/lnmp/nginx/html/目录下

这里写图片描述
这里写图片描述

2.修改upload目录名称

这里写图片描述

3.进入网页安装

这里写图片描述
1)检测安装环境
权限不够,需要修改权限:
这里写图片描述

[root@server1 bbs]# chmod 777 config/ data/ uc_client/ uc_server/ -R

这里写图片描述
2)数据库连接错误
这里写图片描述
修改配置文件,重新加载php
这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述
3)数据库data目录权限不够
这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述
4)安装成功
这里写图片描述
5)删除/usr/local/lnmp/nginx/html/bbs/install/index.php , 避免重复安装
这里写图片描述

五、php添加memcach模块,测试访问压力

php+memcache
client—->nginx—->php-fpm—->php+memcache

memcache是一个高性能的分布式内存对象缓存系统,通过在内存里维护一个巨大的hash表,能够用来存储各种格式的数据。可以类比于mysql这样的服务,而php扩展memcache实际上是连接memcahe的方式,一般的使用目的是通过缓存数据查询结果,减少终端的访问次数,以提高动态web应用的速度,提高扩展性能。

1.下载memcache-2.2.5.tgz,并解压
[root@server1 ~]# tar zxf memcache-2.2.5.tgz
2.添加phpize命令

当php编译完成后,php的bin目录下会有phpize这个脚本文件。在编译你要添加的扩展模块之前,执行phpize命令,这里我们在php中加入memcache扩展模块

[root@server1 memcache-2.2.5]# phpize
Configuring for:
PHP Api Version:         20131106
Zend Module Api No:      20131226
Zend Extension Api No:   220131226

添加环境变量,并使其生效
这里写图片描述
这里写图片描述

3.执行phpize后,编译、安装 memcache-2.2.5
[root@server1 memcache-2.2.5]# ./configure 
[root@server1 memcache-2.2.5]# make && make install
4.修改配置文件(php-memcache模块扩展),并查看扩展的memcache模块是否加载
[root@server1 memcache-2.2.5]# vim /usr/local/lnmp/php/etc/php.ini

这里写图片描述

修改配置文件切记 reload,使配置生效

[root@server1 etc]# /etc/init.d/php-fpm  reload
Reload service php-fpm  done

查看memcache模块是否加载

[root@server1 memcache-2.2.5]# php -m | grep memcache
Memcache
5.查看 memcache 端口(memcache监听11211端口)

这里写图片描述

6.设置 memcache.php
[root@server1 memcache-2.2.5]# cp memcache.php /usr/local/lnmp/nginx/html/

这里写图片描述
22,23行设置用户和密码,28行并指定本机的11211端口
这里写图片描述
访问 172.25.12.1/memcache.php
这里写图片描述
这里写图片描述
重新加载nginx或配置文件有错误

[root@server1 html]# nginx -s reload

这里写图片描述
####7、设置 example.php,并重新加载nginx
这里写图片描述
通过刷新(example.php)网页可以看到命中率的数据更新,几乎接近100%,数据全部来源于缓存
访问 172.25.12.1/example.php
这里写图片描述

再次访问172.25.12.1/memcache.php,命中率会接近100%

8.物理主机测试
[kiosk@localhost ~]$ ab -c 10 -n 1000 http://172.25.32.1/example.php
Concurrency Level:      10
Time taken for tests:   0.587 seconds
Complete requests:      1000
Failed requests:        0
Write errors:           0
Total transferred:      280000 bytes
HTML transferred:       123000 bytes
Requests per second:    1704.83 [#/sec] (mean)

[kiosk@localhost ~]$ ab -c 10 -n 1000 http://172.25.32.1/index.php
Concurrency Level:      10
Time taken for tests:   1.810 seconds
Complete requests:      1000
Failed requests:        91
   (Connect: 0, Receive: 0, Length: 91, Exceptions: 0)
Write errors:           0
Total transferred:      84942900 bytes
HTML transferred:       84785900 bytes
Requests per second:    552.46 [#/sec] (mean)

[kiosk@localhost ~]$ ab -c 10 -n 1000 http://172.25.32.1/memcache.php
Concurrency Level:      10
Time taken for tests:   1.366 seconds
Complete requests:      1000
Failed requests:        0
Write errors:           0
Non-2xx responses:      1000
Total transferred:      316000 bytes
HTML transferred:       101000 bytes
Requests per second:    731.90 [#/sec] (mean)

六、nginx(ssl)模块使用

1.建立虚拟主机 vim /usr/local/lnmp/nginx/conf/nginx.conf

这里写图片描述

2.建立默认发布目录,编写默认发布文件

这里写图片描述
这里写图片描述

3.物理机解析

这里写图片描述

4.访问,检测虚拟主机是否建立成功

这里写图片描述
这里写图片描述

5.加密访问

1)修改配置文件
这里写图片描述
2)生成认证证书
这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述
3)重启服务,并查看是否有443端口
这里写图片描述
这里写图片描述
4)访问,检测是否加密成功
这里写图片描述
证书:
这里写图片描述
访问成功

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值