찾다
백엔드 개발PHP 문제Linux에서 PHP 소스 코드를 설치하는 방법에 대한 자세한 설명

Linux에서 PHP 소스 코드를 설치하는 방법에 대한 자세한 설명

PHP 소스 코드 설치 단계는 다음과 같습니다.

1. 다운로드한 바이너리 패키지를 /usr/local 디렉터리로 이동하고 파일 패키지의 압축을 풉니다.

tar zxvf php-7.1.4.tar.gz

2 압축이 풀린 php 폴더에 들어갑니다. usr/local/php-7.1.4, 종속성 설치, 컴파일 및 설치

yum install  libxml2  libxml2-devel
./configure --prefix=/usr/local/php  --with-zlib --enable-zip --with-openssl --enable-fpm --enable-mbstring 
--with-libdir=lib64 --without-pear  --disable-phar
make
make test
make install

설치 완료 후 요약 정보:

Installing shared extensions:     /usr/local/php/lib/php/extensions/no-debug-non-zts-20160303/
Installing PHP CLI binary:        /usr/local/php/bin/
Installing PHP CLI man page:      /usr/local/php/php/man/man1/
Installing PHP FPM binary:        /usr/local/php/sbin/
Installing PHP FPM defconfig:     /usr/local/php/etc/
Installing PHP FPM man page:      /usr/local/php/php/man/man8/
Installing PHP FPM status page:   /usr/local/php/php/php/fpm/
Installing phpdbg binary:         /usr/local/php/bin/
Installing phpdbg man page:       /usr/local/php/php/man/man1/
Installing PHP CGI binary:        /usr/local/php/bin/
Installing PHP CGI man page:      /usr/local/php/php/man/man1/
Installing build environment:     /usr/local/php/lib/php/build/
Installing header files:          /usr/local/php/include/php/
Installing helper programs:       /usr/local/php/bin/
  program: phpize
  program: php-config
Installing man pages:             /usr/local/php/php/man/man1/
  page: phpize.1
  page: php-config.1
Installing PDO headers:           /usr/local/php/include/php/ext/pdo/

3. PHP 구성

#php的配置文件为 php.ini
cp /usr/local/php-7.1.4/php.ini-production   /usr/local/php/lib/php.ini
#使得另一种方法来管理服务:
cp /usr/local/php-7.1.4/sapi/fpm/php-fpm /etc/init.d/php-fpm
#添加执行权限
chmod +x /etc/init.d/php-fpm
#php-fpm的配置文件
cp /usr/local/php/etc/php-fpm.conf.default   /usr/local/php/etc/php-fpm.conf
cp /usr/local/php/etc/php-fpm.d/www.conf.default   /usr/local/php/etc/php-fpm.d/www.conf

php- fpm 프로세스는 시스템 구성에 따라 /usr/local/php/etc/php-fpm.d/www.conf

로 제한됩니다. netstat -napo | grep "php-fpm" wc -l 사용 를 사용하여 현재 fastcgi 프로세스 수를 확인하세요. 이 수가 conf에 구성된 상한에 가까우면 프로세스 수를 늘려야 합니다. netstat -napo |grep "php-fpm" | wc -l 查看一下当前fastcgi进程个数,如果个数接近conf里配置的上限,就需要调高进程数。

但也不能无休止调高,可以根据服务器内存情况,可以把php-fpm子进程数调到100或以上,在4G内存的服务器上200就可以。

pm.max_children = 200
pm.start_servers = 10
pm.min_spare_servers = 8
pm.max_spare_servers = 12

4、设置环境变量

vi /etc/profile

打开后,在文档最下方添加如下配置:

export PATH=/usr/local/php/bin:$PATH

:wq!保存退出,执行如下命令,使更改生效

source /etc/profile

5、启动php测试

#启动
/etc/init.d/php-fpm
#测试php
cd /usr/local/nginx/html
vi test.php

添加如下内容:

<?php  
 echo phpinfo();  
?>

:wq!保存退出。

浏览器输入:http://10.62.32.123/test.php

