更改国内yum源:

1.备份yum源文件,位置在/etc/yum.repos.d/CentOS-Base.repo

mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo_bak

2.获取阿里的yum源:(centos7为例)

wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo

3.更新cache

yum makecache

4.更新该yum源下所有资源:

yum -y update

安装Nginx

1.更换nginx源为官网源(这步可省略)

To set up the yum repository for RHEL/CentOS, create the file named /etc/yum.repos.d/nginx.repo with the following contents:

[nginx]
name=nginx repo
baseurl=http://nginx.org/packages/OS/OSRELEASE/$basearch/
gpgcheck=0
enabled=1
Replace “OS” with “rhel” or “centos”, depending on the distribution used, and “OSRELEASE” with “6” or “7”, for 6.x or 7.x versions, respectively.

2.安装并启动nginx:

查询nginx源、安装nginx、关闭防火墙、启动nginx

yum search nginx
yum -y install nginx
service iptables stop
service nginx start


 安装PHP

如果打算安装5.X版本,直接yum install php就可以。

我这里安装PHP7.0,所以如下操作:

更新yum源、安装php7.0及许多依赖

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
yum install php70w-common php70w-fpm php70w-opcache php70w-gd php70w-mysqlnd php70w-mbstring php70w-pecl-redis php70w-pecl-memcached php70w-devel

安装OK后,php -v即可看到 php7的版本信息

那么问题来了,怎么验证nginx可以解析php呢?

在nginx默认启动位置/usr/share/nginx/html下,新建info.php。里面测试代码如下:

<?php
phpinfo();
?>

浏览器里访问http://服务器IP/info.php,发现浏览器直接下载了,还是打不开。怎么弄呢?继续往下看。

在/etc/nginx/conf.d/default.conf中,找到对应代码修改为如下代码:

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;
}

重新启动nginx、php-fpm。然后重新访问上一步路径,效果如下:

这样子,php就安装完成了。继续安装mysql。


安装MySQL

执行以下命令:

yum -y install mysql mysql-server ,mysql-devel

有时候,会出现mysql-server找不到的错误。那么不急,再执行下面这条命令后即可。

rpm -Uvh http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm
yum intsall mysql-server

安装成功后,启动mysql。并且修改密码为123.

service mysqld start
use mysql;
update user set password=password('123') where user='root' and host='localhost';
flush privileges;

最后测试下,php能否连接上呢?

在/usr/share/nginx/html下新建mysql.php

<?php
$conn=mysql_connect('localhost','root','123') ;
if($conn)
echo "OK";
else
echo "failed";
?>

结果是链接失败了,php-fpm错误日志显示没有mysql_connect()函数。怎么解决呢?

因为缺少php-mysql模块,所以安装命令为:

yum install php-mysql

最后特别需要说明的一点,PHP7以上版本不支持原来的mysql_connect函数。应该使用如下测试代码,我就陷坑好久!

<?php
$mysqli = new mysqli("localhost", "root", "password");
if(!$mysqli) {
echo"database error";
}else{
echo"php env successful";
}
$mysqli->close();
?>

至此,LNMP环境全部配置完成。快去建站吧!

