php8 환경을 설정하는 방법을 단계별로 알려드립니다(일반적인 문제에 대한 해결책 포함)
이 글은 php8튜토리얼 칼럼에서 제공하는 php8 환경 구축 방법을 단계별로 자세히 소개하는 글이 모든 분들께 도움이 되기를 바랍니다.
1.
1. https://www.php.net/distributions/php-8.0.0.tar.gz를 로컬로 다운로드한 후 파일을 전송하고 /usr/local/src/
에 업로드합니다. 2. wget -P /usr/local/src/ https://www.php.net/distributions/php-8.0.0.tar.gz
2 압축 풀기, 컴파일, 설치
1. 압축 풀기
> cd /usr/local/src/ > tar xzf php-8.0.0.tar.gz > cd php-8.0.0
2. 컴파일 매개변수를 구성합니다. https://www.php.net/manual/zh를 참조하세요... 필요한 옵션을 선택하세요
./configure --prefix=/usr/local/php8 --with-config-file-path=/usr/local/php8/etc --with-fpm-user=www --with-fpm-group=www --with-curl --with-openssl --with-mysqli --with-pdo-mysql --with-iconv --with-mhash --with-zlib --enable-mbstring --enable-gd --enable-gd-jis-conv --enable-sockets --enable-fpm --enable- --enable-xml --enable-pdo --enable-cli --enable-pcntl --enable-soap --enable-opcache --enable-fileinfo --disable-rpath --enable-mysqlnd --with-zip --enable-simplexml --with-libxml --with-sqlite3 --with-pdo-sqlite --enable-phar --enable-tokenizer --enable-cgi
질문 1:
configure: error: Package requirements (libxml-2.0 >= 2.9.0) were not met: Package 'libxml-2.0', required by 'virtual:world', not found Consider adjusting the PKG_CONFIG_PATH environment variable if you installed software in a non-standard prefix. Alternatively, you may set the environment variables LIBXML_CFLAGS and LIBXML_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details.
질문 1 해결책:
> yum install libxml2-devel
질문 2:
configure: error: Package requirements (sqlite3 > 3.7.4) were not met:
질문 2 해결됨:
> yum install sqlite-devel
문제 3:
configure: error: Package requirements (libcurl >= 7.29.0) were not met:
문제 3 해결됨:
> yum install libcurl-devel
문제 4:
configure: error: Package requirements (libpng) were not met:
문제 4 해결됨:
> yum install libpng libpng-devel
문제 5:
configure: error: Package requirements (oniguruma) were not met:
문제 5 해결됨:
> cd /usr/local/src/ > wget http://ftp.altlinux.org/pub/distributions/ALTLinux/Sisyphus/x86_64/RPMS.classic/liboniguruma5-6.9.6-alt1.x86_64.rpm -O liboniguruma5-6.9.6-alt1.x86_64.rpm > rpm -ivh liboniguruma5-6.9.6-alt1.x86_64.rpm > wget http://ftp.altlinux.org/pub/distributions/ALTLinux/Sisyphus/x86_64/RPMS.classic/liboniguruma-devel-6.9.6-alt1.x86_64.rpm -O liboniguruma-devel-6.9.6-alt1.x86_64.rpm > rpm liboniguruma-devel-6.9.6-alt1.x86_64.rpmcli
문제 6:
configure: error: Package requirements (libzip >= 0.11 libzip != 1.3.1 libzip != 1.7.0) were not met:
문제 6에 대한 해결 방법:
> yum install libzip libzip-devel
컴파일 매개변수를 성공적으로 구성하세요
+--------------------------------------------------------------------+ | License: | | This software is subject to the PHP License, available in this | | distribution in the file LICENSE. By continuing this installation | | process, you are bound by the terms of this license agreement. | | If you do not agree with the terms of this license, you must abort | | the installation process at this point. | +--------------------------------------------------------------------+ Thank you for using PHP.
3. 소스 코드 컴파일
> make -j2 # 이 컴파일은 시스템 CPU 코어 수에 따라 달라지며 일반적으로 성능이 향상됩니다. 코어 수가 절반을 넘지 않아야 합니다.
make install
설치 성공
[root@54skyer php-8.0.0]# make install Installing shared extensions: /usr/local/php8/lib/php/extensions/no-debug-non-zts-20200930/ Installing PHP CLI binary: /usr/local/php8/bin/ Installing PHP CLI man page: /usr/local/php8/php/man/man1/ Installing PHP FPM binary: /usr/local/php8/sbin/ Installing PHP FPM defconfig: /usr/local/php8/etc/ Installing PHP FPM man page: /usr/local/php8/php/man/man8/ Installing PHP FPM status page: /usr/local/php8/php/php/fpm/ Installing phpdbg binary: /usr/local/php8/bin/ Installing phpdbg man page: /usr/local/php8/php/man/man1/ Installing PHP CGI binary: /usr/local/php8/bin/ Installing PHP CGI man page: /usr/local/php8/php/man/man1/ Installing build environment: /usr/local/php8/lib/php/build/ Installing header files: /usr/local/php8/include/php/ Installing helper programs: /usr/local/php8/bin/ program: phpize program: php-config Installing man pages: /usr/local/php8/php/man/man1/ page: phpize.1 page: php-config.1 /usr/local/src/php-8.0.0/build/shtool install -c ext/phar/phar.phar /usr/local/php8/bin/phar.phar ln -s -f phar.phar /usr/local/php8/bin/phar Installing PDO headers: /usr/local/php8/include/php/ext/pdo/
6. 기본 구성 가져오기
> vim /etc/profile # 在文件末尾加入 # PATH=$PATH:/usr/local/php8/bin/ # export PATH # :wq 保存并退出 > source /etc/profile # 立刻生效配置 > php -v # 获得如下信息 php -v PHP 8.0.0 (cli) (built: Dec 15 2020 02:46:59) ( NTS ) Copyright (c) The PHP Group Zend Engine v4.0.0-dev, Copyright (c) Zend Technologies
7.
// 复制php.ini到编译配置参数指定的目录。php.ini在解压的源码目录里 > cp /usr/local/src/php-8.0.0/php.ini-production /usr/local/php8/etc/php.ini // 复制一份php-fpm的配置模版文件到同级目录 方便备份和修改 > cp /usr/local/php8/etc/php-fpm.conf.default /usr/local/php8/etc/php-fpm.conf // 复制一份php-fpm的扩展配置模板文件到同级目录 方便备份和修改 > cp /usr/local/php8/etc/php-fpm.d/www.conf.default /usr/local/php8/etc/php-fpm.d/www.conf // 复制开启自起脚本到系统启动自动加载脚本目录。fpm/init.d.php-fpm在解压的源码目录里 > cp /usr/local/src/php-8.0.0/sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm
자동 시작 스크립트를 확인하세요
> chmod +x /etc/init.d/php-fpm # 添加可执行权限
7. 추가 지침
구성 파일에 대한 일부 참고 사항
php-fpm.conf는 PHP-FPM에 고유한 구성 파일입니다
php.ini는 모든 PHP 모드에서 필요한 구성 파일
둘의 차이점은 php-fpm.conf는 PHP-FPM 프로세스 관리자의 구성 파일이고 php.ini는 PHP 파서의 구성 파일입니다
일부 PHP 버전 또한 구성 파일 경로에 /fpm.d/www.conf 구성 파일이 있습니다
이것은 php-fpm.conf로 구성한 파일의 확장 파일입니다. php-fpm.conf 파일을 열어서 볼 수 있습니다
> service php-fpm start # 检验服务启动 > service php-fpm stop # 检验服务关闭 // 均正常提示 > chkconfig php-fpm on # 设置开机自动执行php-fpm开机自启动脚本 > reboot # 重启,ssh重连 # 重启后 [root@54skyer ~]# netstat -ntlp Active Internet connections (only servers) Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 1097/nginx: master tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 1061/sshd tcp 0 0 0.0.0.0:16379 0.0.0.0:* LISTEN 1090/redis-server 0 tcp 0 0 127.0.0.1:9000 0.0.0.0:* LISTEN 1083/php-fpm: maste
php-fpm.conf를 사용하여 느린 로그를 구성할 수 있습니다
느린 로그 기능을 활성화할 수 있습니다.
아아아아위 내용은 php8 환경을 설정하는 방법을 단계별로 알려드립니다(일반적인 문제에 대한 해결책 포함)의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

