跳到主要内容

PHP

源码安装

安装

  • 安装依赖
yum install gcc gcc-c++ libxml2 libxml2-devel autoconf
  • 安装 PHP
wget https://www.php.net/distributions/php-7.2.27.tar.gz
tar -zxvf php-7.2.27.tar.gz
cd php-7.2.27
./configure --prefix=/usr/local/php
make
make install
  • 环境变量
vim /etc/profile
#添加以下内容
PATH=$PATH:/usr/local/php/bin
export PATH
#生效配置
source /etc/profile
  • 设置 PHP.ini
#查看php.ini目录
php -i | grep php.ini
cp php.ini-development /usr/local/php/lib
cd /usr/local/php/lib/
mv php.ini-development php.ini

来源

Centos

Centos webtatic 源

安装

  • 安装 webtatic 源
yum install epel-release
rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
  • 删除安装包
rpm -qa | grep webtatic
rpm -e 上面搜索到的包
  • 安装 php
yum install php72w-fpm php72w-opcache
  • 安装扩展包
yum install php72w php72w-cli php72w-common php72w-devel php72w-embedded php72w-gd php72w-mbstring php72w-mysqlnd php72w-pdo php72w-xml
  • 启动 php-fpm
systemctl start php-fpm

来源

Centos Remi 源

来源

Ubuntu

Ubuntu Ondřej Surý 的 PHP PPA 源

安装

  • 安装软件源拓展工具
sudo apt-get install software-properties-common
  • 添加 Ondřej Surý 的 PHP PPA 源
sudo add-apt-repository ppa:ondrej/php
  • 更新软件源缓存
sudo apt-get update
  • 安装 PHP
#sudo apt-get install php5.6
sudo apt-get install php7.2
  • 安装 PHP 扩展
#查询对应的模块
sudo apt-cache search php7.2
#安装需要的模块
sudo apt-get install php7.2-common php7.2-dev php7.2-fpm php7.2-xml php7.2-mysql php7.2-mbstring php7.2-curl php7.2-gd php7.2-opcache
  • 切换 PHP 版本
sudo update-alternatives --config php
  • 管理 PHP
#重启
systemctl restart php7.2-fpm
#启动
systemctl start php7.2-fpm
#关闭
systemctl stop php7.2-fpm
#检查状态
systemctl status php7.2-fpm
  • 禁用 php5.6-fpm,启用 php7.2-fpm,重启 Apache 服务生效
sudo a2disconf php5.6-fpm
sudo a2enconf php7.2-fpm
sudo service apache2 restart
  • 卸载 php5.6
sudo apt-get purge php5.6
sudo apt-get autoremove

扩展

redis

webtatic 源安装 redis

yum -y install php72w-pecl-redis

源码安装

  • 安装 redis 扩展
git clone https://github.com/phpredis/phpredis.git
cd phpredis
phpize
#查看php-config目录
find / -name php-config
./configure --with-php-config=/usr/bin/php-config
make && make install
  • 配置 php.ini 编译安装成功后,修改php.ini加入
extension = redis.so

来源

swoole

安装

  • 安装 swoole 扩展
wget https://github.com/swoole/swoole-src/archive/master.tar.gz
tar zxvf master.tar.gz
cd swoole-src-master/
phpize (ubuntu 没有安装phpize可执行命令:sudo apt-get install php-dev来安装phpize)
./configure
make
sudo make install
  • 配置 php.ini 编译安装成功后,修改php.ini加入
extension=swoole.so

来源

Composer

安装

  • Composer 安装
curl -sS https://getcomposer.org/installer | php
mv composer.phar /usr/local/bin/composer
  • 切换阿里云镜像镜像
composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/

来源

phpbrew

安装

# 安装依赖
# https://github.com/phpbrew/phpbrew/wiki/Requirement

curl -L -O https://github.com/phpbrew/phpbrew/releases/latest/download/phpbrew.phar
chmod +x phpbrew.phar

# Move the file to some directory within your $PATH
sudo mv phpbrew.phar /usr/local/bin/phpbrew
phpbrew init

cat >> ~/.zshrc <<EOF
[[ -e $HOME/.phpbrew/bashrc ]] && source $HOME/.phpbrew/bashrc
EOF

# For the first-time installation, you don't have phpbrew bash function yet.
source ~/.phpbrew/bashrc

# 获取版本
phpbrew update
# 获取旧版本(低于 5.4)
phpbrew update --old

# 列出已知版本
phpbrew known
# 列出已知的旧版本(低于 5.4)
phpbrew known --old

# List available variants
phpbrew variants

# phpbrew --debug install 7.0 +default +fpm +mysql +gd
# phpbrew --debug install -j $(nproc) --stdout 7.0 +default +mysql +gd +fpm +soap +debug
phpbrew --debug install -j $(nproc) --stdout 7.0 +default +gd +soap +debug

# 清理构建目录
phpbrew clean php-7.0

# 临时切换版本
phpbrew use 7.0
# 切换默认版本
phpbrew switch 7.0
# 切换到系统安装的版本
phpbrew off

# 安装扩展
phpbrew --debug ext install xdebug
phpbrew --debug ext install gd

来源