欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

ubuntu 安装 php7.4以及各类插件

程序员文章站 2022-05-31 09:11:32
...
ubuntu 安装 php7.4以及各类插件

安装系统
最近使用了wsl,感觉和docker不太一样。

最大的差别是速度更快,安装更加方便。

当然docker有他的各种优点。

在开始之前先确定一下Windows版本是不是Windows10,最好专业版。
需要到 控制面板\所有控制面板项\程序和功能 中选择 启用或者关闭Windows功能

找到 适用于Linux的Windows子系统 并勾选,然后 确定 选择 立即重新启动

然后到windows应用商店,搜索ubuntu,(实际上经过比较,centos安装php7.4更方便,因为remi库把所有php插件都编译好了,使用极其方便)
安装时,会提示你输入你的用户名和密码,密码尽量简单。
安装好之后,进入系统,
首先 sudo passwd
然后输入密码。

然后 su root
此时就进入root账号登陆。

-----------------------------------------------

首先,lsb_release -a
确定是ubuntu 的 20版本。
确保 codename 是 focal

cd /etc/apt  #进入配置文件所在目录
mv sources.list sources.list.bak  #备份配置文件
vim sources.list  #编辑配置文件

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-proposed main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal-proposed 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-get update  #更新源 
apt-get upgrade  #更新软件

--------------------------------
辅助命令,查询系统已经安装的软件 ,例如查找php开头的软件
apt list --installed |grep ^php

----------------------------------
安装php
apt -y install software-properties-common
add-apt-repository ppa:ondrej/php
add-apt-repository ppa:ondrej/nginx
apt-get update

apt -y install php7.4

如果此时使用php -m

能看到大约三十多个php插件。

apt -y install php7.4-dev

注意,此命令执行时间较长,有耐心。
如最好提示 fetch 有失败,不着急。
重新执行这个命令即可,他会专门再去抓取失败的几个插件。

如果此时使用php -m

能看到大约四十多个php插件。

-------------------------------------

apt -y install php7.4-fpm

这个命令安装fpm

------------------------------------
安装nginx

apt -y install nginx

假设我在 /mnt/f/test/machineapi/public有个1.php
内容
<?php
phpinfo();


vim /etc/nginx/sites-enabled/default

server {
         listen 80 default_server;
        root /mnt/f/test/machineapi/public;
        charset utf-8;

       
        index index.php  index.html index.htm index.nginx-debian.html;

        server_name _;

        location / {
              
                try_files $uri $uri/ /index.php?$query_string;
        }

        location ~ \.php$ {
       
          fastcgi_pass unix:/run/php/php7.4-fpm.sock;
          fastcgi_index index.php;
          fastcgi_param SCRIPT_FILENAME $realpath_root$fastcgi_script_name;
          include fastcgi_params;
       }
}



然后 ,
service php7.4-fpm stop
service php7.4-fpm start

service nginx stop
service nginx start

打开本机浏览器,
http://127.0.0.1/1.php

发现php总是执行不完。
所以,wsl有个专用这里的配置。

vim /etc/nginx/sites-enabled/default

加上一句

fastcgi_buffering off;

类似

location ~ \.php$ {
      
          fastcgi_pass unix:/run/php/php7.4-fpm.sock;
          fastcgi_index index.php;
          fastcgi_param SCRIPT_FILENAME $realpath_root$fastcgi_script_name;
          include fastcgi_params;
       }
fastcgi_buffering off;

然后保存文件。
重启nginx

就好了。

安装php已编译好的插件

apt-get install -y php7.4-{bcmath,bz2,intl,gd,mbstring,mysql,zip}

apt install -y php7.4-curl
apt install -y php7.4-gmagick
apt install -y php7.4-imagick
apt install -y php7.4-igbinary
apt install -y php7.4-memcache
apt install -y php7.4-memcached
apt install -y php7.4-msgpack
apt install -y php7.4-psr
apt install -y php7.4-redis
apt install -y php7.4-ssh2
apt install -y php7.4-yaml

这里插入一个ubuntu命令安装

apt install -y zip

安装composer
这里故意不适应apt 安装。使用composer官方推荐。

cd
wget -O composer-setup.php https://getcomposer.org/installer
chmod +x composer-setup.php
php composer-setup.php --install-dir=/usr/local/bin --filename=composer

提示composer安装成功

此时立刻设置composer的镜像。

composer config -g repositories.packagist.org
上面这个命令是查看的。

composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/
上面设置阿里的镜像。

====================================================

安装php自己需要编译的插件

这里就是 remi 库强于  ppa:ondrej/php 的地方了。remi库提供安装好的 其他插件。而现在只能编译,速度特别慢。
现在需要使用pecl命令编译。

pecl list
上面这个命令查看已安装列表。

pecl install swoole
成功后,可以用list命令看到

vim /etc/php/7.4/cli/conf.d/me_pecl.ini
这个文件名自己起的。

添加如下内容
extension=swoole.so

然后
php -m

能看到swoole了。

cp /etc/php/7.4/cli/conf.d/me_pecl.ini /etc/php/7.4/fpm/conf.d/
重启php7.4-fpm 服务

在浏览器中看到了swoole

继续
pecl install yaf
成功

pecl install yar
报错Please reinstall the libcurl distribution - easy.h
网络查询需要
apt install libcurl4-gnutls-dev

然后继续
pecl install yar
pecl install phalcon

vim /etc/php/7.4/cli/conf.d/me_pecl.ini
extension=swoole.so
extension=yar.so
extension=yaf.so
extension=phalcon.so

cp /etc/php/7.4/cli/conf.d/me_pecl.ini /etc/php/7.4/fpm/conf.d/
重启php7.4-fpm 服务

在浏览器中看到了swoole,yaf,yar,phalcon

=========================================

安装mysql8,并改成适应老客户端

apt install mysql-server

service mysql start

mysql -u root 进入客户端命令行

use mysql;
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'root';
quit;

上面这句话的意思是给root账号 改成密码root,同时登陆方式是老方式。

这时可以使用自己的客户端去连接他。

























































相关标签: ubuntu php7.4