如果出现:PHP Version 7.1.4 界面,显示php详细的配置的界面,说明安装正确。

6、php重启、停止

php 7.1.4 源码中已经内嵌了 php-fpm,只需要在configure的时候添加编译参数即可。

但是,php 7.1.4 下的php-fpm 不再支持 php-fpm 以前具有的 /usr/local/php/sbin/php-fpm (start|stop|reload)等命令,需要使用信号控制:

master进程可以理解以下信号:

SIGINT, SIGTERM 立刻终止  

SIGQUIT 平滑终止  

SIGUSR1 重新打开日志文件  

SIGUSR2

하지만 끝없이 늘릴 수는 없습니다. 서버 메모리에 따라 php-fpm 하위 프로세스 수를 100개 이상으로 조정할 수 있습니다. 4G 메모리가 있는 서버에서는 200개면 충분합니다.

kill -SIGINT `cat /usr/local/php/var/run/php-fpm.pid`

4. 환경 변수 설정

kill -SIGUSR2 `cat /usr/local/php/var/run/php-fpm.pid`

문서 하단에 다음 구성을 추가하세요.

ps aux | grep -c php-fpm
netstat -anpo | grep "php-cgi" | wc -l
netstat -anop | grep "php-fpm" | wc -l
:wq! 저장하고 종료한 후 다음 명령을 실행하면 변경 사항이 적용됩니다rrreee

5. PHP 테스트 시작 rrreeerrree

다음 내용을 추가하세요:

rrreee:wq!저장하고 종료하세요.
브라우저 입력: http://10.62.32.123/test.php

🎜자세한 PHP 구성 인터페이스를 표시하는 PHP 버전 7.1.4 인터페이스가 나타나면 설치가 올바른 것입니다. 🎜🎜🎜6. PHP 다시 시작 및 중지 🎜🎜🎜php 7.1.4에는 소스 코드에 php-fpm이 포함되어 있습니다. 구성할 때 컴파일 매개변수만 추가하면 됩니다. 🎜🎜그러나 php 7.1.4의 php-fpm은 더 이상 /usr/local/php/sbin/php-fpm (start|stop|reload) 및 php-fpm이 이전에 사용했던 기타 명령을 지원하지 않으므로 다음을 사용해야 합니다. 신호 제어: 🎜 🎜마스터 프로세스는 다음 신호를 이해할 수 있습니다: 🎜🎜SIGINT, SIGTERM 즉시 종료 🎜🎜SIGQUIT 원활한 종료 🎜🎜SIGUSR1 로그 파일을 다시 엽니다. 🎜🎜SIGUSR2 모든 작업자 프로세스를 정상적으로 다시 로드하고 구성 및 바이너리 모듈을 다시 로드합니다. 🎜🎜예: 🎜🎜🎜php-fpm 닫기🎜: 🎜rrreee🎜🎜php -fpm 다시 시작 🎜: 🎜rrreee🎜🎜php-fpm 프로세스 수 보기 🎜: 🎜rrreee🎜더 많은 관련 질문을 보려면 PHP 중국어 웹사이트를 방문하세요. 🎜PHP 비디오 튜토리얼🎜🎜🎜

위 내용은 Linux에서 PHP 소스 코드를 설치하는 방법에 대한 자세한 설명의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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

linux设备节点是应用程序和设备驱动程序沟通的一个桥梁;设备节点被创建在“/dev”,是连接内核与用户层的枢纽,相当于硬盘的inode一样的东西,记录了硬件设备的位置和信息。设备节点使用户可以与内核进行硬件的沟通,读写设备以及其他的操作。

Linux中open和fopen的区别有哪些Linux中open和fopen的区别有哪些Apr 29, 2022 pm 06:57 PM

区别:1、open是UNIX系统调用函数,而fopen是ANSIC标准中的C语言库函数;2、open的移植性没fopen好;3、fopen只能操纵普通正规文件,而open可以操作普通文件、网络套接字等;4、open无缓冲,fopen有缓冲。

