Centos7.6配置lnmp(nginx1.1.6+php7.2+mariadb10.30)

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
RDS MySQL Serverless 高可用系列,价值2615元额度,1个月
云数据库 RDS MySQL,高可用系列 2核4GB
简介: 安装nginx、php、mariadb。如果安装完成之后没有mysql表 ,那就去/var/lib/ 把mysql文件夹删掉。至此,lnmp环境配置完成。

QQ图片20220425223750.jpg

正文开始之前,先唠叨几句。


前段时间,博客遭到流量攻击,还好攻击流量不是很大,只有访客记录表的数据有些缺失。服务器现在用的是apache服务器,经受不住大流量的访问,服务器也快要到期了,新换一台服务器,重新配置一个nginx服务器吧。下边是我的血泪史。当然,我这只是能让我的网站在服务器上跑起来,在深入的运行权限之类的问题,目前可能涉及不到,以后遇到了再补充。

 

(一):安装nginx1.1.6


这个在LAMP环境配置及NGINX安装中介绍过,这里再介绍另一种方法,都大同小异,参照那个都可以。


1:安装nginx的yum源


rpm -Uvh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm

 

2:使用yum安装nginx


yum install -y nginx


3:启动nginx并设置开机自动运行


systemctl start nginx #启动,restart-重启,stop-停止
systemctl enable nginx #开机启动

 

4:卸载nginx


yum remove nginx


5:查看nginx运行状态


systemctl  status  nginx


QQ图片20220425223752.jpg


6:查看nginx版本



QQ图片20220425223755.jpg

 

至此,nginx安装成功,在浏览器中输入你服务器的ip,就会出现如下界面。


QQ图片20220425223757.jpg


最大的bug来了:(这是我配置的时候最大的bug)


配置nginx服务器成功之后,如果在浏览器输入服务器ip显示无法访问。

百思不得其姐。(难怪我单身)


百度了一下,没有找到答案,分开太麻烦了,寻思找个lnmp一件安装包装上试试,也不好用,最后发现,新买的服务器80端口没有开放。Nginx配置文件中,监听的是80端口,所以,一直不好用,开放特定端口,我之前日志中有写。大家可以去参照。至此,nginx安装完成。

 

(二):安装PHP7.2


我这里安装的是PHP7.2,如果你的项目能兼容的话,不建议安装PHP5.


1:安装PHP的yum源


rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm

 

2:查看php7 yum组件


yum search php72w

 

3:选择自己需要的组件安装,php72w.x86_64 和 php72w-fpm.x86_64 为核心程序必装


yum install php72w.x86_64 php72w-fpm.x86_64 php72w-cli.x86_64 php72w-common.x86_64 php72w-gd.x86_64 php72w-ldap.x86_64 php72w-mbstring.x86_64 php72w-mcrypt.x86_64 php72w-mysql.x86_64 php72w-pdo.x86_64 php72w-pecl-redis.x86_64

 

4:启动php并设为开机启动


systemctl start php-fpm #启动,restart-重启,stop-停止
systemctl enable php-fpm #开机启动

 

5:查看版本及运行状态


php-fpm -v #查看版本
ps -ef | grep php-fpm #查看运行状态

 

PHP安装这个没什么可说的,一步一步安装就好了。

 

(三):修改nginx配置


这个需要修改nginx的配置文件nginx.conf


查找文件位置命令


whereis nginx.conf

 

修改这个有两个方式,如果你很了解linux操作命令,你可以使用vim直接在服务器上修改,不然,找到文件位置之后,将文件下载下来,在你本地修改完成之后,在传到服务器上。


vi /etc/nginx/conf.d/default.conf


1:找到第一个location中的这一行


index  index.html index.htm;
修改为:
index  index.php index.html index.htm; #添加index.php

 

2:把FastCGI server这行下面的location的注释去掉,并修改成下面这样子


# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
     #
     location ~ .php$ {
         root            /usr/share/nginx/html;  #网站根目录
         fastcgi_pass   127.0.0.1:9000;
         fastcgi_index  index.php;
         fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
         include        fastcgi_params;
     }


service nginx restart   #重启nginx
service php-fpm start   #开启php-fpm

 

3:在网站根目录新建index.php文件


vim /usr/share/nginx/html/index.php


随便写点什么内容都好,我这里输出的是phpinfo();

 

服务器ip/index.php   能访问,就说明nginx与 phpfpm配置成功。

 

(四):安装数据库maraidb10.3


(1)配置mariadb Yum源


   vi /etc/yum.repos.d/MariaDB.repo


在该文件中添加以下内容保存:


[mariadb]
name = MariaDB
baseurl = http://yum.mariadb.org/10.2/centos7-amd64
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1


(2)安装 MariaDB


yum install MariaDB-server MariaDB-client -y


(3)启动、停止服务


systemctl start mariadb
systemctl stop mariadb


(4)设置开机启动


systemctl enable mariadb


(5)接下来进行MariaDB的相关简单配置


mysql_secure_installation


首先是设置密码,会提示先输入密码


Enter current password for root (enter for none):<–初次运行直接回车


设置密码


Set root password? [Y/n] <– 是否设置root用户密码,输入y并回车或直接回车
New password: <– 设置root用户的密码
Re-enter new password: <– 再输入一次你设置的密码


其他配置


Remove anonymous users? [Y/n] <– 是否删除匿名用户,回车
Disallow root login remotely? [Y/n] <–是否禁止root远程登录,回车,
Remove test database and access to it? [Y/n] <– 是否删除test数据库,回车
Reload privilege tables now? [Y/n] <– 是否重新加载权限表,回车

 

初始化MariaDB完成,接下来测试登录


mysql -uroot –ppassword


添加用户,设置权限


创建用户命令


mysql>create user username@localhost identified by 'password';


直接创建用户并授权的命令


mysql>grant all on *.* to username@localhost indentified by 'password';


授予外网登陆权限


mysql>grant all privileges on *.* to username@'%' identified by 'password';


授予权限并且可以授权


mysql>grant all privileges on *.* to username@'hostname' identified by 'password' with grant option;


刷新权限


flush privileges; /*刷新权限*/


简单的用户和权限配置基本就这样了。


Maraidb安装完成。

 

如果安装完成之后没有mysql表  那就去/var/lib/  把mysql文件夹删掉

 

至此,lnmp环境配置完成。


我就是这样配置的,我只是把在我服务器上配置的过程写了下来。




