목차
PHP 8.4의 잠재적인 하위 호환성 영향
2. ondrej/php PPA/DPA 추가
3. PHP 8.4 서버 API 패키지 설치
PHP-CLI만 설치
PHP-CLI 및 PHP를 Apache 모듈로 사용
PHP CLI 및 PHP-FPM(권장)
5. 설치 확인
4. PHP 확장 설치
개발 도구
Xdebug
PCOV
5. 웹 서버 통합
PHP-FPM
Apache 모듈로서의 PHP
백엔드 개발 PHP 튜토리얼 Ubuntu 및 Debian용 PHP 8.4 설치 및 업그레이드 가이드

Ubuntu 및 Debian용 PHP 8.4 설치 및 업그레이드 가이드

Dec 24, 2024 pm 04:42 PM
php

PHP 8.4는 몇 가지 새로운 기능과 보안 개선 사항을 제공하며 상당한 양의 기능 지원 중단으로 성능 향상

이 가이드에서는 PHP 8.4를 설치하거나 PHP 8.4로 업그레이드하는 방법을 설명합니다. 우분투, 데비안 또는 그 파생물. PHP를 소스에서 컴파일하는 것은 가능하지만, 아래 설명된 대로 APT 저장소에서 설치하는 것이 더 빠른 경우가 많습니다. 이 저장소는 최신 버그를 제공하므로 더욱 안전합니다. 향후 수정 사항 및 보안 업데이트가 제공됩니다.

PHP 8.4는 현재 Debian 및 Ubuntu 소프트웨어 저장소에서 사용할 수 없습니다. 이 가이드는 Ondřej Surý가 관리하는 저장소를 사용합니다. Ondrej의 PHP 저장소는 사실상 PHP용 저장소였습니다. 수년 동안 Ubuntu, Debian 및 그 파생 제품을 사용했습니다.

截屏2024-12-24 16.35.26.png

PHP 8.4의 잠재적인 하위 호환성 영향

PHP 8.4는 속성 후크와 같은 몇 가지 새로운 기능을 제공합니다. , 비대칭 가시성, DOM, Curl, PCRE 확장 개선 및 more.

그러나 PHP 8.4에서는 일부 PHP 기능을 더 이상 사용하지 않고 제거합니다. PHP 코어에서 PECL까지 4개의 PHP 확장. 이는 기존 PHP에 영향을 줄 수 있습니다. 추가 PHP 알림/경고를 내보내거나 특정 기능에서 실패하는 애플리케이션

기존 애플리케이션에 영향을 미칠 수 있는 주목할만한 변경 사항은 다음과 같습니다.

  • 암시적으로 null을 허용하는 매개변수 선언이 더 이상 사용되지 않음
  • E_STRICT 상수가 더 이상 사용되지 않음
  • 확장 기능이 PHP 코어에서 PECL로 이동되었습니다: Pspell, IMAP, OCI8 및 PDO_OCI.

PHP 확장이 PHP 코어에서 PECL로 이동되면 확장은 자체 릴리스 주기를 따릅니다. 가이드에 사용된 저장소 해당 확장에 대한 PECL 프로젝트가 있는 경우 업데이트를 제공합니다. 업데이트를 출시합니다. 그러나 이는 또한 PECL 확장이 가능함을 의미합니다(그리고 종종) 유지관리가 늦어집니다.

계속하기 전에 시스템을 반드시 백업하세요. 이 가이드 기존 PHP 설치와 함께 PHP 8.4를 나란히 설치합니다. 다음과 같은 경우 다른 PHP 설치로 다시 전환하는 쉬운 방법을 제공합니다. 필요합니다.


이 단계는 기존 PHP 설정을 업그레이드하는 경우에만 적용됩니다. 다음 명령은 이름에 php라는 텍스트가 포함된 설치된 모든 PHP 패키지를 나열하고 화면에 표시하며 packages.txt라는 파일에 씁니다. 이 파일은 이후 단계에서 PHP 8.4 패키지를 설치할 때 동일한 PHP 8.4 버전 확장 목록이 설치되었는지 확인하는 데 유용합니다.

