我们都知道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. Java 并发(1)——线程安全

    我们对并发一词并不陌生,它通常指多个任务同时执行.实际上这不完全对,“并行”才是真正意义上的同时执行,而“并发”则更偏重于多个任务交替执行.有时候我们会看见一些人一边嘴里嚼着东西一边讲话,这是并行:当 ...

  2. JAVA框架中XML文件

    其实在JAVA开发中servlet配置,映射注入配置等等都可以用xml来配置 在此处的department是实体类的名字,而不是对应的数据库表的名字 数据库表的字段名=#{实体类属性名} 逆向工程生成 ...

  3. 在python的虚拟环境venv中使用gunicorn

    昨天遇到的问题,一个服务器上有好几个虚拟机环境. 我active进一个虚拟环境,安装了新的三方库之后, 使用gunicorn启动django服务, 但还是死活提示没有安装这个三方库. 一开始没有找到原 ...

  4. 10.Java基础_IDEA的使用

    IDEA下项目结构: 项目->模块->包->java文件 流程图 1.创建一个空项目(JavaSE_Code) 选择Empty Project 输入项目名和路径 2.创建一个新模块 ...

  5. you have new mail in /var/spool/mail/root !

    今天开发的同事告诉我,他在登录系统时老是提示you have new mail in /var/spool/mail/root ! 我一猜就知道他们肯定又自己写定时任务了,这样的事已经发生过好几回了, ...

  6. SpringBoot application.properties配置参数详情

    multipart multipart.enabled 开启上传支持(默认:true) multipart.file-size-threshold: 大于该值的文件会被写到磁盘上 multipart. ...

  7. Single-SPA 前端微服务化 动态路由多系统合并

    每日优鲜供应链前端团队微前端改造 动态注册路由,然后根据路由判断加载子项目js资源.子项目webpack需要设置externals,然后用systemjs接管external的包加载 webpack ...

  8. svg 画地图

    下载一个svgDeveloper软件,破解版下载     1.首先找一张地图作为绘制模板;(当然你也可以自己画,不准确怪我咯!)       2.新建svg文件:File --> New --& ...

  9. 编程中的policy

    policy,译为政策,一般是预设的一种限制条件,举个例子   var policyText = { "expiration": "2019-01-01T12:00:00 ...

  10. PHP输出函数

    1.print()输出 header('Content-Type:text/html;charset=utf-8'); print ("最近想学习PHP,大家推荐哪个学校好点?/n" ...