운영 및 유지보수 CentOS CentOS에서 php-fpm을 컴파일하고 설치하는 방법

CentOS에서 php-fpm을 컴파일하고 설치하는 방법

Aug 31, 2020 am 09:51 AM
centos php-fpm

centos에서 php-fpm을 컴파일하고 설치하는 방법: 먼저 "yum install wget vim"을 통해 종속 소프트웨어를 설치한 다음 php 종속성을 설치한 다음 컴파일 중에 지정된 구성 파일 디렉터리에 "php.ini-production"을 복사합니다. PHP 버전 그게 다입니다.

CentOS에서 php-fpm을 컴파일하고 설치하는 방법

추천: "PHP 비디오 튜토리얼"

CentOS7에서 PHP5.4.45를 컴파일 및 설치하고 php-fpm

시스템 환경

uname -a
Linux localhost.localdomain 3.10.0-514.el7.x86_64 #1 SMP Tue Nov 22 16:42:41 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux
cat /etc/redhat-release
CentOS Linux release 7.3.1611 (Core)
date
Fri Feb 2 22:12:58 CST 2018
로그인 후 복사

필수 파일

소스 코드

을 컴파일하세요.

PHP: http : //sg2.php.net/distributions/php-5.4.45.tar.gz

컴파일 환경

gcc

종속성: cpp, glibc-devel, glibc-headers, kernel-headers, libmpc, mpfr

동반 업그레이드: glibc, glibc-common, libgcc, libgomp

gcc-c++

종속성: libstdc++-devel

컴패니언 업그레이드: libstdc++

yum install gcc gcc-c++

종속 소프트웨어

yum install wget vim
로그인 후 복사

wget을 사용하여 다운로드 , vim 파일 편집에 편리합니다.

컴파일 및 설치에는 해당 기능이 있는 헤더 파일이 필요합니다. 헤더 파일을 얻는 방법에는 두 가지가 있습니다. 하나는 컴파일 과정에서 필요한 파일이 포함된 yum을 통해 해당 devel 패키지를 설치하는 것입니다. 다른 방법은 필요한 소스 코드 패키지를 다운로드하고 압축을 푼 다음 구성에서 소스 파일 위치를 지정하는 것입니다.

설치 시작

php 의존성 설치

여기서 yum을 사용하여 설치하세요. 물론 소스 코드 패키지를 사용하도록 선택할 수도 있습니다. 소스 코드를 사용할 때 yum에 해당하는 버전을 선택하는 것이 가장 좋습니다. 그렇지 않으면 호환성 문제가 발생할 수 있습니다.

소스 코드 다운로드 위치: http://vault.centos.org/centos/7/os/Source/SPackages/

yum install libxml2-devel    #2.9.1
yum install openssl openssl-devel   #1.0.2k
yum install bzip2 bzip2-devel   #1.0.6
yum install curl curl-devel   #7.29.0
yum install libjpeg libjpeg-devel   #libjpeg-turbo-1.2.90
yum install libpng libpng-devel  #1.5.13
yum install libxslt libxslt-devel  #1.1.28
yum install freetype freetype-devel   #2.4.11
yum install gmp gmp-devel   #6.0.0
yum install icu libicu-devel   #50.1.2
yum install -y epel-release && yum install -y libmcrypt libmcrypt-devel   #2.5.8该包CentOS默认源中没有,所以使用epel的源
yum install unixODBC unixODBC-devel #2.3.1
로그인 후 복사

다음은 설치에 따라 다릅니다. 확실하지 않은 경우 수동으로 다시 설치할 수 있습니다

gettext   #0.18.2.1
zlib   #1.2.7
pcre   #8.32
libpng   #1.5.13
로그인 후 복사

소스 코드를 사용하는 경우 기능적 무결성을 보장하려면 다음 패키지를 설치해야 합니다.

yum install libxml2 openssl bzip2 curl libjpeg freetype gmp icu libicu libmcrypt unixODBC gettext zlib pcre libpng
로그인 후 복사