dpkg -l | grep php | tee packages.txt
로그인 후 복사
로그인 후 복사
로그인 후 복사

2. ondrej/php PPA/DPA 추가

PHP 8.4 패키지는 현재 어떤 버전에서도 사용할 수 없기 때문입니다. Debian 또는 Ubuntu 소프트웨어 리포지토리, PHP 패키지는 다음 위치에서 제공되어야 합니다. 또 다른 저장소.

온드르제이 수리 모든 패키지의 컴파일된 바이너리를 포함하는 패키지 아카이브를 유지 관리합니다. Ubuntu 및 Debian용 최신 PHP 버전. 또한 여러 PECL을 배송합니다. 번들 해제된 PHP 핵심 확장용 PECL 확장을 포함한 확장

이 저장소가 추가되면 표준 apt 명령을 사용하여 초기 설치 및 업데이트를 수행할 수 있습니다.


Ubuntu PPA

dpkg -l | grep php | tee packages.txt
로그인 후 복사
로그인 후 복사
로그인 후 복사

데비안 DPA

sudo LC_ALL=C.UTF-8 add-apt-repository ppa:ondrej/php # Press enter to confirm.sudo apt update
로그인 후 복사
로그인 후 복사

3. PHP 8.4 서버 API 패키지 설치

Ondrej의 PPA 및 DPA에서 PHP 8.4 패키지는 php8.1-NAME 패턴을 따릅니다. PECL 및 공유 PHP 확장도 동일한 패턴을 따릅니다.

PHP 확장을 설치하기 전에 다음 PHP 서버 API(SAPI) 패키지 중 하나를 설치해야 합니다.

PHP-CLI만 설치

PHP CLI를 설치하려면 확장 기능과 함께 php8.1-cli 패키지를 설치하세요.

sudo apt-get updatesudo apt-get -y install lsb-release ca-certificates curl apt-transport-httpssudo curl -sSLo /tmp/debsuryorg-archive-keyring.deb https://packages.sury.org/debsuryorg-archive-keyring.debsudo dpkg -i /tmp/debsuryorg-archive-keyring.debsudo sh -c 'echo "deb [signed-by=/usr/share/keyrings/deb.sury.org-php.gpg] https://packages.sury.org/php/ $(lsb_release -sc) main" > /etc/apt/sources.list.d/php.list'sudo apt-get update
로그인 후 복사
로그인 후 복사

PHP-CLI 및 PHP를 Apache 모듈로 사용

PHP CLI 및 PHP 8.4를 Apache 모듈로 설치하려면 libapache2-mod-php8.4 패키지를 설치하세요.

sudo apt install php8.4-cli
로그인 후 복사
로그인 후 복사

PHP 애플리케이션에서 PHP를 Apache 모듈로 설치해야 하는 경우가 아니면 PHP-FPM 설치를 고려하세요.

PHP CLI 및 PHP-FPM(권장)

PHP를 Apache, Nginx, Caddy 등의 웹서버와 통합하려면 PHP-FPM을 설치하는 것이 좋습니다.

sudo apt install php8.4-cli libapache2-mod-php8.4
로그인 후 복사
로그인 후 복사

이렇게 하면 php8.4-fpm 서비스가 설치되고 자동으로 활성화됩니다. 나중에 필요한 추가 단계는 FPM 웹-서버 통합 섹션을 참조하세요.

5. 설치 확인

PHP 설치를 빠르게 확인하려면 다음을 실행하세요.

sudo apt install php8.4-cli php8.4-fpm
로그인 후 복사
로그인 후 복사

PHP 버전, 빌드 시간 및 추가 정보가 표시되어야 합니다.

`php -v` output
`php -v` 출력

PHP-FPM 서비스가 설치된 경우, 상태는 다음과 같이 확인할 수 있습니다.

