本文介绍在CentOS 7.5下安装nginx,php7.2,mysql5.7版本。以及php redis和swoole扩展。并安装常用开发工具git,composer等。
安装软件
yum install -y wget vim
修改 yum 源 (若已在上篇文档中完成请忽略)
cd /etc/yum.repos.d/
mv CentOS-Base.repo CentOS-Base.repo.bak
# 依次执行下面的命令
# 阿里云yum源:
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
yum clean all
rm -rf /var/cache/yum
yum makecache
yum update -y
# 添加 mysql-server 源
cd /etc/yum.repos.d/
wget http://repo.mysql.com/mysql57-community-release-el7-8.noarch.rpm
rpm -ivh mysql57-community-release-el7-8.noarch.rpm
rm -f mysql57-community-release-el7-8.noarch.rpm
# 添加 epel-release webtatic 源地址
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.2 (这里 php 扩展只装一些基本的若需要后面自己安装)
# 安装php7.2
yum install -y php72w php72w-cli php72w-fpm php72w-mbstring
# 安装 pecl 工具
yum install -y gcc gcc-c++ php72w-devel php72w-pear
# 更新pecl
pecl channel-update 'pecl.php.net'
# 安装 php redis 扩展(redis 扩展安装过程中询问直接回车,默认no)
pecl install redis
# 安装 hiredis 库
cd /usr/local/src
wget https://github.com/redis/hiredis/archive/v0.13.3.tar.gz
tar -xf v0.13.3.tar.gz && \
cd hiredis-0.13.3 && \
make && make install
# 添加动态库
vim /etc/ld.so.conf.d/usr-libs.conf
# 添加如下内容
/usr/local/lib
:wq # 保存退出
# 更新动态库
/sbin/ldconfig
# 安装 php swoole 扩展(swoole 扩展安装过程中询问除了openssl和redis为yes,其他都默认no)
yum -y install openssl-devel
pecl install swoole
yum 安装 nginx
yum install -y nginx
# 设置 nginx 隐藏版本号
vim /etc/nginx/nginx.conf
# 修改为如图所示
vim /etc/nginx/fastcgi_params
# 将红框位置修改如图所示
设置防火墙(开启80端口)
# 查看端口开放情况
firewall-cmd --state
# 或
systemctl status firewalld
# 如果终端输出running就表示防火墙已经开启了,反之就没有。
# 查看以开放的端口
firewall-cmd --list-ports
# 添加一个单独的端口(示例为80)
firewall-cmd --zone=public --add-port=80/tcp --permanent
添加一组连续的端口(示例为81到85)
firewall-cmd --zone=public --add-port=81-85/tcp --permanent
# 重启防火墙生效
firewall-cmd --reload
# 查看指定端口是否开放
firewall-cmd --zone=public --query-port=80/tcp
# 关闭端口
firewall-cmd --zone=public --remove-port=80/tcp --permanent
# 关闭防火墙
systemctl stop firewalld.service
关闭 SELINUX
vim /etc/selinux/config
# 修改如下图所示
yum 安装 mysql-server
yum install -y mysql-server
# 安装完毕后,运行mysql,然后在 /var/log/mysqld.log 文件中会自动生成一个随机的密码,我们需要先取得这个随机密码,以用于登录 MySQL 服务端:
service mysqld start
grep "password" /var/log/mysqld.log
# 将会返回如下内容,末尾字符串就是密码,把它复制下来:
A temporary password is generated for root@localhost: hilX0U!9i3_6 →(这个密码是下面要用到的)
# 登录到 MySQL 服务端并更新用户 root 的密码:
# 注意:由于 MySQL5.7 采用了密码强度验证插件 validate_password,故此我们需要设置一个有一定强度的密码;
mysql -u root -p hilX0U!9i3_6 ←(这个密码是你在上面得到的)
# 然后更改密码
SET PASSWORD = PASSWORD('root');
ALTER USER 'root'@'localhost' PASSWORD EXPIRE NEVER;
flush privileges;
# 设置用户 root 可以在任意 IP 下被访问:
grant all privileges on *.* to root@"%" identified by "root";
# 设置用户 root 可以在本地被访问:
grant all privileges on *.* to root@"localhost" identified by "root";
# 刷新权限使之生效:
flush privileges;
# 修改 mysql 默认字符集为 utf8mb4
vim /etc/my.cnf
# 修改如图
# 下面是修改的内容
[mysql]
default-character-set = utf8mb4
[mysqld]
character-set-client-handshake = FALSE
character-set-server = utf8mb4
collation-server = utf8mb4_unicode_ci
init_connect = 'SET NAMES utf8mb4'
安装 redis 服务
yum install -y redis
安装 git
yum install -y git
安装 composer
下载composer.phar文件
curl -sS https://getcomposer.org/installer | php
将composer.phar移动到环境变量中并且更名为composer
mv composer.phar /usr/local/bin/composer
使用国内镜像
composer config -g repo.packagist composer https://packagist.phpcomposer.com