아 리 운 centos 7.6 설치 php 7.3

8417 단어 linuxcentosphp
사용자 그룹 추가
groupadd www
useradd -g www www

php 다운로드
wget "https://downloads.php.net/~cmb/php-7.3.0.tar.gz"
tar xzvf php-7.3.0.tar.gz
cd  php-7.3.0

컴 파일
--with-fpm-user=ww--with-fpm-group=ww 여기 서 ww ww 사용자,사용자 그룹 으로 컴 파일 된 프로그램 을 시작 합 니 다.바로 이 사용자,사용자 그룹 에 속 합 니 다.
./configure --prefix=/usr/local/php --with-fpm-user=www --with-fpm-group=www --with-curl --with-freetype-dir --with-gd --with-gettext --with-iconv-dir --with-kerberos --with-libdir=lib64 --with-libxml-dir --with-mysqli --with-openssl --with-pcre-regex --with-pdo-mysql --with-pdo-sqlite --with-pear --with-png-dir --with-jpeg-dir --with-xmlrpc --with-xsl --with-zlib --with-bz2 --with-mhash --enable-fpm --enable-bcmath --enable-libxml --enable-inline-optimization --enable-mbregex --enable-mbstring --enable-opcache --enable-pcntl --enable-shmop --enable-soap --enable-sockets --enable-sysvsem --enable-sysvshm --enable-xml --enable-zip --enable-fpm 

컴 파일 오류,의존 해결
configure: error: libxml2 not found. Please check your libxml2 installation.
yum install -y  libxml2-devel

configure: error: Please reinstall the BZip2 distribution
yum install -y  bzip2-devel

configure: error: cURL version 7.15.5 or later is required to compile php with cURL support
yum install -y  curl-devel

configure: error: jpeglib.h not found.
yum install -y  libjpeg-devel

configure: error: png.h not found.
yum install -y libpng-devel 

configure: error: freetype-config not found.
yum install -y freetype-devel

configure: error: xslt-config not found. Please reinstall the libxslt >= 1.1.0 distribution
yum install -y libxslt-devel

configure: error: Please reinstall the libzip distribution
yum install -y libzip-devel

checking for libzip... configure: error: system libzip must be upgraded to version >= 0.11
#      
yum remove -y libzip

#      
wget https://nih.at/libzip/libzip-1.2.0.tar.gz
tar -zxvf libzip-1.2.0.tar.gz
cd libzip-1.2.0
./configure
make && make install

off_t 정의 되 지 않 은 잘못 보고
checking libzip... yes
checking for the location of zlib... /usr
checking for pkg-config... (cached) /usr/bin/pkg-config
checking for libzip... in default path: found in /usr/local
checking for zip_open in -lzip... yes
checking for zip_file_set_encryption in -lzip... yes
checking for zip_libzip_version in -lzip... no
checking stdbool.h usability... yes
checking stdbool.h presence... yes
checking for stdbool.h... yes
checking fts.h usability... yes
checking fts.h presence... yes
checking for fts.h... yes
checking for int8_t... (cached) yes
checking for int16_t... (cached) yes
checking for int32_t... (cached) yes
checking for int64_t... (cached) yes
checking for uint8_t... (cached) yes
checking for uint16_t... (cached) yes
checking for uint32_t... (cached) yes
checking for uint64_t... (cached) yes
checking for ssize_t... yes
checking size of short... (cached) 2
checking size of int... (cached) 4
checking size of long... (cached) 8
checking size of long long... (cached) 8
checking size of off_t... 0
configure: error: off_t undefined; check your library configuration

off_t 형식 은 헤더 파일 유 니스 트 d.h 에서 정 의 됩 니 다.32 비트 시스템 에서 long int 로 프로 그래 밍 되 었 고 64 비트 시스템 은 long long int 로 컴 파일 되 었 습 니 다.컴 파일 을 진행 할 때 64 비트 의 동적 링크 라 이브 러 리 를 기본적으로 찾 았 지만 기본 적 인 상황 에서 centos 의 동적 링크 라 이브 러 리 설정 파일/etc/ld.so.conf 에는 검색 경로 가 추가 되 지 않 았 습 니 다.이 때 는/usr/local/lib 64/usr/lib 64 이 64 비트 의 라 이브 러 리 파일 경 로 를 추가 해 야 합 니 다.
#           
echo '/usr/local/lib64
/usr/local/lib
/usr/lib
/usr/lib64'>>/etc/ld.so.conf