相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
MySQL数据库入门学习
本课程通过最流行的开源数据库MySQL带你了解数据库的世界。 &nbsp; 相关的阿里云产品:云数据库RDS MySQL 版 阿里云关系型数据库RDS(Relational Database Service)是一种稳定可靠、可弹性伸缩的在线数据库服务,提供容灾、备份、恢复、迁移等方面的全套解决方案,彻底解决数据库运维的烦恼。 了解产品详情:&nbsp;https://www.aliyun.com/product/rds/mysql&nbsp;
目录
相关文章
|
7月前
|
应用服务中间件 Linux 网络安全
Centos 8.0中Nginx配置文件和https正书添加配置
这是一份Nginx配置文件,包含HTTP与HTTPS服务设置。主要功能如下:1) 将HTTP(80端口)请求重定向至HTTPS(443端口),增强安全性;2) 配置SSL证书,支持TLSv1.1至TLSv1.3协议;3) 使用uWSGI与后端应用通信(如Django);4) 静态文件托管路径设为`/root/code/static/`;5) 定制错误页面(404、50x)。适用于Web应用部署场景。
735 87
|
10月前
|
应用服务中间件 PHP nginx
今日小结通过aliyun的本地容器镜像部署我的nginx和php环境
简介: 本教程介绍如何基于 Dragonwell 的 Ubuntu 镜像创建一个运行 Nginx 的 Docker 容器。首先从阿里云容器镜像服务拉取基础镜像,然后编写 Dockerfile 确保 Nginx 作为主进程运行,并暴露 80 端口。最后,在包含 Dockerfile 的目录下构建自定义镜像并启动容器,确保 Nginx 在前台运行,避免容器启动后立即退出。通过 `docker build` 和 `docker run` 命令完成整个流程。
377 25
今日小结通过aliyun的本地容器镜像部署我的nginx和php环境
|
7月前
|
应用服务中间件 Linux 网络安全
技术指南:如何把docsify项目部署到基于CentOS系统的Nginx中。
总结 与其他部署方法相比,将docsify项目部署到基于CentOS系统的Nginx中比较简单。以上步骤应当帮助你在不花费太多时间的情况下,将你的项目顺利部署到Nginx中。迈出第一步,开始部署你的docsify项目吧!
319 14
|
10月前
|
应用服务中间件 PHP nginx
当你的nginx服务器和php服务器不在一起的时候,这个nginx 的root目录问题
两个服务器的网站代码目录需要对齐,docker容器里面也是一样
|
12月前
|
负载均衡 Ubuntu 应用服务中间件
nginx修改网站默认根目录及发布(linux、centos、ubuntu)openEuler软件源repo站点
通过合理配置 Nginx,我们可以高效地管理和发布软件源,为用户提供稳定可靠的服务。
1187 13
|
3月前
|
编解码 应用服务中间件 Linux
centos配置nginx-rtmp实现ffmpeg转码rtsp为rtmp视频流
centos配置nginx-rtmp实现ffmpeg转码rtsp为rtmp视频流
337 1
|
7月前
|
负载均衡 应用服务中间件 nginx
Nginx配置与命令
Nginx 是一款高性能的 HTTP 和反向代理服务器,其配置文件灵活且功能强大。本文介绍了 Nginx 配置的基础结构和常用指令,包括全局块、Events 块、HTTP 块及 Server 块的配置方法,以及静态资源服务、反向代理、负载均衡、HTTPS 和 URL 重写等功能实现。此外,还提供了常用的 Nginx 命令操作,如启动、停止、重载配置和日志管理等,帮助用户高效管理和优化服务器性能。
|
3月前
|
Ubuntu 安全 应用服务中间件
详细指南:配置Nginx服务器在Ubuntu平台上
以上步骤涵盖了基本流程:从软件包管理器获取 Ngnix, 设置系统服务, 调整UFW规则, 创建并激活服务器块(也称作虚拟主机), 并进行了初步优化与加固措施。这些操作都是建立在命令行界面上,并假设用户具有必要权限(通常是root用户)来执行这些命令。每个操作都有其特定原因:例如,设置开机启动确保了即使重启后也能自动运行 Ngnix;而编辑server block则定义了如何处理进入特定域名请求等等。
276 18
|
3月前
|
Ubuntu 安全 应用服务中间件
详细指南:配置Nginx服务器在Ubuntu平台上
以上步骤涵盖了基本流程:从软件包管理器获取 Ngnix, 设置系统服务, 调整UFW规则, 创建并激活服务器块(也称作虚拟主机), 并进行了初步优化与加固措施。这些操作都是建立在命令行界面上,并假设用户具有必要权限(通常是root用户)来执行这些命令。每个操作都有其特定原因:例如,设置开机启动确保了即使重启后也能自动运行 Ngnix;而编辑server block则定义了如何处理进入特定域名请求等等。
347 17
|
4月前
|
数据建模 应用服务中间件 PHP
配置nginx容器和php容器协同工作成功,使用ip加端口的方式进行通信
本示例演示如何通过Docker挂载同一宿主目录至Nginx与PHP容器,实现PHP项目运行环境配置。需注意PHP容器中监听地址修改为0.0.0.0:9000,并调整Nginx配置中fastcgi_pass指向正确的IP与端口。同时确保Nginx容器中/var/www/html权限正确,以避免访问问题。
配置nginx容器和php容器协同工作成功,使用ip加端口的方式进行通信