一步步yum安装LNMP,脱坑笔记!!!的更多相关文章

  1. CentOS7使用yum安装LNMP环境以后无法打开php页面

    CentOS7使用yum安装LNMP环境以后无法打开php页面 页面提示为File not found 查看nginx错误日志/var/log/nginx/error.log提示如下 原因分析 ngi ...

  2. centos7 yum 安装lnmp

    centos7 yum 安装lnmp   安装7.2把7.1改成7.2就行 使用第三方扩展epel源安装php7.2 #移除旧版php [root@web02 ~]# yum remove php-m ...

  3. centos6服务器YUM安装LNMP(LINUX+NGINX+MYSQL+PHP)

    之前都用的lamp,这次配置一个lnmp来看看,试试Nginx是不是好用 关闭SELINUXvi /etc/selinux/config#SELINUX=enforcing #注释掉#SELINUXT ...

  4. centos6.5下yum安装lnmp(适合刚入职的新手的方法)

    新入职的员工,开始的时候都是让配环境,本地写代码用的wamp,在lnmp或lamp测试,除非有些土豪公司 用的是(果机). 另外安装时,把整个流程在脑子里先过一篇(记不全也没关系,一回生二回熟),重在 ...

  5. Centos7下使用yum安装lnmp zabbix3.2

    1:配置epel-release mysql zabbix 源 配置epel源 wget http://mirrors.aliyun.com/epel/epel-release-latest-7.no ...

  6. yum安装lnmp

    python其他知识目录 1.安装LNMP之前要安装EPEL,以便安装源以外的软件,如Nginx,phpMyAdmin等. yum install epel-release 提示:EPEL,即Extr ...

  7. Centos6.8 yum安装LNMP

    1.Centos6系统库中默认是没有nginx的rpn包的,所以我们需要先更新下rpm依赖库 (1):使用yum安装nginx,安装nginx库 rpm -Uvh http://nginx.org/p ...

  8. Centos7 yum安装LNMP

    1.Centos7系统库中默认是没有nginx的rpn包的,所以我们需要先更新下rpm依赖库 (1):使用yum安装nginx,安装nginx库 rpm -Uvh http://nginx.org/p ...

  9. yum安装 lnmp (linux+nginx+php7.1+mysql5.7)

    1.第一步先更新yum update 2.yum安装nginx安装nginx最新源:yum localinstall http://nginx.org/packages/centos/7/noarch ...

随机推荐

  1. java中的 equals 与 ==

    Java中的"=="永远比较的是两个对象是否是同一个对象(引用指向同一块内存就是同一个对象) Java中equals() 在使用必须与类挂上钩,不能单独使用.有的人这样理解&quo ...

  2. sklearn 中 make_blobs模块

    # 生成用于聚类的各向同性高斯blobsklearn.datasets.make_blobs(n_samples = 100,n_features = 2,center = 3,cluster_std ...

  3. 如何用navicat premium 链接Oracel数据库

    1.连接->Oracle 2.填写配置信息 3.填写完成后连接测试,发现报错 : TNS:listener does not currently know of service requeste ...

  4. 关于CountDownLatch控制线程的执行顺序

    在上一篇文章中说过使用thread.join()方法.newSingleThreadExecutor单线程池来控制线程执行顺序.在文章的末尾我提出了一种构想,可否使用经典的生产者和消费者模型来控制执行 ...

  5. 分布式基础学习【二】 —— 分布式计算系统(Map/Reduce)

    二. 分布式计算(Map/Reduce) 分布式式计算,同样是一个宽泛的概念,在这里,它狭义的指代,按Google Map/Reduce框架所设计的分布式框架.在Hadoop中,分布式文件系统,很大程 ...

  6. Python编写两个数的加减法游戏

    目标: 1.实现两个数的加减法 2.回答者3次输错计算结果后,输出正确结果,并询问回答者是否继续 1.使用常规函数实现两个数的加减法游戏 代码如下: #!/usr/bin/env python # - ...

  7. Web服务器父与子 Apache和Tomcat区别(转)

    From http://developer.51cto.com/art/201007/210894.htm 熟悉三国的朋友都知道曹操,曹操有二十五个儿子,其中最得曹操宠爱的是曹丕.曹植.曹彰三个,曹丕 ...

  8. 使用Cytoscape画PPI网络图

    打开Cytoscape软件,根据菜单导入string_interactions.tsv文件 File ----> Import ----> Network from File 会弹出下图对 ...

  9. Luogu 3241 [HNOI2015]开店

    BZOJ 4012权限题 浙科协的网突然炸了,好慌…… 据说正解是动态点分治,然而我并不会,我选择树链剖分 + 主席树维护. 设$dis_i$表示$i$到$root(1)$的值,那么对于一个询问$u$ ...

  10. 20169219 Nmap扫描实验

    提交用 namp 对Windows 靶机,SEED靶机,Linux靶机的扫描的命令和结果进行截图 一.首先分析Linux靶机Metasploitable 扫描Metasploitableb靶机 扫描M ...