2000字范文,分享全网优秀范文,学习好帮手!
2000字范文 > 配置LNMP环境(linux nginx mysql php)[蜗牛学院学习随记]

配置LNMP环境(linux nginx mysql php)[蜗牛学院学习随记]

时间:2021-02-27 07:32:59

相关推荐

配置LNMP环境(linux nginx mysql php)[蜗牛学院学习随记]

一.准备一台干净的linux虚拟机(centos)

1.下载centos7镜像文件(上网搜centos就ok)

2. 点击这个architectures(x86_64)

3.下载镜像

随便选择一个国内镜像下一下咯(ISO-9660,简称ISO ,是由国际标准化组织在1985年制定的 ,唯 一通用的光盘文件系统 ,任何类型的计算机和所有的刻录软件都支持它),官网说为了保证有限的带宽,镜像源不能从centos的官网下载,给出了我们地区的镜像源来下载。

4.将下载好的centos.iso文件安装到VMware虚拟机上

自己上网路搜有很多教程,这里就不赘述了...

二.安装mysql(5.7版本,因为蜗牛note是基于5.7开发的)

1.前往官网下载rpm(red hat package manager)包

之后再用scp(secure copy)传输到linux上 / 在linux上用wget(world,wide,web and get)下载

2.下载mysql5.7

网站上首页可能只有最新版的mysql,但我们要寻找5.7版本的rpm安装包,点击download,点击archive,选择版本,选择你的操作系统,我的是centos(redhat的衍生版本),下载这个bundle(应该是包集合的意思)。

如果不懂可以参考下文CentOS 7安装mysql 5.7 (官网rpm方式)_长歌如梦的博客-CSDN博客_centos7rpm安装mysql5.7

3.关于el的解释参考这篇文章,我是centos7就选EL7

RPM 软件包名中的 el5、el6、el7 是什么?_liaowenxiong的博客-CSDN博客_el6和el7

4.这次我选择使用wget直接下载(漫长的等待ing...)好像有500多M

6.下载完毕但是去哪找呢?

上网查了发现放在根目录(/)下的home目录下的user目录下,一看果然在,但是作为专业人士我要学一下wget如何下载到指定目录,参考下文。wget 命令 指定文件夹_如何使用Wget将文件下载到特定目录_触乐的博客-CSDN博客

使用move file(a) directory(b)来将文件放入/opt目录中,之后使用 [ ls(list)目标目录 -l ] 来查看之前的目录已经没有tar文件了

Linux ls命令 | 菜鸟教程

7.开始解压缩

什么是tar(tape archive)

tar的用法参考

Linux tar 命令 | 菜鸟教程

使用tar -xvf解压

-x或--extract或--get 从备份文件中还原文件-v或--verbose 显示指令执行过程-f<备份文件>或--file=<备份文件> 指定备份文件

linux下tar命令解压到指定的目录 - study_goup - 博客园

tar -xvf 目标文件 -C 指定目录

使用mv 重命名文件 新命名文件 来重命名

8.安装mysql

CentOS 7安装mysql 5.7 (官网rpm方式)_长歌如梦的博客-CSDN博客_centos7rpm安装mysql5.7

使用rpm -ivh安装各个包

-i 显示套件的相关信息-v 显示指令执行过程-h或--hash 套件安装时列出标记

mysql-community-libs mysql依赖lib mysql-community-client client是DBMS面向用户

mysql-community-server mysql数据库系统

如果安装mysql-community-server 提示缺少perl,使用yum install perl 即可

中途安装提示缺少文件,按照要求使用yum 安装即可

版权声明:本文为CSDN博主「长歌如梦」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。

原文链接:/qq_32702685/article/details/122578635

使用 [ systemctl status mysqld ] 来查看mysql的状态,使用 [ systemctl start mysqld ] 来启动mysqld

9.配置mysql

新版mysql安装完成后会自我生成密码,在/var/log/mysqld.log中查看

grep password /var/log/mysql.log 查看密码

登陆mysql数据库后更改密码

改完密码,成功,时间是01:42分,加拿大1:3克罗地亚,睡觉了,明天星期一...

使用 [ show variables like '%password%'] 来查看数据库中关于密码的变量设置

密码策略的解释

10.单独创建一个账户来使用woniunote数据库

为了安全性本节课不再使用root账户,而是单独创建一个用户,而后赋予他蜗牛note的管理权限,这样即使账户被黑掉,也只是丧失了一个普通用户。

这里关于mysql四种语句可以看此文

mysql语句可以分为四类_MySQL语句分类_Oxygenfia的博客-CSDN博客

这里关于collate其实是一个排序标准,详见下文

/article/214738.htm(详细谈谈mysql中的collate)

操作成功!

11.将centos设置为静态ip

参考下文

