Linux에 PHP 스레드 확장을 설치하는 방법: 1. lnmp 설치 디렉터리에서 lnmp.conf 파일을 찾습니다. 2. "PHP_Modules_Options"에 "--enable-maintainer-zts"를 추가합니다.
이 기사의 운영 환경: Ubuntu 16.04 시스템, PHP 버전 7.1, DELL G3 컴퓨터
Linux에 PHP 스레드 확장을 설치하는 방법은 무엇입니까?
Ubuntu에서 PHP용 pthreads 확장 설치:
pthreads는 멀티스레딩을 사용하는 PHP 확장입니다. 여기서는 너무 많은 내용을 소개하지 않겠습니다. 이미 이해하셨으니 이해가 안 되신다면 문서를 읽어보시기 바랍니다.
문서 주소 : https://www.php.net/manual/zh/book.pthreads.php
여기서 설치 과정에 대해 이야기해보겠습니다. 우여곡절도 있었고 정식으로 만나기 전에 많은 정보를 참고했습니다. 그것을 설치. 적어서 자신만의 기록을 남기고, 미래의 친구들에게도 참고가 되어 함정을 피하세요.
를 사용하고 있다고 생각합니다. 여기서는 pecl install pthreads를 통한 이 확장 프로그램 설치가 실패했다는 점에 유의해야 합니다. 소스코드를 다운로드해 직접 컴파일하고 설치해야 하며, GitHub 트렁크 브랜치에서만 다운로드할 수 있습니다. 다른 소스 코드에는 문제가 있는 것 같았습니다. 처음에는 http://pecl.php.net에서 다운로드했지만 컴파일이 항상 실패했습니다. 나중에 정보를 확인해 보니 문제가 있다는 걸 알게 됐어요. GitHub에서 다운로드해야 합니다.
GitHub: https://github.com/krakjoe/pthreads
기본적으로 모두가 이미 lnmp 환경을 설치했습니다. 아직 설치하지 않았다면 왼쪽으로 돌아가서 구글링해 보세요.
pthreads에서는 PHP가 스레드로부터 안전한 방식으로 실행되어야 하므로 PHP를 컴파일할 때 --enable-maintainer-zts를 추가해야 합니다. 그러나 lnmp 통합 패키지는 기본적으로 스레드로부터 안전하지 않습니다.
여기에서 lnmp 설치 디렉터리로 이동하여 lnmp.conf 파일을 찾으세요.
제 스크린샷처럼 PHP_Modules_Options에 --enable-maintainer-zts를 추가하세요.
sudo wget http://cn2.php.net/distributions/php-7.0.20.tar.bz2 tar -jxvf php-7.0.20.tar.bz2
참고: 제가 여기서 제공하는 내용은 현재 PHP 공식 웹사이트에서 직접 확인할 수 있습니다.
계속:
./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php/etc --with-config-file-scan-dir=/usr/local/php/conf.d --enable-fpm --with-fpm-user=www --with-fpm-group=www --enable-mysqlnd --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd --with-iconv-dir --with-freetype-dir=/usr/local/freetype --with-jpeg-dir --with-png-dir --with-zlib --with-libxml-dir=/usr --enable-xml --disable-rpath --enable-bcmath --enable-shmop --enable-sysvsem --enable-inline-optimization --enable-mbregex --enable-mbstring --enable-intl --enable-pcntl --with-mcrypt --enable-ftp --with-gd --enable-gd-native-ttf --with-openssl --with-mhash --enable-pcntl --enable-sockets --with-xmlrpc --enable-zip --enable-soap --with-gettext --disable-fileinfo --enable-opcache --with-xsl --enable-maintainer-zts make sudo make install
이 코드는 lnmp1.4-full/include/php.sh에서 추출되었습니다. 직접 공부해 보세요.
phpinfo()를 엽니다.
스레드 안전이 활성화되어 있는지 확인하세요.
pthreads 소스 코드 패키지를 PHP 소스 코드의 ext 디렉토리에 넣으세요. 내 디렉토리는 다음과 같습니다. lnmp1.4-fullsrcphp -7.0.19ext [자신의 상황에 따라 조정]
pthreads 디렉토리에 들어가세요
phpize ./configure --with-php-config=/usr/local/php/bin/php-config make sudo make install
자신의 상황에 맞게 php-config 경로를 조정하세요. 기본 lnmp를 사용한다면 바로 이겁니다
여기서 실행하면 pthreads.so가 성공적으로 컴파일되었다는 메시지가 뜹니다. 그렇지 않은 경우 이전 단계를 확인하세요.
일반 온라인 튜토리얼에서는 이 지점에 도달한 후 다음과 같이 말합니다. php.ini 파일에 pthreads.so를 추가하고 php-fpm을 다시 시작하면 끝입니다.
이곳은 구덩이입니다. php.ini를 직접 추가하면 php-fpm을 시작할 수 없으며 pthreads.so를 로드할 수 없다는 메시지가 표시됩니다
올바른 자세:
php.ini를 복사하고 이름을 php-cli.ini
Put pthreads로 지정하세요. .so를 php .cli.ini로
그런 다음 php -m | grep pthreads를 실행하여 나타나는지 확인하세요.
여기서만 완성되었습니다.
참고: pthread는 프로덕션 환경에서 사용하면 안 됩니다. 버그가 있는 경우 직접 플레이하고 명령줄 작업을 실행하세요. 최종 설치를 통해 CLI를 통해서만 실행할 수 있다는 것도 알게 되었습니다. 하하하하.
마지막으로 Windows에 설치된 pthreads 패키지에서 볼 수 있는 많은 데모가 있습니다.
Windows 버전 다운로드 주소: https://windows.php.net/downloads/pecl/releases/pthreads/
추천 학습: "PHP 비디오 튜토리얼"
위 내용은 리눅스에 PHP 스레드 확장을 설치하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!