linux怎么判断pcre是否安装linux怎么判断pcre是否安装May 09, 2022 pm 04:14 PM

在linux中,可以利用“rpm -qa pcre”命令判断pcre是否安装;rpm命令专门用于管理各项套件,使用该命令后,若结果中出现pcre的版本信息,则表示pcre已经安装,若没有出现版本信息,则表示没有安装pcre。

linux中eof是什么linux中eof是什么May 07, 2022 pm 04:26 PM

在linux中,eof是自定义终止符,是“END Of File”的缩写;因为是自定义的终止符,所以eof就不是固定的,可以随意的设置别名,linux中按“ctrl+d”就代表eof,eof一般会配合cat命令用于多行文本输出,指文件末尾。

linux中什么叫端口映射linux中什么叫端口映射May 09, 2022 pm 01:49 PM

端口映射又称端口转发,是指将外部主机的IP地址的端口映射到Intranet中的一台计算机,当用户访问外网IP的这个端口时,服务器自动将请求映射到对应局域网内部的机器上;可以通过使用动态或固定的公共网络IP路由ADSL宽带路由器来实现。

手机远程linux工具有哪些手机远程linux工具有哪些Apr 29, 2022 pm 05:30 PM

手机远程linux工具有:1、JuiceSSH,是一款功能强大的安卓SSH客户端应用,可直接对linux服务进行管理;2、Termius,可以利用手机来连接Linux服务器;3、Termux,一个强大的远程终端工具;4、向日葵远程控制等等。

linux怎么查询mac地址linux怎么查询mac地址Apr 24, 2022 pm 08:01 PM

linux查询mac地址的方法:1、打开系统,在桌面中点击鼠标右键,选择“打开终端”;2、在终端中,执行“ifconfig”命令,查看输出结果,在输出信息第四行中紧跟“ether”单词后的字符串就是mac地址。

linux中lsb是什么意思linux中lsb是什么意思May 07, 2022 pm 05:08 PM

linux中,lsb是linux标准基础的意思,是“Linux Standards Base”的缩写,是linux标准化领域中的标准;lsb制定了应用程序与运行环境之间的二进制接口,保证了linux发行版与linux应用程序之间的良好结合。

See all articles

핫 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尊渡假赌尊渡假赌尊渡假赌

뜨거운 도구

에디트플러스 중국어 크랙 버전

에디트플러스 중국어 크랙 버전

작은 크기, 구문 강조, 코드 프롬프트 기능을 지원하지 않음

안전한 시험 브라우저

안전한 시험 브라우저

안전한 시험 브라우저는 온라인 시험을 안전하게 치르기 위한 보안 브라우저 환경입니다. 이 소프트웨어는 모든 컴퓨터를 안전한 워크스테이션으로 바꿔줍니다. 이는 모든 유틸리티에 대한 액세스를 제어하고 학생들이 승인되지 않은 리소스를 사용하는 것을 방지합니다.

mPDF

mPDF

mPDF는 UTF-8로 인코딩된 HTML에서 PDF 파일을 생성할 수 있는 PHP 라이브러리입니다. 원저자인 Ian Back은 자신의 웹 사이트에서 "즉시" PDF 파일을 출력하고 다양한 언어를 처리하기 위해 mPDF를 작성했습니다. HTML2FPDF와 같은 원본 스크립트보다 유니코드 글꼴을 사용할 때 속도가 느리고 더 큰 파일을 생성하지만 CSS 스타일 등을 지원하고 많은 개선 사항이 있습니다. RTL(아랍어, 히브리어), CJK(중국어, 일본어, 한국어)를 포함한 거의 모든 언어를 지원합니다. 중첩된 블록 수준 요소(예: P, DIV)를 지원합니다.

SublimeText3 Mac 버전

SublimeText3 Mac 버전

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

맨티스BT

맨티스BT

Mantis는 제품 결함 추적을 돕기 위해 설계된 배포하기 쉬운 웹 기반 결함 추적 도구입니다. PHP, MySQL 및 웹 서버가 필요합니다. 데모 및 호스팅 서비스를 확인해 보세요.