快如闪电的安装php8.2套件(centos 7)

快如闪电的安装php8.2套件(centos 7)

本文最新修改时间:20240623

修改内容:加了php80,php74,php72,php70,php56,php54的安装,方便复制操作。

本文只考虑centos7

本文编写时间:2023-01-11,文章较新,是我自己仔细测试过的。
remi是一个php安装仓库。是rpm包。
到底有多快?主要取决于php 8 的安装,全部软件的安装时间总共约3到5分钟(不含操作系统)。

本文各软件版本

centos 7.9.2009
php 8.2.1
nginx 1.22.1
mysql 8.0.31
redis 7.0.7
git 2.24.4 


首先,安装阿里的 centos 仓库。(centos 7)

curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo
yum makecache
yum repolist


安装阿里的 epel 仓库。(centos 7)

curl -o /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo

yum makecache
yum repolist


安装阿里的 remi 的仓库(centos 7)

yum install -y https://mirrors.aliyun.com/remi/enterprise/remi-release-7.rpm

sed -i  's/https*:\/\/rpms.remirepo.net/https:\/\/mirrors.aliyun.com\/remi/g'  /etc/yum.repos.d/remi*
sed -i 's/#baseurl/baseurl/g' /etc/yum.repos.d/remi*
sed -i 's|^mirrorlist|#mirrorlist|' /etc/yum.repos.d/remi*

yum makecache
yum repolist

yum -y install yum-utils


安装 php 8(centos 7)

yum install -y php82 php82-php-devel  php82-php-fpm  php82-php-mbstring php82-php-memcache php82-php-memcached php82-php-redis  php82-php-mysqlnd  php82-php-pdo  php82-php-bcmath php82-php-xml php82-php-gd php82-php-gmp php82-php-igbinary php82-php-imagick   php82-php-mcrypt  php82-php-pdo_mysql php82-php-posix php82-php-simplexml  php82-php-opcache php82-php-xsl php82-php-xmlwriter php82-php-xmlreader php82-php-swoole php82-php-zip php82-php-phalcon  php82-php-yaml php82-php-yar php82-php-yaf php82-php-uuid

或者

yum install -y php81 php81-php-devel  php81-php-fpm  php81-php-mbstring php81-php-memcache php81-php-memcached php81-php-redis  php81-php-mysqlnd  php81-php-pdo  php81-php-bcmath php81-php-xml php81-php-gd php81-php-gmp php81-php-igbinary php81-php-imagick   php81-php-mcrypt  php81-php-pdo_mysql php81-php-posix php81-php-simplexml  php81-php-opcache php81-php-xsl php81-php-xmlwriter php81-php-xmlreader php81-php-swoole php81-php-zip php81-php-phalcon  php81-php-yaml php81-php-yar php81-php-yaf php81-php-uuid

或者

yum install -y php80 php80-php-devel  php80-php-fpm  php80-php-mbstring php80-php-memcache php80-php-memcached php80-php-redis  php80-php-mysqlnd  php80-php-pdo  php80-php-bcmath php80-php-xml php80-php-gd php80-php-gmp php80-php-igbinary php80-php-imagick   php80-php-mcrypt  php80-php-pdo_mysql php80-php-posix php80-php-simplexml  php80-php-opcache php80-php-xsl php80-php-xmlwriter php80-php-xmlreader php80-php-swoole php80-php-zip php80-php-phalcon  php80-php-yaml php80-php-yar php80-php-yaf php80-php-uuid

或者

yum install -y php74 php74-php-devel  php74-php-fpm  php74-php-mbstring php74-php-memcache php74-php-memcached php74-php-redis  php74-php-mysqlnd  php74-php-pdo  php74-php-bcmath php74-php-xml php74-php-gd php74-php-gmp php74-php-igbinary php74-php-imagick   php74-php-mcrypt  php74-php-pdo_mysql php74-php-posix php74-php-simplexml  php74-php-opcache php74-php-xsl php74-php-xmlwriter php74-php-xmlreader php74-php-swoole php74-php-zip php74-php-phalcon  php74-php-yaml php74-php-yar php74-php-yaf php74-php-uuid