뜨거운 주제











php5와 php8의 차이점은 성능, 언어 구조, 유형 시스템, 오류 처리, 비동기 프로그래밍, 표준 라이브러리 기능 및 보안 측면에서 있습니다. 자세한 소개: 1. 성능 향상 PHP5와 비교하여 PHP8은 JIT 컴파일러를 도입하여 일부 고주파 실행 코드를 컴파일하고 최적화하여 실행 속도를 향상시킵니다. PHP8에는 몇 가지 새로운 언어 구조와 기능이 도입되었습니다. PHP8은 명명된 매개변수를 지원하므로 개발자는 매개변수 순서 대신 매개변수 이름을 전달할 수 있습니다.

php8에 mysql 확장을 추가하는 단계는 다음과 같습니다. 1. MySQL 클라이언트 라이브러리를 설치합니다. 2. PHP 8용 개발 도구를 설치합니다. 3. MySQL 확장 소스 코드를 다운로드합니다. 5. MySQL 확장을 활성화합니다. MySQL 확장; 6. 웹 서버만 다시 시작합니다.

이번 글에서는 apache2.4 설치 방법과 php8.0 설정 방법을 소개하겠습니다. 글에는 사진과 함께 apache2.4+php8.0 설정 방법이 자세히 나와 있습니다.

