0

0

Centos7 mini 配置 php7+nginx+mysql 最详细过程,为linux小白送福利

蓮花仙者

蓮花仙者

发布时间:2025-07-23 12:04:22

|

795人浏览过

|

来源于php中文网

原创

虽然本来不想写这篇文章,但由于最近询问关于这些环境配置的朋友较多,我决定整理一番,以下内容均为本人实战验证过的结果。

解决无法联网问题在新镜像安装后,经常会遇到没有网络,或者在安装虚拟机(桥接)时发现没有自己的IP,或者在使用yum install时出现“could not retrieve mirrorlist”的问题。

没有IP:

Centos7 mini 配置 php7+nginx+mysql 最详细过程,为linux小白送福利

yum失败:

立即学习PHP免费学习笔记(深入)”;

Centos7 mini 配置 php7+nginx+mysql 最详细过程,为linux小白送福利

解决方法

vim /etc/sysconfig/network-scripts/ifcfg-ens33

请注意,你的网卡名称可能不同,比如ifcfg-enp5s0f0;将ONBOOT改为yes,然后重启网络。

systemctl restart network

结果:

Centos7 mini 配置 php7+nginx+mysql 最详细过程,为linux小白送福利

好了,现在已经可以联网了,接下来我们开始搭建PHP环境。

更换yum源(可选操作)参考 https://www.php.cn/link/cb1791d9672d69b321c67b55d0aa3db4

开始搭建LNMP之nginx推荐大家使用yum源来安装,方便快捷。但yum源中没有我们想要的nginx版本,所以我们需要增加一个nginx的yum源。新建文件:

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

复制以下内容:

[nginx]
name=nginx repo
baseurl=http://nginx.org/packages/centos/$releasever/$basearch/
gpgcheck=0
enabled=1

然后保存退出,输入yum list nginx查看:

Centos7 mini 配置 php7+nginx+mysql 最详细过程,为linux小白送福利

好了,yum源配置成功了,直接使用yum安装即可:

yum install nginx

启动nginx:

systemctl start nginx

添加开机启动项:

systemctl enable nginx

好了,nginx的最新版本已经安装好了,访问一下本机80端口:

Centos7 mini 配置 php7+nginx+mysql 最详细过程,为linux小白送福利

开始搭建LNMP之MySQL5.7首先安装mysql的rpm软件包,执行:

rpm -Uvh  http://dev.mysql.com/get/mysql57-community-release-el7-9.noarch.rpm

安装成功后可以查看可用版本,执行:

yum repolist all | grep mysql

Centos7 mini 配置 php7+nginx+mysql 最详细过程,为linux小白送福利

好了,安装MySQL:

yum install mysql-community-server

安装成功!

Centos7 mini 配置 php7+nginx+mysql 最详细过程,为linux小白送福利

接下来要注意了!

按照我的顺序操作,首先启动mysql

systemctl start mysqld

接下来获取mysql的默认初始密码,这里是因为mysql在5.7版本增强了安全机制,所以新安装后都会有一个初始密码:

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

Centos7 mini 配置 php7+nginx+mysql 最详细过程,为linux小白送福利

好了,复制这个初始密码登录mysql,并修改root密码:(由于MySQL5.7默认安装了密码安全检查工具,要求密码必须包含大小写字母、数字和特殊符号,并且长度不能少于8位,否则会报错,如下图)

Centos7 mini 配置 php7+nginx+mysql 最详细过程,为linux小白送福利

当然,这里不推荐修改密码策略,数据库的密码应该设置得复杂一些,养成良好的习惯。

为了安全考虑,root是不允许远程连接的,于是我们添加一个新用户并授予远程登录权限:

GRANT ALL PRIVILEGES ON *.* TO 'litblc'@'%' IDENTIFIED BY 'Litblc.com.2017' WITH GRANT OPTION;

刷新:

FLUSH PRIVILEGES;

Centos7 mini 配置 php7+nginx+mysql 最详细过程,为linux小白送福利

用户名为litblc,密码为Litblc.com.2017的远程用户已经建立好了,运行select host, user from mysql.user可以查看所有用户与授权主机信息:

Centos7 mini 配置 php7+nginx+mysql 最详细过程,为linux小白送福利

设置MySQL开机启动:

