lnmp架构

绝地灬酷狼 2022-05-25 06:38 343阅读 0赞

lnmp架构

linux服务平台

nginx-http服务

mysql-存储

php-前端处理语言

#

一、mysql安装

1、mysql的编译

1)安装cmake工具:cmake是一个跨平台安装编译工具,可以用简单的语句来描述所有平台的安装。他能够输出各种各样的makefile或者project文件,能测试编译器所指出的c++特性

2)在mysql 5.7.17目录下cmake

cmake -DCMAKE_INSTALL_PREFIX=/usr/local/lnmp/mysql \ 安装目录

-DMYSQL_DATADIR=/usr/local/lnmp/mysql/data \ 数据库存放目录
-DMYSQL_UNIX_ADDR=/usr/local/lnmp/mysql/data/mysql.sock \ socket文件路径
-DWITH_MYISAM_STORAGE_ENGINE=1 \ 安装 myisam 存储引擎
-DWITH_INNOBASE_STORAGE_ENGINE=1 \ 安装 innodb 存储引擎
-DDEFAULT_CHARSET=utf8 \ 使用utf8字符
-DDEFAULT_COLLATION=utf8_general_ci \ 校验字符

-DEXTRA_CHARSETS=all \ 安装所有扩展字符集

3)cmake执行 按错误 安装gcc gcc-c++ 并删除CMakeCache(缓存文件信息)
加入语句-DWITHBOOST=boost/boost1_59_0 并删除CMakeCache
安装ncurses-devel 删除CMakeCache

安装 bison 删除CMakeCache

缺什么安装什么直到cmake执行完成没有报错

完成后make &&make install

2、mysql的初始化

1)安装好后在/usr/local/lnmp/ support-files/目录下将mysql的脚本文件复制到/etc/init.d/下

20180509170855164

2)在/etc/目录下cp my.cnf my.cnf.back备份一份mysql配置文件,然后将安装后的配置文件直接覆盖掉原配置文件

20180509171127555

编辑配置文件:

20180509171406818

这里

basedir = /usr/local/lnmp/mysql mysql的主目录

datadir = /usr/local/lnmp/mysql/data 数据目录

socket = /usr/local/lnmp/mysql/data/mysql.sock mysql连接端口的路径

3)建立mysql的用户和用户组,并将mysql的目录改为仅mysql可读写

201805091715292032018050917154093

4)为了方便将mysql的命令的路径添加到环境变量中

20180509172240163

2018050917225290

5)执行mysql-install-db脚步初始化mysql中的data目录并创建一些表格,但是这里提示要使用—initialize

20180509172721179

按提示继续进行操作,这里他会给你一个密码,如下图

20180509172823784

此时在mysql目录下生成data目录

20180509172959432

启动mysql服务 在data目录查看sock文件

20180509173054773

此时为了目录的数据的安全,将除了mysql的data目录外,用户都设定为超级用户

20180509173256449

进入mysql数据库查看,无法显示databases,根据提示要我们修改密码

2018050917362749

进入更改密码交互窗口

20180509173832538

后面根据提示前两个回车,后面选择y

20180509174033178

20180509174055654

完成后再次登陆查看如图

2018050917415362320180509174208242

至此mysql部署完成

总结错误:

这里我在mysql编译时,将socket文件路径写错 通过建立链接将问题解决,如下图

20180509174457474

二、php部署

1)这里我同样使用源码包编译

./configure —prefix=/usr/local/lnmp/php —with-config-file-path=/usr/local/lnmp/php/etc —with-openssl —with-snmp —with-gd —with-zlib —with-curl —with-libxml-dir —with-png-dir —with-jpeg-dir —with-freetype-dir —with-gmp —with-gettext —with-pear —enable-mysqlnd —with-mysql=mysqlnd —with-mysqli=mysqlnd —with-pdo-mysql=mysqlnd —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

编译会报错缺少什么软件和服务就安装什么(—with表示添加的模块,要的模块—help查看之后直接添加即可)

上面php-fpm提供了更好的PHP进程管理方式,可以有效控制内存和进程、可以平滑重载PHP配置,./configure的时候带 –enable-fpm参数即可开启php-fpm

完成后make &&make install 完成安装

2)查看目录并根据编译内容建立nginx用户

20180509175347928

20180509175108105

3)复制php-fpm配置文件并查看编辑

2018050917545184920180509175457384

打开pid = run/php-fpm.pid

20180509175543890

4)按下图将配置文件和启动脚本复制到指定路径,方便后续操作

20180509175747720

5)编辑php.ini更改时区

20180509175901483

6)启动php-fpm服务,并查看端口为9000

20180509180022122

至此php部署完成

三、nginx的部署

1)源码包安装

先在 src/core/nginx.h 删除版本号,当外界访问时看不见版本号,增加了安全性

20180509180504408

2)在 auto/cc/gcc注释debug,这样产生的nginx的程序只有几百k

20180509180545201

3)完成上面的操作后./configure添加需要的模块进行编译,20180509180701134

过程中包错缺少pcre服务,直接安装,然后重新./configure编译

20180509180821103

完成后make&&make install完成安装

4) 在/usr/local/lnmp/nginx/conf/nginx.conf 编辑配置文件,将index.php置于最前 打开65-70行 注释和.conf,如下图

以php结尾的访问,让php-fpm去管理这些访问进程

20180509181047618

将默认发布目录改为index.php

20180509181247401

编辑完配置文件后,nginx启动脚步作链接到/usr/local/sbin下,

nginx -t 检查配置文件是否合法,并启动nginx服务,查看其端口,如图

20180509181613936

在nginx/html下,编写php测试文件,完成后网页测试访问

2018050918170640820180509181713953

20180509181729107

四、应用-论坛的搭建

1)将下载好的论坛包解压到nginx的默认发布目录下,并改名为/bbs

20180509182036275

2)网页访问按提示开始安装论坛

20180509182144183

3)这里文件权限会产生报错,如图

20180509182233238

按提示将所需文件权限改为777即可,如图

20180509182313325

20180509182344689

20180509182404371

4)点击全新安装并填写mysql的信息和管理员用户名及密码

20180509182523394

20180509182534895

5)在安装步骤,会提示错误,如图

20180509182652839

此时在/user/local/lnmp/php/etc/php.ini我们需要指定php连接mysql的通信接口,三个位置,如下图

20180509182909229

20180509182931941

20180509182943324

完成后重新加载文件

6)在此安装时还会报错,连接数据库的权限不够,如图

2018050918312852

我们将数据库的data目录赋予755权限即可

20180509183200348

7)此时论坛成功安装

20180509183238567

8)登陆查看

20180509183307299

9)进入管理员管理中心,提示删除/install/目录下的php文件,按提示执行,避免二次安装,如图

201805091834426942018050918344851920180509183456508

发表评论

表情:
评论列表 (有 0 条评论,343人围观)

还没有评论,来说两句吧...

相关阅读

    相关 10.Nginx流行架构LNMP

    1.什么是LNMP架构 LNMP是指一组通常一起使用来运行动态网站或者服务器的自由软件名称首字母缩写。L指Linux,N指Nginx,M一般指MySQL,也可以指Mari

    相关 lnmp 架构

    一、lnmp 架构 LNMP代表的就是:Linux系统下Nginx+MySQL+PHP这种网站服务器架构。 Nginx是一个高性能的HTTP和反向代理服务器,也是一个IMA