首页 > 运维 > linux运维 > 正文

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

蓮花仙者
发布: 2025-07-23 12:04:22
原创
795人浏览过

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

解决无法联网问题在新镜像安装后,经常会遇到没有网络,或者在安装虚拟机(桥接)时发现没有自己的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'
登录后复制

最后重启生效:

Find JSON Path Online
Find JSON Path Online

Easily find JSON paths within JSON objects using our intuitive Json Path Finder

Find JSON Path Online 193
查看详情 Find JSON Path Online
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
<?php phpinfo(); ?>
登录后复制

保存退出。

接着就是见证奇迹的时刻了,打开我们本地的浏览器,输入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
登录后复制

全文完

以上就是Centos7 mini 配置 php7+nginx+mysql 最详细过程,为linux小白送福利的详细内容,更多请关注php中文网其它相关文章!

PHP速学教程(入门到精通)
PHP速学教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

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