systemctl enable mysqld
systemctl daemon-reload

最后我们退出mysql来修改一下他的配置文件,使他默认使用utf8编码:

vi /etc/my.cnf

在[mysqld]下添加编码配置

[mysqld]
character_set_server=utf8
init_connect='SET NAMES utf8'

最后重启生效:

Playground AI
Playground AI

AI图片生成和修图

下载
systemctl restart mysqld

好了,接下来开始安装php7

开始搭建LNMP之php第一步依然是安装php的rpm软件包

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安装php7以及他的一些扩展(扩展可以根据自己需求添加)

yum install php70w.x86_64 php70w-cli.x86_64 php70w-common.x86_64 php70w-gd.x86_64 php70w-ldap.x86_64 php70w-mbstring.x86_64 php70w-mcrypt.x86_64 php70w-mysqlnd.x86_64 php70w-pdo.x86_64 php72w-xml.x86_64 php70w-devel

安装php-fpm:

yum install php70w-fpm php70w-opcache

启动、开机启动php-fpm:

systemctl start php-fpm
systemctl enable php-fpm

好了,接下来配置nginx,使其解析php,vi /etc/nginx/conf.d/default.conf,应该有如下一段被注释掉的代码,打开并修改为:

    root  /usr/share/nginx/html;
    location ~ \.php$ {
        fastcgi_pass   127.0.0.1:9000;
        fastcgi_index  index.php;
        fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
        include        fastcgi_params;
    }

重启nginx:systemctl restart nginx

到nginx解析目录创建phpinfo.php:

vi /usr/share/nginx/html/phpinfo.php

保存退出。

接着就是见证奇迹的时刻了,打开我们本地的浏览器,输入http://192.168.9.138/phpinfo.php,是否见到了熟悉的界面呢?我没见到,防火墙拒绝了,那么很好,我们就一步到位,再来配置个防火墙。

开始搭建LNMP之iptables首先关闭SELINUX :

vi /etc/selinux/config

注释如下配置:

SELINUX=enforcing
SELINUXTYPE=targeted

并增加一行:

SELINUX=disabled

Centos7 mini 配置 php7+nginx+mysql 最详细过程,为linux小白送福利

保存退出,使配置立即生效:

setenforce 0

关闭firewalld并禁止开机启动:

systemctl stop firewalld
systemctl disable firewalld

接下来安装iptables防火墙:

yum install iptables-services

编辑防火墙配置文件,添加80和3306端口:

vi /etc/sysconfig/iptables
-A INPUT -p tcp -m state --state NEW -m tcp --dport 3306 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 80 -j ACCEPT

Centos7 mini 配置 php7+nginx+mysql 最详细过程,为linux小白送福利

保存退出,重新启动防火墙使配置生效,并设为开机启动项:

systemctl restart iptables
systemctl enable iptables

好了,大功告成,访问我们的phpinfo.php:

Centos7 mini 配置 php7+nginx+mysql 最详细过程,为linux小白送福利

测试远程数据库连接:

Centos7 mini 配置 php7+nginx+mysql 最详细过程,为linux小白送福利

一切正常!至此,配置完成。

composer && nodejs安装composer:

https://getcomposer.org/download/
// 放到全局环境变量里,并添加执行权限
mv composer.phar /usr/local/bin/composer

设置中国全量镜像

composer config -g repo.packagist composer https://packagist.phpcomposer.com
composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/
composer self-update
composer clear-cache

Centos7 mini 配置 php7+nginx+mysql 最详细过程,为linux小白送福利

安装nodejs:

可以去官网 https://www.php.cn/link/0c9097d0139751fc728f1614cca51b43 查找自己想要安装的版本,这里我以最新的LTS版本6.11.2为例安装。

Centos7 mini 配置 php7+nginx+mysql 最详细过程,为linux小白送福利

注意下载的是什么文件,推荐使用编译好的如下方式,楼主自己编译的时候曾经把服务器干挂了,真是人生头一回。

使用wget下载压缩包,若没有wget命令,则需要先安装 yum install wget

wget https://www.php.cn/link/0c9097d0139751fc728f1614cca51b43v6.11.2/node-v6.11.2-linux-x64.tar.xz

解压:

tar xvJf node-v6.11.2-linux-x64.tar.xz