或者

yum install -y  php72 php72-php-devel  php72-php-fpm  php72-php-mbstring php72-php-memcache php72-php-memcached php72-php-redis  php72-php-mysqlnd  php72-php-pdo  php72-php-bcmath php72-php-xml php72-php-gd php72-php-gmp php72-php-igbinary php72-php-imagick   php72-php-mcrypt  php72-php-pdo_mysql php72-php-posix php72-php-simplexml  php72-php-opcache php72-php-xsl php72-php-xmlwriter php72-php-xmlreader php72-php-swoole php72-php-zip php72-php-phalcon  php72-php-yaml php72-php-yar php72-php-yaf php72-php-uuid

或者

yum install -y php70 php70-php-devel  php70-php-fpm  php70-php-mbstring php70-php-memcache php70-php-memcached php70-php-redis  php70-php-mysqlnd  php70-php-pdo  php70-php-bcmath php70-php-xml php70-php-gd php70-php-gmp php70-php-igbinary php70-php-imagick   php70-php-mcrypt  php70-php-pdo_mysql php70-php-posix php70-php-simplexml  php70-php-opcache php70-php-xsl php70-php-xmlwriter php70-php-xmlreader php70-php-swoole php70-php-zip php70-php-phalcon  php70-php-yaml php70-php-yar php70-php-yaf php70-php-uuid

或者

yum install -y php56 php56-php-devel  php56-php-fpm  php56-php-mbstring php56-php-memcache php56-php-memcached php56-php-redis  php56-php-mysqlnd  php56-php-pdo  php56-php-bcmath php56-php-xml php56-php-gd php56-php-gmp php56-php-igbinary php56-php-imagick   php56-php-mcrypt  php56-php-pdo_mysql php56-php-posix php56-php-simplexml  php56-php-opcache php56-php-xsl php56-php-xmlwriter php56-php-xmlreader php56-php-swoole php56-php-zip php56-php-phalcon  php56-php-yaml php56-php-yar php56-php-yaf php56-php-uuid

或者

yum install -y php54 php54-php-devel  php54-php-fpm  php54-php-mbstring php54-php-memcache php54-php-memcached php54-php-redis  php54-php-mysqlnd  php54-php-pdo  php54-php-bcmath php54-php-xml php54-php-gd php54-php-gmp php54-php-igbinary php54-php-imagick   php54-php-mcrypt  php54-php-pdo_mysql php54-php-posix php54-php-simplexml  php54-php-opcache php54-php-xsl php54-php-xmlwriter php54-php-xmlreader php54-php-swoole php54-php-zip php54-php-phalcon  php54-php-yaml php54-php-yar php54-php-yaf php54-php-uuid

执行上面这个命令,大约3分钟左右。主要是因为共安装两百多个包。
总体其实速度是很快的。


安装阿里和腾讯的 composer 镜像源(centos 7)

ln -s /usr/bin/php82 /usr/bin/php

curl -o /usr/local/bin/composer https://mirrors.aliyun.com/composer/composer.phar

chmod +x /usr/local/bin/composer

composer config -g repos.packagist composer https://mirrors.tencent.com/composer/ 

使用 root 身份执行 composer 命令,会提示输入 yes ,挺麻烦,则

vim /etc/environment
文字
export COMPOSER_ALLOW_SUPERUSER=1

然后

source /etc/environment


安装 nginx 并整合 php-fpm 服务(centos 7)

# 下面这个echo是一句命令,得一起复制

echo $'[nginx-stable]
name=nginx stable repo
baseurl=http://nginx.org/packages/centos/$releasever/$basearch/
gpgcheck=1
enabled=1
gpgkey=https://nginx.org/keys/nginx_signing.key
module_hotfixes=true ' > /etc/yum.repos.d/nginx.repo

# 上面是一条echo命令。

