Home >Backend Development >PHP8 >Teach you how to install php8.2 package as quickly as possible (ubuntu 20.04 focal)

Teach you how to install php8.2 package as quickly as possible (ubuntu 20.04 focal)

藏色散人
藏色散人forward
2023-01-13 10:03:364829browse

This article brings you relevant knowledge about php8.2. It mainly introduces and teaches you how to quickly install the php8.2 suite? How fast is it? It may take about 20 minutes... Let's take a look at it, I hope it will be helpful to everyone.

Quickly install php8.2 package (ubuntu 20.04 focal)

How fast is it? The result of my attempt here is about 20 minutes in total (excluding the operating system).

In addition, it is my computer and the same Alibaba Cloud mirror library. It is very fast to install various software including PHP on CentOS system, but it is slower to install this Ubuntu. The reason is not clear (one possible reason is Because there are too many people using Ubuntu, Alibaba has limited the download rate of the source to save a little money.).

Each software version of this article

ubuntu 20.04
php 8.2.1
nginx 1.22.1
mysql 8.0.31
redis 7.0.7
git 2.24.4

First, install Ali’s warehouse

首先必须 apt update
安装 vim

vim /etc/apt/sources.list
内容如下,就是搞阿里云镜像。但是http的,被我改的。不搞无法更新。
deb http://mirrors.aliyun.com/ubuntu/ focal main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal main restricted universe multiverse

deb http://mirrors.aliyun.com/ubuntu/ focal-security main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal-security main restricted universe multiverse

deb http://mirrors.aliyun.com/ubuntu/ focal-updates main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal-updates main restricted universe multiverse

deb http://mirrors.aliyun.com/ubuntu/ focal-backports main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal-backports main restricted universe multiverse

然后
apt update

apt install -y --reinstall ca-certificates

现在,再把阿里云镜像库中的 http 改成标准的 https,
vim /etc/apt/sources.list

deb https://mirrors.aliyun.com/ubuntu/ focal main restricted universe multiverse
deb-src https://mirrors.aliyun.com/ubuntu/ focal main restricted universe multiverse

deb https://mirrors.aliyun.com/ubuntu/ focal-security main restricted universe multiverse
deb-src https://mirrors.aliyun.com/ubuntu/ focal-security main restricted universe multiverse

deb https://mirrors.aliyun.com/ubuntu/ focal-updates main restricted universe multiverse
deb-src https://mirrors.aliyun.com/ubuntu/ focal-updates main restricted universe multiverse

# deb https://mirrors.aliyun.com/ubuntu/ focal-proposed main restricted universe multiverse
# deb-src https://mirrors.aliyun.com/ubuntu/ focal-proposed main restricted universe multiverse

deb https://mirrors.aliyun.com/ubuntu/ focal-backports main restricted universe multiverse
deb-src https://mirrors.aliyun.com/ubuntu/ focal-backports main restricted universe multiverse
然后。再次
apt update

Install php 8

apt install -y gnupg gosu curl ca-certificates zip unzip git supervisor sqlite3 libcap2-bin libpng-dev python2 dnsutils systemd gnupg2 lsb-release ubuntu-keyring

上面的命令需要选择多个选项。选亚洲 asia。选上海 shanghai

curl -sS 'https://keyserver.ubuntu.com/pks/lookup?op=get&search=0x14aa40ec0831756756d7f66c4f4ea0aae5267a6c' | gpg --dearmor | tee /usr/share/keyrings/ppa_ondrej_php.gpg > /dev/null

echo "deb [signed-by=/usr/share/keyrings/ppa_ondrej_php.gpg] https://ppa.launchpadcontent.net/ondrej/php/ubuntu focal main" > /etc/apt/sources.list.d/ppa_ondrej_php.list


apt-get update