CentOS配置静态IP_明快de玄米61的博客-CSDN博客_centos设置静态ip

12.使用navicat连接,运行woniunote.sql

显示单个包大于最大传输限制

修改 /etc/f 文件,设置 max_allowed_packet = 20M

使用 [ service mysqld restart ] 重启mysql后,sql运行成功

三.安装PHP7.3

1.先安装各种依赖(但学习一下yum下载的文件放哪里)

linux yum 安装的路径在哪,yum下载软件的存放位置_种阳台的博客-CSDN博客

2.查找软件是否安装和安装路径请参考这个博客

Linux下查看软件安装与安装路径_流烟默的博客-CSDN博客_linux查找软件安装路径

3.安装php7.3参考这篇文章

编程技巧│Linux 安装 PHP7.3.0_极客飞兔的博客-CSDN博客_linux安装php7.3

4.这个是蜗牛学院的安装教程,两个版本的依赖略有出入,保险起见,我打算卸载掉php,顺便学一下如何卸载软件

5.安装各种依赖

yum install -y gcc gcc-c++ make sudo autoconf libtoo1-1tdl-devel gd-devel freetype-devel libxml2-devellibjpeg-devel 1ibpng-devel cur1-deve patch libmcrypt-deve lbmhash-devel ncurses-devel bzip2 libcap-devel ntp sysklogd diffutils sendmail iptables unzip cmake pcre-devel zlib-devel openssl openssl-devel

6.使用(-r)创建一个系统账户

Linux useradd 命令 | 菜鸟教程

什么是系统账户?看下文

Linux用户类型简述_justin_edu的博客-CSDN博客_linux用户类型

6.下载安装各项配置

./configure --prefix=/usr/local/php --enable-fpm --with-fpm-user=www --with-fpm-group=www --with-openssl --with-libxml-dir --with-zlib --enable-mbstring --with-mysqli=mysqlnd --enable-mysqlnd --with-pdo-mysql=mysqlnd --with-gd --with-jpeg-dir --with-png-dir --with-zlib-dir --with-freetype-dir --enable-sockets --with-curl --enable-maintainer-zts

7.make install安装的时候出现了一个由于版本问题的错误,需要更改文件中的continue为break

TP5.1出现错误 “continue“ targeting switch is equivalent to “break“. Did you mean to use “continue 2“?_wkj001的博客-CSDN博客

但是修改配置文件的过程中被permission deny了,于是查找文件权限相关的内容

他说要改这个1933行的continue为break,但是找了半天也打不开

直接vi/opt/php-7.3.0/pear/install-pear-nozlib.phar/PEAR/PackageFile/v2/Validator.php

permission denied?我可是root

结果发现只有/opt/php-7.3.0/pear是目录 /install-pear-nozlib.phar是个文件,文件下面怎么会有文件呢?不理解,查了半天也没查出东西来,算了

8.配置php,按下述复制几个文件之后即可

9.打开fpm,端口9000

Linux netstat命令 | 菜鸟教程

【常用命令】netstat -ano命令图文详细说明_No8g攻城狮的博客-CSDN博客_netstat-ano列说明

使用 netstat -ano | grep 9000 来查看这个端口

-a或--all 显示所有连线中的Socket。-n或--numeric 直接使用IP地址,而不通过域名服务器-o或--timers 显示计时器

启动成功

四.安装nginx(带lua支持)

1.步骤截图(来自蜗牛学院)

2.从lua官网下载2.1版本tar.gz(进官网点version即可),再通过scp上传到/opt目录下

3.安装ndk(nginx development kit)

使用 [ wget /simplresty/ngx_devel_kit/archive/v0.3.0.tar.gz ] 下载NDK安装包,但不知道下到哪里去了?上网查找说默认下载在当前路径。想把它移动到/opt目录下,使用 [ mv ](move)命令,之后 [ tar -zxvf ] 解压即可。

4.安装lua-nginx-module-0.10.13

使用 [wget /openresty/lua-nginx-module/archive/v0.10.13.tar.gz

] 安装lua-nginx-module,解压即可。

5.导入环境变量

使用 [ source ] 命令,但什么是source命令?大概就是执行一个文档的脚本,bash好像就是一个壳程序,理论太深不扎了。env显示的是现有的环境变量。

6.编译安装

./configure --user=www --group=www --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module --with-http_gzip_static_module --pid-path=/usr/local/nginx/nginx.pid --with-http_realip_module --add-module=/opt/ngx_devel_kit-0.3.0 --add-module=/opt/lua-nginx-module-0.10.13 --with-ld-opt="-Wl,-rpath,$LUAJIT_LIB"

安装时死活安不上,查资料

安装nginx+lua时提示:./configure: error: ngx_http_lua_module requires the Lua library._ygmdream的博客-CSDN博客

7.配置防火墙

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。