yum makecache
yum install -y nginx
systemctl enable nginx
systemctl enable php82-php-fpm
sed -i 's/user\ =\ apache/user\ =\ nginx/g' /etc/opt/remi/php82/php-fpm.d/www.conf
sed -i 's/group\ =\ apache/group\ =\ nginx/g' /etc/opt/remi/php82/php-fpm.d/www.conf

rm -f /etc/nginx/conf.d/default.conf
vi /etc/nginx/conf.d/default.conf

/etc/nginx/conf.d/default.conf 文件内容如下

server {
    listen       80;
    server_name  localhost;
    charset utf-8 ;
    access_log  /var/log/nginx/host.access.log  main;
    root   /usr/share/nginx/html;
    index index.php  index.html index.htm;
    error_page 404  500 502 503 504  /50x.html;
    location = /50x.html {
        root   /usr/share/nginx/html;
    }
    location / {
        try_files $uri $uri/ /index.php?$query_string;
    }
    location ~ \.php$ {
        fastcgi_pass   127.0.0.1:9000;
        fastcgi_index  index.php;
        fastcgi_param  SCRIPT_FILENAME  $realpath_root$fastcgi_script_name;
        include        fastcgi_params;
    }
}

添加一个 php 文件如下:

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

<?php
phpinfo();

启动 php-fpm 和 nginx 并验证安装正确

systemctl start nginx
systemctl start php82-php-fpm

curl localhost/1.php
# 如果能看到很多的大量输出,说明php和nginx正确安装了。


安装mysql 8(centos 7)

rpm -Uvh https://repo.mysql.com/mysql80-community-release-el7-7.noarch.rpm

# 下面这句安装mysql服务,时间大概1到3分钟左右。

yum --enablerepo=mysql80-community install mysql-community-server

systemctl enable mysqld
systemctl start mysqld

# 查看初始密码:
grep 'temporary password' /var/log/mysqld.log

# 用查看到的密码进入mysql 的 shell
mysql -uroot -p

下面,整套设置新用户流程,先改初始,再加新用户并授权,再删除老用户。

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'tb4Wn3BthR.';
flush privileges;
set global validate_password.policy=LOW;
create user 'root'@'%' identified by 'root1234';
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'root1234';
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%';
drop user root@localhost;
flush privileges;

退出shell,重新进入。

现在就可以直接进入shell

mysql -uroot -proot1234

# 这句话查看用户的加密方式。
select user, host, plugin from mysql.user\G;

# plugin: caching_sha2_password 表示老的MySQL客户端无法连接!


安装阿里镜像源 ius 内的 git(centos 7)

安装这个的理由是 centos7 带的 git 大版本是 1,真的太老了。
另外这里也一定要薅到阿里的羊毛~

先尝试删除

yum remove git

继续

yum install -y https://mirrors.aliyun.com/ius/ius-release-el7.rpm
sed -i  's/https:\/\/repo.ius.io/https:\/\/mirrors.aliyun.com\/ius/g'  /etc/yum.repos.d/ius*
yum makecache
yum install -y git224

git config --global core.autocrlf false
git config --global core.safecrlf false
git config --global user.name "Your Name"
git config --global user.email "your_email@example.com"


安装 redis 7 以及其他常用库(centos 7)

yum --enablerepo=remi install -y redis
yum install -y  wget vim zip unzip p7zip rsync crontabs supervisor net-tools python3
systemctl enable redis
systemctl start redis

注意和上面版本不同,如想安装redis5,但不可以同时安装reids 5和7 (centos 7)

yum install redis5

总结(centos 7)

用了国内镜像会速度极快,下载包的速度:3MB/秒,惊人的快
mysql安装今天非常快。今天20230111实测的结果:本文只有php有点慢了。
另外感谢阿里云镜像库,非常快速和方便。

本作品采用《CC 协议》,转载必须注明作者和本文链接
本帖由系统于 1年前 自动加精
讨论数量: 2

兄弟十分感谢,拯救了我,不然一个下午完了还搞不出来

3个月前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!
未填写
文章
58
粉丝
11
喜欢
63
收藏
104
排名:484
访问:1.8 万
私信
所有博文
社区赞助商