php -v
로그인 후 복사
로그인 후 복사

PHP-FPM 서버가 성공적으로 실행되면 아래와 유사한 출력이 표시됩니다.


php-fpm status
`systemctl 상태 php8.4-fpm` 출력

4. PHP 확장 설치

모든 공유 PHP 확장 및 PECL 확장은 php8.4-EXTNAME 패턴을 따릅니다. 여기서 extname은 확장의 이름입니다.

기존 시스템을 업그레이드하는 경우 다음을 참조하세요. 기존 PHP 8.3 이하 PHP 확장을 확인하려면 첫 번째 단계에서 생성된 packages.txt 파일을 확인하세요.

PHP 확장을 설치하려면 다음을 사용하세요. php-8.4- 접두사가 붙은 PHP 확장명을 사용하여 apt install 명령을 실행합니다. 예를 들어, gd 확장은 php8.4-gd 패키지와 함께 설치됩니다.

sudo systemctl status php8.4-fpm
로그인 후 복사

다음 명령은 대부분의 PHP 라이브러리 및 프레임워크에 필요한 가장 일반적인 PHP 확장 세트를 설치합니다.

sudo apt install php8.4-gd
로그인 후 복사

추가 PHP 확장을 검색하려면 apt 검색 명령을 사용하세요.

dpkg -l | grep php | tee packages.txt
로그인 후 복사
로그인 후 복사
로그인 후 복사

개발 도구

Xdebug 및 코드 적용 도구와 같은 개발 도구도 동일한 패키지 명명 규칙에 따라 설치할 수 있습니다.

프로덕션에서는 이 단계를 권장하지 않습니다.

Xdebug

sudo LC_ALL=C.UTF-8 add-apt-repository ppa:ondrej/php # Press enter to confirm.sudo apt update
로그인 후 복사
로그인 후 복사

PCOV

sudo apt-get updatesudo apt-get -y install lsb-release ca-certificates curl apt-transport-httpssudo curl -sSLo /tmp/debsuryorg-archive-keyring.deb https://packages.sury.org/debsuryorg-archive-keyring.debsudo dpkg -i /tmp/debsuryorg-archive-keyring.debsudo sh -c 'echo "deb [signed-by=/usr/share/keyrings/deb.sury.org-php.gpg] https://packages.sury.org/php/ $(lsb_release -sc) main" > /etc/apt/sources.list.d/php.list'sudo apt-get update
로그인 후 복사
로그인 후 복사

5. 웹 서버 통합

3단계에서 설치된 서버 API에 따라 웹 서버 통합에 PHP 8.4 업그레이드를 적용하려면 추가 구성이 필요할 수 있습니다.

PHP-FPM

PHP-FPM을 사용하는 경우(php8.4-fpm 패키지 설치), 웹 서버는 PHP 8.4 FPM과 통신하도록 재구성해야 합니다. 업데이트된 소켓 경로를 통해 서버를 업데이트합니다.


Apache: PHP 8.4 구성 파일을 켜면 이 구성 변경이 쉬워집니다.

sudo apt install php8.4-cli
로그인 후 복사
로그인 후 복사

Nginx: 업데이트 이전 PHP FPM 소켓 경로에서 새 PHP 8.4로의 fastcgi_pass 지시어 경로:

sudo apt install php8.4-cli libapache2-mod-php8.4
로그인 후 복사
로그인 후 복사

자세한 내용은 Nginx 설명서를 참조하세요


Caddy 서버: 새로운 PHP 8.4 FPM 서버 소켓 경로를 사용하도록 reverse_proxy 지시어를 업데이트하세요.

sudo apt install php8.4-cli php8.4-fpm
로그인 후 복사
로그인 후 복사

자세한 구성은 PHP와 함께 Caddy 서버를 사용하는 방법을 참조하세요. 세부 정보.

Apache 모듈로서의 PHP

PHP가 Apache 모듈로 설치된 경우 다음 명령은 이전 PHP 모듈(이 예에서는 8.3)을 비활성화하고 새 PHP 버전을 활성화합니다.

