我们都知道linux下安装软件主要有三种方式:

1.源码编译安装,即下载软件源代码,利用gcc g++ make 等编译工具进行编译安装;

此方式的优点:可以指定软件版本,可选择性好;编译时可以手动指定需要加载的模块;管理的自由度大,可以修改源代码;

此方式的缺点:软件包之间的依赖关系不好解决,必须要匹配的依赖包;编译过程时间长,出错的地方和几率大,出错不好解决;

2.二进制包安装,比如redhat/centos/opensuse/fedora系列下的rpm 包,debian/ubuntu系列下的deb包,需要用到一些rpm dpkg等包管理器的命令安装;

此种方式的优点:已经编译后的二进制包,安装方便快捷;比编译方式更简单;报错信息更容易理解;

此种方式缺点:依赖关系不好解决,某些情况下一个软件包会依赖多个软件包;

3.使用发行版的包管理命令安装,比如redhat系列下的yum , debian系列下的apt等;

此种方式的优点:依赖关系自动解决,方便快捷;

此种方式的缺点:需要具备软件源,比如网络源,本地源,和网络环境有比较大的关系

以上就简单地介绍到此,接下来我们就使用第三种方式来搭建nginx+mysql+php+linux 环境。

第一步:安装nginx,搭建web服务器:

#将nginx的软件源添加到centos 7 系统中:

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

#安装nginx软件:

#yum install nginx -y

#启动nginx服务并加入开机启动项:

#systemctl start nginx && systemctl enable nginx

第二步:安装mysql数据库,此处我们安装5.7版本:

#将mysql5.7软件源添加到系统中

#yum localinstall http://dev.mysql.com/get/mysql57-community-release-el7-7.noarch.rpm

#安装数据库:

#yum install mysql-community-server mysql-community-devel -y

#启动数据库服务并加入开机启动项

#systemctl start mysqld && systemctl enable mysqld

#查看数据库运行状态:

#systemctl status mysqld

#查看mysql5.7的临时密码:

#grep 'password' /var/log/mysqld.log

此步很容易出现问题,对于没有初始化生成临时密码的情况,请在/etc/my.cnf下的mysqld下添加skip-grant-tables字段,然后重启服务,进行密码的修改和设置

#使用临时密码登陆数据库:

#mysql -u root -p

Centos7-mysql报错ERROR 1819 (HY000): Your password does not satisfy the current policy requirements

sql中执行:取消设置密码策略:

mysql]set global validate_password_policy=0;
mysql]set global validate_password_length=1;
mysql]SET PASSWORD = PASSWORD('yourpwd');

#修改root用户密码:

mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'password';

mysql> flush privileges;

mysql> quit; 或者\q 退出

第三步:安装PHP已经扩展:

#添加php的软件源到系统中,此处安装php7.2
#yum localinstall https://mirror.webtatic.com/yum/el7/webtatic-release.rpm

#安装php软件已经扩展:
#yum -y install php72w php72w-cli php72w-common php72w-devel php72w-embedded php72w-fpm php72w-gd php72w-mbstring php72w-mysqlnd php72w-opcache php72w-pdo php72w-xml

#安装redis以及PHP的扩展:
#yum install redis git -y

#cd /usr/local/src/

#git clone https://github.com/phpredis/phpredis.git

#cd phpredis

#phpize

#./configure

#make && make install

此处使用了克隆源码编译安装,在此过程中也是比较容易出错的,很容易报错出现php加载不了此扩展,网上很多说直接修改php的配置文件/etc/php.ini,添加内容,然而并不好使,直接编译加载即可

#启动php-fpm服务:
systemctl start php-fpm

#查看下版本:php -v

此处没有报错的话,PHP的扩展都已经加载
第四步:整合nginx,使其支持解析我们的php程序:

#编辑nginx配置文件:

#vim /etc/nginx/conf.d/default.conf

#内容如下所示:
server {
listen 80; #监听端口号
server_name localhost; #主机名或域名或ip
root /www; #网站根目录
index index.php index.html; #支持解析的文件类型
location ~ \.php$ {
fastcgi_pass 127.0.0.1:9000; #代理到本机的9000端口,解析php程序
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}

}
第五步:测试lnmp环境是否成功:

vim /www/index.php

<?php
phpinfo();
?>
此处使用了php的一个探针函数,此时就可以访问curl -I localhost  如果返回状态码200,并有一段网页代码,就OK 了

当然直接访问Centos 7系统的ip 地址,即可看到phpinfo所展示出来的内容。

可以看到,使用yum方式搭建lnmp环境还是很简单的。
————————————————
版权声明:本文为CSDN博主「筑梦之路」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_34777982/article/details/88234495