之后进入到bin目录,将node 和 npm 设为全局执行:

cd  node-v6.11.2-linux-x64/bin
ln -s /usr/node/node-v6.11.2-linux-x64/bin/node  /usr/local/bin/node
ln -s /usr/node/node-v6.11.2-linux-x64/bin/npm  /usr/local/bin/npm

这里 /usr/node/node-v6.11.2-linux-x64这个目录是你自己解压node文件的目录,我的放在/usr/node

好了,执行 node -v 和 npm -v 可以查看到版本号,至此,基本开发环境已经配置完毕。

补充:使用全局淘宝镜像地址,使用cnpm命令代替npm:

npm install -g cnpm --registry=https://registry.npm.taobao.org

全文完

相关专题

更多
php文件怎么打开
php文件怎么打开

打开php文件步骤:1、选择文本编辑器;2、在选择的文本编辑器中,创建一个新的文件,并将其保存为.php文件;3、在创建的PHP文件中,编写PHP代码;4、要在本地计算机上运行PHP文件,需要设置一个服务器环境;5、安装服务器环境后,需要将PHP文件放入服务器目录中;6、一旦将PHP文件放入服务器目录中,就可以通过浏览器来运行它。

2691

2023.09.01

php怎么取出数组的前几个元素
php怎么取出数组的前几个元素

取出php数组的前几个元素的方法有使用array_slice()函数、使用array_splice()函数、使用循环遍历、使用array_slice()函数和array_values()函数等。本专题为大家提供php数组相关的文章、下载、课程内容,供大家免费下载体验。

1663

2023.10.11

php反序列化失败怎么办
php反序列化失败怎么办

php反序列化失败的解决办法检查序列化数据。检查类定义、检查错误日志、更新PHP版本和应用安全措施等。本专题为大家提供php反序列化相关的文章、下载、课程内容,供大家免费下载体验。

1525

2023.10.11

php怎么连接mssql数据库
php怎么连接mssql数据库

连接方法:1、通过mssql_系列函数;2、通过sqlsrv_系列函数;3、通过odbc方式连接;4、通过PDO方式;5、通过COM方式连接。想了解php怎么连接mssql数据库的详细内容,可以访问下面的文章。

954

2023.10.23

php连接mssql数据库的方法
php连接mssql数据库的方法

php连接mssql数据库的方法有使用PHP的MSSQL扩展、使用PDO等。想了解更多php连接mssql数据库相关内容,可以阅读本专题下面的文章。

1420

2023.10.23

html怎么上传
html怎么上传

html通过使用HTML表单、JavaScript和PHP上传。更多关于html的问题详细请看本专题下面的文章。php中文网欢迎大家前来学习。

1235

2023.11.03

PHP出现乱码怎么解决
PHP出现乱码怎么解决

PHP出现乱码可以通过修改PHP文件头部的字符编码设置、检查PHP文件的编码格式、检查数据库连接设置和检查HTML页面的字符编码设置来解决。更多关于php乱码的问题详情请看本专题下面的文章。php中文网欢迎大家前来学习。

1509

2023.11.09

php文件怎么在手机上打开
php文件怎么在手机上打开

php文件在手机上打开需要在手机上搭建一个能够运行php的服务器环境,并将php文件上传到服务器上。再在手机上的浏览器中输入服务器的IP地址或域名,加上php文件的路径,即可打开php文件并查看其内容。更多关于php相关问题,详情请看本专题下面的文章。php中文网欢迎大家前来学习。

1306

2023.11.13

Java JVM 原理与性能调优实战
Java JVM 原理与性能调优实战

本专题系统讲解 Java 虚拟机(JVM)的核心工作原理与性能调优方法,包括 JVM 内存结构、对象创建与回收流程、垃圾回收器(Serial、CMS、G1、ZGC)对比分析、常见内存泄漏与性能瓶颈排查,以及 JVM 参数调优与监控工具(jstat、jmap、jvisualvm)的实战使用。通过真实案例,帮助学习者掌握 Java 应用在生产环境中的性能分析与优化能力。

3

2026.01.20

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
PostgreSQL 教程
PostgreSQL 教程

共48课时 | 7.5万人学习

Git 教程
Git 教程

共21课时 | 2.8万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号