Ondřej Surý의 PHP PPA는 Ubuntu 16.04/14.04용 PHP7.2 버전을 제공합니다. 소프트웨어 소스에서 설치된 PHP는 기본적으로 /run/php/php7.2에서 Unix 소켓 상태로 실행됩니다. - fpm.sock은 localhost:9000에서 TCP를 사용하는 것보다 성능이 더 좋습니다.
1. 소프트웨어 소스 확장 도구 설치:
apt -y install Software-properties-common apt-transport-https lsb-release ca-certificates
2 PHP PPA 소스 추가 및 캐시 업데이트
add-apt-repository ppa :ondrej/php & apt 업데이트
3. php7.2 및 기본 관련 확장 설치
apt 설치 php7.2-fpm php7.2-mysql php7.2-curl php7.2-gd php7.2-mbstring php7. 2-xml php7.2-xmlrpc php7.2-zip php7.2-opcache php7.2-dev -y
4. 직접 설치를 위해 현재 PPA 소스를 확인하세요
apt-cache 검색 php7.2
php-radis - PHP
php-http용 radis 클라이언트 라이브러리 - PHP 확장 HTTP 지원
php-uploadprogress용 PECL HTTP 모듈 - PHP
php-yaml용 파일 업로드 진행률 추적 확장 - PHP
php용 YAML-1.1 파서 및 이미터 -mongodb - MongoDB PHP용 드라이버
php-apcu - PHP용 APC 사용자 캐시
php-imagick - ImageMagick 라이브러리에 래퍼 제공
php-ssh2 - libssh2 라이브러리용 바인딩
php-redis - Redis와의 인터페이스를 위한 PHP 확장
php-memcached - PHP용 memcached 확장 모듈, libmemcached
php-apcu-bc 사용 - APCu 하위 호환성 모듈
php-rrd - rrd 도구 시스템에 대한 PHP 바인딩
php-uuid - PHP UUID 확장
php-memcache - PHP용 memcache 확장 모듈
php-zmq - PHP
용 ZeroMQ 메시징 바인딩 php-igbinary - igbinary PHP serializer
php-msgpack - MessagePack
과의 인터페이스를 위한 PHP 확장 php-geoip - PHP용 GeoIP 모듈
php-tideways - Tideways PHP 프로파일러 확장
php-yac - PHP용 YAC(Yet Another Cache)
php-mailparse - PHP용 이메일 메시지 조작
php-oauth - OAuth 1.0 소비자 및 공급자 확장
php-gnupg - gpgme 라이브러리 주변의 PHP 래퍼
php-propro - PHP용 propro 모듈
php-raphf - PHP용 raphf 모듈
php-solr - Apache Solr 서버와 통신하기 위한 PHP 확장
php-stomp - PHP용 STOMP(스트리밍 텍스트 지향 메시징 프로토콜) 클라이언트 모듈
php-gearman - libgearman
php에 대한 PHP 래퍼 -phalcon - C 확장으로 제공되는 전체 스택 PHP 프레임워크
php-ds - PHP 7
에 효율적인 데이터 구조를 제공하는 PHP 확장 php-sass - libsass에 대한 PHP 바인딩 - PHP
에서 빠른 기본 Sass 구문 분석 php-lua - PHP 임베디드 루아 인터프리터
libapache2-mod-php7.2 - 서버측, HTML 내장 스크립트 언어(Apache 2 모듈)
libphp7.2-embed - HTML 내장 스크립트 언어(내장 SAPI 라이브러리)
php7 .2-bcmath - PHP
php7.2-bz2용 Bcmath 모듈 - PHP
php7.2-cgi용 bzip2 모듈 - 서버 측 HTML 내장 스크립트 언어(CGI 바이너리)
php7.2-cli - PHP용 명령줄 인터프리터 스크립팅 언어
php7.2-common - PHP
php7.2-curl용 문서, 예제 및 공통 모듈 - PHP
php7.2-dba용 CURL 모듈 - PHP
php7.2-dev용 DBA 모듈 - PHP7용 파일. 2 모듈 개발
php7.2-enchant - PHP용 인챈트 모듈
php7.2-fpm - 서버측, HTML 내장 스크립트 언어(FPM-CGI 바이너리)
php7.2-gd - PHP
php7용 GD 모듈. 2-gmp - PHP
php7.2용 GMP 모듈-imap - PHP
php7.2용 IMAP 모듈-interbase - PHP
용 Interbase 모듈php7.2-intl - PHP
php7.2용 국제화 모듈-json - JSON 모듈 PHP
php7.2-ldap용 - PHP
php7.2용 LDAP 모듈-mbstring - PHP
php7.2-mysql용 MBSTRING 모듈 - PHP
php7.2-odbc용 MySQL 모듈 - PHP
php7.2용 ODBC 모듈 -opcache - PHP용 Zend OpCache 모듈
php7.2-pgsql - PHP용 PostgreSQL 모듈
php7.2-phpdbg - 서버 측 HTML 내장 스크립트 언어(PHPDBG 바이너리)
php7.2-pspell - PHP용 pspell 모듈
php7.2-readline - PHP용 readline 모듈
php7.2-recode - PHP용 recode 모듈
php7.2-snmp - PHP용 SNMP 모듈
php7.2-soap - PHP
php7용 SOAP 모듈 .2-sqlite3 - PHP
php7.2-sybase용 SQLite3 모듈 - PHP
php7.2-tidy용 Sybase 모듈 - PHP
php7.2-xml용 tidy 모듈 - PHP
php7용 DOM, SimpleXML, WDDX, XML 및 XSL 모듈. 2-xmlrpc - PHP용 XMLRPC-EPI 모듈
php7.2-zip - PHP용 Zip 모듈
php7.2-xsl - PHP용 XSL 모듈(더미)
php7.2 - 서버측, HTML 내장 스크립트 언어( 메타패키지)
php7.2-sodium - PHP
5용 libsodium 모듈. redis igbinary pear 확장
php7后每个扩展都是一个独立的ini文件 本次安装的php扩展都在/etc/php/7.2/mods-available下
로그인 후 복사
apt 설치 php-redis php-igbinary php-pear
ls /etc/php/7.2/ mods- available
Calendar.ini fileinfo.ini igbinary.ini opcache.ini readline.ini
sysvmsg.ini xml.ini zip.ini ctype.ini ftp.ini
json.ini pdo.ini redis.ini
sysvsem.ini xmlreader .ini
curl.ini gd.ini mbstring.ini pdo_mysql.ini shmop.ini
sysvshm.ini xmlrpc.ini
dom.ini gettext.ini mysqli.ini phar.ini simplexml.ini
tokenizer.ini xmlwriter.ini
exif.ini iconv.ini mysqlnd.ini posix.ini sockets.ini
wddx.ini xsl.ini
6、安装nghttp2库
apt install nghttp2 libnghttp2-dev
7、安装redis官方异步拓展hiredis,如报错需要增加系统gcc支持
git clone https://github.com/redis/hire...
cd hiredis
make -j
如果报错 尝试安装gcc
apt install gcc
重新编译
make -j
make install
ldconfig
8、swoole拓展编译安装,不推荐使用pecl install swoole
pecl的安装方式没有编译http2与hiredis支持 gcc-4.4 或更高版本 make autoconf pcre (centos系统可以执行命令:yum install pcre-devel)
로그인 후 복사
git clone https://gitee.com/swoole/swoo...
cd swoole
phpize
./configure --enable-http2 --enable-async-redis
make && make install
9、添加swoole扩展到php环境中
echo 'extension=swoole.so' >> /etc/php/7.2/mods-available/swoole.ini
cd /etc/php/7.2/cli/conf.d/ && ln -s ../../mods-available/swoole.ini 20-swoole.ini
cd /etc/php/7.2/fpm/conf.d/ && ln -s ../../mods-available/swoole.ini 20-swoole.ini
10、查看是否引用成功
php --ri swoole
swoole support => enabled
Version => 2.1.2-alpha
Author => tianfeng.han[email: mikan.tenny@gmail.com]
coroutine => enabled
epoll => enabled
eventfd => enabled
timerfd => enabled
signalfd => enabled
cpu affinity => enabled
spinlock => enabled
rwlock => enabled
async redis client => enabled
async http/websocket client => enabled
openssl => enabled
http2 => enabled
Linux Native AIO => enabled
pcre => enabled
mutex_timedlock => enabled
pthread_barrier => enabled
futex => enabledDirective => Local Value => Master Value
swoole.aio_thread_num => 2 => 2
swoole.display_errors => On => On
swoole.use_namespace => On => On
swoole.use_shortname => On => On
swoole.fast_serialize => Off => Off
swoole.unixsock_buffer_size => 8388608 => 8388608
至此完整全部完成