#       
ldconfig -v

설치 하 다.
make && make install

usr/local/include/zip.h:59:21:치 명 적 인 오류:zipconf.h:그런 파일 이나 디렉토리 가 없습니다
cp /usr/local/lib/libzip/include/zipconf.h /usr/local/include/zipconf.h

성공 출력
Installing shared extensions:     /usr/local/php/lib/php/extensions/no-debug-non-zts-20180731/
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 PEAR environment:      /usr/local/php/lib/php/

Warning: "continue" targeting switch is equivalent to "break". Did you mean to use "continue 2"? in phar:///home/flame/software/php-7.3.0/pear/install-pear-nozlib.phar/PEAR/PackageFile/v2/Validator.php on line 1933
[PEAR] Archive_Tar    - installed: 1.4.3
[PEAR] Console_Getopt - installed: 1.4.1
[PEAR] Structures_Graph- installed: 1.1.1
[PEAR] XML_Util       - installed: 1.4.2
[PEAR] PEAR           - installed: 1.10.5
Wrote PEAR system config file at: /usr/local/php/etc/pear.conf
You may want to add: /usr/local/php/lib/php to your php.ini include_path
/home/flame/software/php-7.3.0/build/shtool install -c ext/phar/phar.phar /usr/local/php/bin
ln -s -f phar.phar /usr/local/php/bin/phar
Installing PDO headers:           /usr/local/php/include/php/ext/pdo/

디 렉 터 리 설정
cp php.ini-production /usr/local/php/lib/php.ini
cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf
ln -s /usr/local/php/sbin/php-fpm /usr/local/bin
cd /usr/local/php/etc/php-fpm.d
vim www.conf

입력
[www]
listen = 127.0.0.1:9080   
listen.mode = 0666      

user = www  #php              ,
group = www #php              

pm = dynamic
pm.max_children = 128
pm.start_servers = 20
pm.min_spare_servers = 5
pm.max_spare_servers = 35
pm.max_requests = 10000

rlimit_files = 1024

slowlog = log/$pool.log.slow

systemtl 서비스 가입
cd /home/flame/software/php-7.3.0/sapi/fpm
cp php-fpm.service /usr/lib/systemd/system/

시동 을 걸다
systemctl start php-fpm
#    
systemctl status php-fpm

#    
● php-fpm.service - The PHP FastCGI Process Manager
   Loaded: loaded (/usr/lib/systemd/system/php-fpm.service; disabled; vendor preset: disabled)
   Active: active (running) since Thu 2018-12-27 16:13:16 CST; 2s ago
 Main PID: 16835 (php-fpm)
   CGroup: /system.slice/php-fpm.service
           ├─16835 php-fpm: master process (/usr/local/php/etc/php-fpm.conf)
           ├─16836 php-fpm: pool www
           ├─16837 php-fpm: pool www
           ├─16838 php-fpm: pool www
           ├─16839 php-fpm: pool www
           ├─16840 php-fpm: pool www
           ├─16841 php-fpm: pool www
           ├─16842 php-fpm: pool www
           ├─16843 php-fpm: pool www
           ├─16844 php-fpm: pool www
           ├─16845 php-fpm: pool www
           ├─16846 php-fpm: pool www
           ├─16847 php-fpm: pool www
           ├─16848 php-fpm: pool www
           ├─16849 php-fpm: pool www
           ├─16850 php-fpm: pool www
           ├─16851 php-fpm: pool www
           ├─16852 php-fpm: pool www
           ├─16853 php-fpm: pool www
           ├─16854 php-fpm: pool www
           └─16855 php-fpm: pool www

Dec 27 16:13:16 iZj6cas4fyg41lxhngh1z0Z systemd[1]: Started The PHP FastCGI Process Manager.

테스트
mkdir -p /home/www/webroot/php
cd /home/www/webroot/php
vim test.php

입력

xxx.xxx.xxx.xxx:8080/test.php 방문
php 명령 환경
$HOME/.profile 에 추 가 된 내용 은
export PATH=$PATH:/usr/local/php/bin

좋은 웹페이지 즐겨찾기