PHP8은 mysqli와 PDO를 사용하여 데이터베이스에 연결할 수 있습니다. 자세한 소개: 1. 연결할 데이터베이스 서버 이름, 사용자 이름, 비밀번호 및 데이터베이스 이름을 전달하여 mysqli를 사용하여 데이터베이스에 연결합니다. 그런 다음 `connect_error` 속성을 사용하여 연결 성공 여부를 확인하고 연결이 실패하면 오류 메시지를 출력합니다. 마지막으로 `close()` 메소드를 호출하여 연결을 닫습니다. 2. PDO를 사용하여 데이터베이스에 연결하고 데이터베이스 서버 이름, 비밀번호, 데이터베이스 이름 등을 전달하여 연결합니다.

php8 데이터 형식의 방법에는 문자열을 정수로 변환, 정수를 문자열로 변환, 문자열을 부동 소수점 수로 변환, 부동 소수점 수를 문자열로 변환, 배열을 문자열로 변환, 문자열을 배열로 변환, 부울 값을 정수로 변환, 정수를 문자열로 변환 등이 있습니다. 부울 값 및 변수 유형 결정 및 변환. 자세한 소개: 1. 문자열을 정수로 변환하는 작업에는 intval() 함수와 (int) 강제 형식 변환이 포함됩니다. 2. 정수를 문자열로 변환하는 작업에는 strval() 함수와 (문자열) 강제 형식 변환이 포함됩니다. 부동 소수점에 대한 문자열 등등.

이 기사에서는 PHP 8의 JIT를 안내하고 JIT가 해석 프로세스에 참여하는 방법에 대해 설명합니다. 이것이 모든 사람에게 도움이 되기를 바랍니다.

php8의 향상된 성능에는 다음이 포함됩니다. 1. JIT 컴파일러 도입 3. 가비지 수집 메커니즘 개선 5. 새로운 언어 기능 최적화 8. 새로운 메모리 관리 메커니즘을 도입합니다. 9. 코드 생성을 최적화합니다. 자세한 소개: 1. JIT 컴파일러의 도입 PHP8은 보다 효율적인 실행을 위해 PHP 코드를 기계어 코드로 변환할 수 있는 동적 컴파일 기술인 JIT 컴파일러를 도입합니다.

php8의 기능: 1. 명명된 매개변수, 4. 주석, 6. 일치 표현식, 7. 향상된 유형 시스템, 10. 일관성 개선. 자세한 소개: 1. JIT 컴파일러인 PHP8은 PHP 코드를 기본 기계 코드로 컴파일하여 프로그램의 실행 속도를 향상시키는 JIT(Just-In-Time) 컴파일 기술을 도입합니다. 2. 명명된 매개변수, PHP8은 명명된 매개변수를 지원하여 다음을 사용할 수 있습니다. 함수 호출 시 매개변수 이름 등