php 설치

php:

wget http://sg2.php.net/distributions/php-5.4.45.tar.gz
tar zxvf php-5.4.45.tar.gz
cd php-5.4.45
./configure \
--prefix=/opt/web_engine/php \
--with-config-file-path=/opt/web_engine/php/etc \
--with-gettext \
--with-gmp \
--with-mysql \
--with-openssl \
--with-pdo-mysql \
--with-bz2 \
--with-curl \
--with-mcrypt \
--with-mhash \
--with-freetype-dir \
--with-unixODBC=/usr/ \
--with-pdo-odbc=unixODBC,/usr/ \
--with-libxml-dir \
--with-zlib \
--with-pcre-dir \
--with-gd \
--with-jpeg-dir \
--with-png-dir \
--with-xmlrpc \
--with-libxml-dir \
--with-xsl \
--enable-soap \
--enable-sysvmsg \
--enable-wddx \
--enable-zip \
--enable-exif \
--enable-intl \
--enable-bcmath \
--enable-calendar \
--enable-mbstring \
--enable-shmop \
--enable-fpm \
--enable-sockets
make && make install
Installing PHP CLI binary: /opt/web_engine/php/bin/
Installing PHP CLI man page: /opt/web_engine/php/php/man/man1/
Installing PHP FPM binary: /opt/web_engine/php/sbin/
Installing PHP FPM config: /opt/web_engine/php/etc/
Installing PHP FPM man page: /opt/web_engine/php/php/man/man8/
Installing PHP FPM status page: /opt/web_engine/php/php/fpm/
Installing PHP CGI binary: /opt/web_engine/php/bin/
Installing PHP CGI man page: /opt/web_engine/php/php/man/man1/
Installing build environment: /opt/web_engine/php/lib/php/build/
Installing header files: /opt/web_engine/php/include/php/
Installing helper programs: /opt/web_engine/php/bin/
program: phpize
program: php-config
Installing man pages: /opt/web_engine/php/php/man/man1/
page: phpize.1
page: php-config.1
Installing PEAR environment: /opt/web_engine/php/lib/php/
[PEAR] Archive_Tar - installed: 1.3.12
[PEAR] Console_Getopt - installed: 1.3.1
[PEAR] Structures_Graph- installed: 1.0.4
[PEAR] XML_Util - installed: 1.2.3
[PEAR] PEAR - installed: 1.9.5
Wrote PEAR system config file at: /opt/web_engine/php/etc/pear.conf
You may want to add: /opt/web_engine/php/lib/php to your php.ini include_path
/root/php-5.4.45/build/shtool install -c ext/phar/phar.phar /opt/web_engine/php/bin
ln -s -f /opt/web_engine/php/bin/phar.phar /opt/web_engine/php/bin/phar
Installing PDO headers: /opt/web_engine/php/include/php/ext/pdo/
로그인 후 복사

후속 작업

소스에서 php.ini-production 복사 코드 디렉터리를 컴파일 시 지정한 구성 파일 디렉터리에 추가

cp /root/php-5.4.45/php.ini-production /opt/web_engine/php/etc
cd /opt/web_engine/php/etc && cp php.ini-production php.ini
cd /opt/web_engine/php/etc && cp php-fpm.conf.default php-fpm.conf
로그인 후 복사

추가로 php 확장자가 정의되어 있으면 해당 확장자를 설치하세요

PHP 버전 확인

/opt/web_engine/php/bin/php -v
PHP 5.4.45 (cli) (built: Feb 2 2018 15:44:07)
Copyright (c) 1997-2014 The PHP Group
Zend Engine v2.4.0, Copyright (c) 1998-2014 Zend Technologies
로그인 후 복사

세부 정보 보기

/opt/web_engine/php/bin/php -i

...

systemd 구성

vim /usr/lib/systemd/system/php-fpm.service
 
[Unit]
Description=The PHP FastCGI Process Manager
After=syslog.target network.target
 