apt-get install -y php8.2-cli php8.2-dev  php8.2-pgsql php8.2-sqlite3 php8.2-gd  php8.2-curl  php8.2-imap php8.2-mysql php8.2-mbstring  php8.2-xml php8.2-zip php8.2-bcmath php8.2-soap   php8.2-intl php8.2-readline  php8.2-ldap  php8.2-msgpack php8.2-igbinary php8.2-redis php8.2-swoole  php8.2-memcached php8.2-pcov  php8.2-fpm php8.2-gmp php8.2-imagick php8.2-mcrypt php8.2-uuid php8.2-yaml

It takes about 15 minutes to execute the above commands, and the main time is here.

Install Alibaba's composer image source

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

chmod +x /usr/local/bin/composer

composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/

Use root identity to execute the composer command, you will be prompted to enter yes, which is very troublesome, then

vim /etc/environment

Text

export COMPOSER_ALLOW_SUPERUSER=1

Then

source /etc/environment

Install nginx and integrate php-fpm service

curl https://nginx.org/keys/nginx_signing.key | gpg --dearmor | tee /usr/share/keyrings/nginx-archive-keyring.gpg >/dev/null

gpg --dry-run --quiet --no-keyring --import --import-options import-show /usr/share/keyrings/nginx-archive-keyring.gpg

echo "deb [signed-by=/usr/share/keyrings/nginx-archive-keyring.gpg] http://nginx.org/packages/ubuntu `lsb_release -cs` nginx"  | tee /etc/apt/sources.list.d/nginx.list

apt update
apt install nginx

改php-fpm 配置。
sed -i 's/listen\ =\ \/run\/php\/php8.2-fpm.sock/listen\ =\ 127.0.0.1:9000/g' /etc/php/8.2/fpm/pool.d/www.conf


修改 /etc/nginx/nginx.conf
第一行 
user  www-data;

然后,
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;
    }
}

Add a php file as follows:

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

<?php
phpinfo();

Start php -fpm and nginx and verify that the installation is correct

/etc/init.d/nginx start
/etc/init.d/php8.2-fpm start

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

Install mysql 8

apt install mysql-server-8.0 mysql-client-8.0



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

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

Below, the entire process of setting up a new user, first change the initialization, add a new user and authorize it, Then delete the old user.

ALTER USER &#39;root&#39;@&#39;localhost&#39; IDENTIFIED WITH mysql_native_password BY &#39;tb4Wn3BthR.&#39;;
flush privileges;

create user &#39;root&#39;@&#39;%&#39; identified by &#39;root1234&#39;;
ALTER USER &#39;root&#39;@&#39;%&#39; IDENTIFIED WITH mysql_native_password BY &#39;root1234&#39;;
GRANT ALL PRIVILEGES ON *.* TO &#39;root&#39;@&#39;%&#39;;
drop user root@localhost;
flush privileges;

Exit the shell and re-enter.

Now you can directly enter the shell

mysql -uroot -proot1234

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

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

Install redis 6 and other commonly used libraries

Instructions, installing redis 7 requires compiling the binary package, resolutely It doesn't compile, so I didn't do it.

curl -fsSL https://packages.redis.io/gpg | gpg --dearmor -o /usr/share/keyrings/redis-archive-keyring.gpg

echo "deb [signed-by=/usr/share/keyrings/redis-archive-keyring.gpg] https://packages.redis.io/deb $(lsb_release -cs) main" | tee /etc/apt/sources.list.d/redis.list

apt-get update

apt-get install redis-stack-server

Note that it is different from the above version. If you want to install redis5

If you want to install redis5, you don’t need any source, just go directly

apt install redis-server

Summary

Thanks to the Alibaba Cloud mirror library, but the speed is not too fast.

Recommended learning: "PHP Video Tutorial"

The above is the detailed content of Teach you how to install php8.2 package as quickly as possible (ubuntu 20.04 focal). For more information, please follow other related articles on the PHP Chinese website!

Statement:
This article is reproduced at:learnku.com. If there is any infringement, please contact admin@php.cn delete