php -v
로그인 후 복사
로그인 후 복사

위 내용은 Ubuntu 및 Debian용 PHP 8.4 설치 및 업그레이드 가이드의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

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

AI Clothes Remover

AI Clothes Remover

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

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

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

인기 기사

R.E.P.O. 에너지 결정과 그들이하는 일 (노란색 크리스탈)
3 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 최고의 그래픽 설정
3 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 아무도들을 수없는 경우 오디오를 수정하는 방법
3 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25 : Myrise에서 모든 것을 잠금 해제하는 방법
3 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌

뜨거운 도구

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

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

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

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

Ubuntu 및 Debian용 PHP 8.4 설치 및 업그레이드 가이드 Ubuntu 및 Debian용 PHP 8.4 설치 및 업그레이드 가이드 Dec 24, 2024 pm 04:42 PM

PHP 8.4는 상당한 양의 기능 중단 및 제거를 통해 몇 가지 새로운 기능, 보안 개선 및 성능 개선을 제공합니다. 이 가이드에서는 Ubuntu, Debian 또는 해당 파생 제품에서 PHP 8.4를 설치하거나 PHP 8.4로 업그레이드하는 방법을 설명합니다.

CakePHP 날짜 및 시간 CakePHP 날짜 및 시간 Sep 10, 2024 pm 05:27 PM

cakephp4에서 날짜와 시간을 다루기 위해 사용 가능한 FrozenTime 클래스를 활용하겠습니다.

CakePHP 파일 업로드 CakePHP 파일 업로드 Sep 10, 2024 pm 05:27 PM

파일 업로드 작업을 위해 양식 도우미를 사용할 것입니다. 다음은 파일 업로드의 예입니다.

CakePHP 토론 CakePHP 토론 Sep 10, 2024 pm 05:28 PM

CakePHP는 PHP용 오픈 소스 프레임워크입니다. 이는 애플리케이션을 훨씬 쉽게 개발, 배포 및 유지 관리할 수 있도록 하기 위한 것입니다. CakePHP는 강력하고 이해하기 쉬운 MVC와 유사한 아키텍처를 기반으로 합니다. 모델, 뷰 및 컨트롤러 gu

CakePHP 유효성 검사기 만들기 CakePHP 유효성 검사기 만들기 Sep 10, 2024 pm 05:26 PM

컨트롤러에 다음 두 줄을 추가하면 유효성 검사기를 만들 수 있습니다.

CakePHP 로깅 CakePHP 로깅 Sep 10, 2024 pm 05:26 PM

CakePHP에 로그인하는 것은 매우 쉬운 작업입니다. 한 가지 기능만 사용하면 됩니다. cronjob과 같은 백그라운드 프로세스에 대해 오류, 예외, 사용자 활동, 사용자가 취한 조치를 기록할 수 있습니다. CakePHP에 데이터를 기록하는 것은 쉽습니다. log() 함수는 다음과 같습니다.

PHP 개발을 위해 Visual Studio Code(VS Code)를 설정하는 방법 PHP 개발을 위해 Visual Studio Code(VS Code)를 설정하는 방법 Dec 20, 2024 am 11:31 AM

VS Code라고도 알려진 Visual Studio Code는 모든 주요 운영 체제에서 사용할 수 있는 무료 소스 코드 편집기 또는 통합 개발 환경(IDE)입니다. 다양한 프로그래밍 언어에 대한 대규모 확장 모음을 통해 VS Code는

CakePHP 빠른 가이드 CakePHP 빠른 가이드 Sep 10, 2024 pm 05:27 PM

CakePHP는 오픈 소스 MVC 프레임워크입니다. 이를 통해 애플리케이션 개발, 배포 및 유지 관리가 훨씬 쉬워집니다. CakePHP에는 가장 일반적인 작업의 과부하를 줄이기 위한 여러 라이브러리가 있습니다.

See all articles