Centos 7 下yum搭建lnmp环境(yum安装方式)的更多相关文章

  1. centos7 yum搭建lnmp环境及配置wordpress超详细教程

    yum安装lnmp环境是最方便,最快捷的一种方法.源码编译安装需要花费大量的人类时间,当然源码编译可以个性化配置一些其它功能.目前来说,yum安装基本满足我们搭建web服务器的需求. 本文是我根据近期 ...

  2. Mac下docker搭建lnmp环境 + redis + elasticsearch

    之前在windows下一直使用vagrant做开发, 团队里面也是各种开发环境,几个人也没有统一环境,各种上线都是人肉,偶尔还会有因为开发.测试.生产环境由于软件版本或者配置不一致产生的问题, 今年准 ...

  3. Yum搭建LNMP环境(动、静、库分离)(week4_day5)--技术流ken

    前言 本篇博客使用yum来搭建lnmp环境,将采用动态,静态以及数据库分开安装的方式即nginx,php,mysql.会被分开安装在不同的服务器之上,搭建出来一套lnmp环境,并部署wordpress ...

  4. CentOS 7 源码搭建LNMP环境

    搭建 LNMP 环境 源码包版本 :  CentOS Linux  7 nginx-1.15.1.tar.gz  mysql-boost-5.7.21.tar.gz  php-7.2.7.tar.gz ...

  5. Windows 下手工搭建 LNMP 环境

    参考资料 如果想方便,可以直接使用集成的 LNMP 环境(例如 PHPStudy). 下载 PHP 下载地址:https://windows.php.net/download 根据你的系统选择 32 ...

  6. CentOS6下yum搭建LNMP环境

    1.关闭防火墙[root@CentOS ~]# chkconfig iptables off 2.关闭selinuxvi /etc/sysconfig/selinux //将SELINUX=enfor ...

  7. yum 搭建lnmp环境详细步骤

    1.关闭防火墙[root@CentOS ~]# chkconfig iptables off 2.关闭selinuxvi /etc/sysconfig/selinux//将SELINUX=enforc ...

  8. 在CENTOS上源码搭建LNMP环境

    前言 1.操作前提: CentOS Linux release 7.5.1804: sudo用户(需要root权限): 2.需要安装的组件: nginx稳定版:nginx-1.14.0: MariaD ...

  9. Ubuntu 18.04.1 下快速搭建 LNMP环境

    1.Nginx的安装 Nginx安装是属于最简单的,只需要在命令行执行 sudo apt-get install nginx 就能自动安装 Nginx,其中过程中需要 选择 Y/n 的选择Y就行了,当 ...

随机推荐

  1. 13. 抽象类 & 接口

    一.抽象类 // 抽象类Shape public abstract class Shape { // 1. 成员变量 private String color; // 2. 初始化块 { System ...

  2. Loadrunner|录制脚本时出现乱码的解决方式

    1.进入options 2. 保存后,再录制到脚本就不会有乱码了!

  3. SQL Server 删除数据库

    1. 图形化界面删除 在所需要删除的数据库上右击,然后删除.注意如果这个数据库有应用或者用户连接,请勾选[关闭现有连接],否则无法删除. 2. DROP DATABASE删除数据库 drop data ...

  4. go 通过select实现超时

    package main import ( "fmt" "time" ) func main() { ch := make(chan int) quit := ...

  5. Paper | Feedback Networks

    目录 读后总结 动机 故事 ConvLSTM图像分类网络 损失函数 与Episodic Curriculum Learning的结合 实验方法 发表在2017年CVPR. 读后总结 这篇论文旨在说明: ...

  6. a 标签 pointer-events

    a 标签渲染到也页面之后,由于某些原因需要,禁用. 有两种方法可以设置禁用效果. 1.使用 CSS 属性 pointer-events ,设置此属性为 none 之后,元素将不会成为鼠标事件的 tar ...

  7. AutoDesk公司搞的fbx模型格式

    FBX® data exchange technology is a 3D asset exchange format that facilitates higher-fidelity data ex ...

  8. MongoDB副本集--Secondary节点实例恢复

    场景描述 MongoDB副本集中有一台Secondary节点出现RECOVERING的状态 状态如下: arps:RECOVERING> rs.status() { "set" ...

  9. vuex 源码解析(四) mutation 详解

    mutation是更改Vuex的store中的状态的唯一方法,mutation类似于事件注册,每个mutation都可以带两个参数,如下: state ;当前命名空间对应的state payload ...

  10. Mongodb--内存管理MMAP

    MongoDB使用的是内存映射存储引擎,即Memory Mapped Storage Engine,简称MMAP. MMAP可以把磁盘文件的一部分或全部内容直接映射到内存,这样文件中的信息位置就会在内 ...