[Service]
Type=simple
PIDFile=/opt/web_engine/php/var/run/php-fpm.pid
ExecStart=/opt/web_engine/php/sbin/php-fpm --nodaemonize --fpm-config /opt/web_engine/php/etc/php-fpm.conf
ExecReload=/bin/kill -USR2 $MAINPIDe
 
[Install]
WantedBy=multi-user.target
로그인 후 복사

로그 회전

vim /etc/logrotate.d/php-fpm
/var/log/php-fpm/*.log {
    su root root
    daily
    missingok
    rotate 52
    compress
    delaycompress
    notifempty
    olddir /var/log/php-fpm/archive
    #create 640 nginx adm
    sharedscripts
    postrotate
        /bin/kill -SIGUSR1 `cat /opt/web_engine/php/var/run/php-fpm.pid 2>/dev/null` 2>/dev/null || true
    endscript
}
로그인 후 복사

위 내용은 CentOS에서 php-fpm을 컴파일하고 설치하는 방법의 상세 내용입니다. 자세한 내용은 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. 에너지 결정과 그들이하는 일 (노란색 크리스탈)
2 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 최고의 그래픽 설정
2 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 아무도들을 수없는 경우 오디오를 수정하는 방법
2 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌

뜨거운 도구

메모장++7.3.1

메모장++7.3.1

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

SublimeText3 중국어 버전

SublimeText3 중국어 버전

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

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

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

센토스로 중국어 입력하는 방법 센토스로 중국어 입력하는 방법 Apr 07, 2024 pm 08:21 PM

CentOS에서 중국어 입력을 사용하는 방법에는 fcitx 입력 방법 사용: fcitx 설치 및 활성화, 단축키 설정, 단축키를 눌러 입력 방법 전환, 병음을 입력하여 후보 단어 생성 등이 있습니다. iBus 입력 방법 사용: iBus를 설치 및 활성화하고, 단축키를 설정하고, 단축키를 눌러 입력 방법을 전환하고, 병음을 입력하여 후보 단어를 생성합니다.

centos7에서 USB 디스크 파일을 읽는 방법 centos7에서 USB 디스크 파일을 읽는 방법 Apr 07, 2024 pm 08:18 PM

CentOS 7에서 U 디스크 파일을 읽으려면 먼저 U 디스크를 연결하고 장치 이름을 확인해야 합니다. 그런 다음 다음 단계를 사용하여 파일을 읽습니다. USB 플래시 드라이브 마운트: mount /dev/sdb1 /media/sdb1("/dev/sdb1"을 실제 장치 이름으로 대체) USB 플래시 드라이브 파일 찾아보기: ls /media /sdb1; cd /media /sdb1/디렉토리;

centos7에서 루트 권한을 입력하는 방법 centos7에서 루트 권한을 입력하는 방법 Apr 02, 2024 pm 08:57 PM

CentOS 7의 루트 권한을 입력하는 방법은 두 가지가 있습니다. sudo 명령을 사용합니다. 터미널에 sudo su -를 입력하고 현재 사용자 비밀번호를 입력합니다. 루트 사용자로 직접 로그인: 로그인 화면에서 "기타"를 선택하고 "루트"와 루트 비밀번호를 입력합니다. 참고: 루트 권한으로 주의 깊게 작업하고, sudo 권한으로 작업을 수행하고, 루트 비밀번호를 정기적으로 변경하십시오.

SCP 사용 팁 - 파일을 재귀적으로 제외 SCP 사용 팁 - 파일을 재귀적으로 제외 Apr 22, 2024 am 09:04 AM

scp 명령을 사용하여 네트워크 호스트 간에 파일을 안전하게 복사할 수 있습니다. 데이터 전송 및 인증을 위해 SSH를 사용합니다. 일반적인 구문은 다음과 같습니다: scpfile1user@host:/path/to/dest/scp -r/path/to/source/user@host:/path/to/dest/scp 파일 제외 scp 명령을 사용할 때는 할 수 없을 것 같습니다 파일을 필터링하거나 제외합니다. 그러나 파일을 제외하고 SSH를 사용하여 안전하게 복사하는 좋은 해결 방법이 있습니다. 이 페이지에서는 scp를 사용하여 디렉터리를 반복적으로 복사할 때 파일을 필터링하거나 제외하는 방법을 설명합니다. rsync 명령을 사용하여 파일을 제외하는 방법 구문은 다음과 같습니다: rsyncav-essh-

centos 로그인 비밀번호를 잊어버린 경우 어떻게 해야 하나요? centos 로그인 비밀번호를 잊어버린 경우 어떻게 해야 하나요? Apr 07, 2024 pm 07:33 PM

잊어버린 CentOS 비밀번호에 대한 해결 방법은 다음과 같습니다. 단일 사용자 모드: 단일 사용자 모드로 들어가서 passwd root를 사용하여 비밀번호를 재설정합니다. 복구 모드: CentOS Live CD/USB에서 부팅하고 루트 파티션을 마운트하고 비밀번호를 재설정합니다. 원격 액세스: SSH를 사용하여 원격으로 연결하고 sudo passwd root로 비밀번호를 재설정합니다.

Centos 사용자 이름과 비밀번호를 잊어버린 경우 어떻게 해야 합니까? Centos 사용자 이름과 비밀번호를 잊어버린 경우 어떻게 해야 합니까? Apr 02, 2024 pm 08:54 PM

CentOS 사용자 이름과 비밀번호를 잊어버린 경우 액세스를 복원하는 두 가지 방법이 있습니다. 루트 비밀번호 재설정: 서버를 다시 시작하고 GRUB 메뉴에서 커널 명령줄을 편집한 후 "rw init=/sysroot/bin/sh"를 추가하고 Ctrl을 누릅니다. +x ;루트 파일 시스템을 마운트하고 단일 사용자 모드에서 비밀번호를 재설정합니다. 복구 모드 사용: CentOS 설치 ISO 이미지에서 서버를 시작하고, 루트 파일 시스템을 마운트하고, ISO 이미지에서 chroot 환경을 복사하고, 비밀번호를 재설정하고, chroot 환경을 종료하고 서버를 다시 시작합니다.

centos7에서 루트 권한을 활성화하는 방법 centos7에서 루트 권한을 활성화하는 방법 Apr 07, 2024 pm 08:03 PM

CentOS 7은 기본적으로 루트 권한을 비활성화합니다. 다음 단계에 따라 활성화할 수 있습니다. 임시 활성화: 터미널에 "su root"를 입력하고 루트 비밀번호를 입력합니다. 영구적으로 활성화됨: "/etc/ssh/sshd_config"를 편집하고 "PermitRootLogin no"를 "yes"로 변경한 후 SSH 서비스를 다시 시작합니다.

centos7 비밀번호를 잊어버린 경우 어떻게 해야 합니까? centos7 비밀번호를 잊어버린 경우 어떻게 해야 합니까? Apr 02, 2024 pm 08:51 PM

CentOS 7에서 비밀번호를 잊어버린 경우 세 가지 솔루션: 단일 사용자 모드: 시스템을 다시 시작하고, 커널 옵션을 편집하고, ro를 rw init=/sysroot/bin/sh로 변경하고, passwd 명령을 사용하여 루트 비밀번호를 재설정합니다. 복구 모드: 설치 미디어에서 부팅하고, 복구 모드를 선택하고, 루트 파일 시스템을 마운트하고, 루트 파일 시스템에 chroot하고, passwd 명령을 사용하여 루트 비밀번호를 재설정합니다. Grub2 명령줄: 시스템을 다시 시작하고, c를 눌러 명령줄을 입력하고, 커널을 로드하고, 루트 파일 시스템을 마운트하고, 루트 파일 시스템에 chroot를 지정한 다음, passwd 명령을 사용하여 루트 비밀번호를 재설정합니다.

See all articles