CentOS 7 에 PHP 환경 을 설치 하고 Nginx 지원 php - fpm 모듈 을 설정 합 니 다.

7912 단어 LinuxPHP
다음은 CentOS 7 의 경우 phop 을 설치 한 운영 환경 으로 phop 홈 페이지 를 먼저 엽 니 다.http://php.net/내 비게 이 션 표시 줄 의 다운 로드 를 클릭 하여 다운로드 페이지 에 들 어 갑 니 다:http://php.net/downloads.php
1. 홈 페이지 에서 원본 패키지 다운로드 방법:
최신 php 7.0.5 의 원본 패 키 지 를 다운로드 합 니 다.
  
다운 받 아서 서버 에 올 려 주세요.
php 설 치 는 컴 파일 이 필요 하기 때문에 서버 는 gcc 와 g + + 환경의 설 치 를 확보 해 야 합 니 다
우선 설치 패 키 지 를 놓 습 니 다:
tar -xvzf php-7.0.5.tar.gz
cd php-7.0.5

다음은 매개 변수 설정 을 진행 합 니 다. 설정 전에 libxml 2 와 libxml 2 - devel 이 없 으 면 오류 가 발생 할 수 있 으 므 로 libxml 2 를 업데이트 하고 libxml 2 - devel 을 설치 하여 온라인 으로 설치 해 야 합 니 다.
yum -y install libxml2
yum -y install libxml2-devel

또한 운영 체제 환경 에 따라 시스템 설치 개발 환경 패키지 의 완전 정도 가 다 르 기 때문에 운영 체 제 를 설치 할 때 필요 한 선택 을 하 는 것 을 권장 합 니 다. 모든 명령 을 통일 적 으로 실행 하여 설치 되 지 않 은 구성 요 소 를 설치 할 수 있 습 니 다. 설치 되 어 있 으 면 업그레이드 가 가능 하고 버 전이 완전히 일치 하면 어떠한 조작 도 하지 않 습 니 다.명령 은 위의 두 개 를 제외 하고 다음 과 같이 요약 합 니 다.
yum -y install openssl
yum -y install openssl-devel
yum -y install curl
yum -y install curl-devel
yum -y install libjpeg
yum -y install libjpeg-devel
yum -y install libpng
yum -y install libpng-devel
yum -y install freetype
yum -y install freetype-devel
yum -y install pcre
yum -y install pcre-devel
yum -y install libxslt
yum -y install libxslt-devel
yum -y install bzip2
yum -y install bzip2-devel
 

이상 의 이 가방 들 은 기본적으로 충분 합 니 다. 문제 가 발견 되면 다시 보충 하고 설치 가 완 료 된 후에 설정 을 실행 합 니 다.
./configure --prefix=/usr/local/php --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-gd-
native-ttf --enable-mbregex --enable-mbstring --enable-opcache --enable-pcntl --enable-
shmop --enable-soap --enable-sockets --enable-sysvsem --enable-sysvshm --enable-xml --
enable-zip

실제로 이곳 의 설정 항목 은 상술 한 것 보다 더 많아 서 사용 할 수 있다 ./configure --help 명령 은 모든 옵션 을 봅 니 다. php 7 에서 -- with - mysql 원생 지원 이 존재 하지 않 습 니 다. 동작 이 mysql 이나 pdo 로 변 했 습 니 다.이상 의 옵션 은 정상 적 인 phop 개발 에 충분히 사용 할 수 있 습 니 다. 나중에 필요 하 다 면 해당 모듈 을 수 동 으로 열 수 있 습 니 다.
그리고 컴 파일 실행:
make

컴 파일 시간 이 좀 길 수 있 습 니 다. 컴 파일 이 끝 난 후에 설 치 를 실행 합 니 다.
make install

2. yum 명령 설치:
php 7.1 설치
php 원본 설치
rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm 
rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm

원본 설치 성공 여부 확인
 yum repolist enabled | grep "webtatic*"

php 확장 원본 설치
yum -y install php71w php71w-fpm
yum -y install php71w-mbstring php71w-common php71w-gd php71w-mcrypt
yum -y install php71w-mysql php71w-xml php71w-cli php71w-devel
yum -y install php71w-pecl-memcached php71w-pecl-redis php71w-opcache

php 7.1. x 와 확장 이 설치 되 었 는 지 검증 합 니 다. 
php 설치 성공 여부 검증
php -v

대응 하 는 확장 이 설치 되 었 는 지 검증 합 니 다.
php -m

 
3. 설정
php 의 기본 설치 위 치 는 / usr / local / php 로 지정 되 었 습 니 다. 다음 에 해당 하 는 파일 을 설정 합 니 다.
cp php.ini-development /usr/local/php/lib/php.ini
cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf
cp sapi/fpm/php-fpm /usr/local/bin

그리고 php. ini 를 설정 하고 사용: vim /usr/local/php/lib/php.ini php 프로필 열기 cgi. fix 찾기pathinfo 설정 항목 입 니 다. 이 기본 값 은 설명 되 어 있 고 값 은 1 입 니 다. 공식 문서 의 설명 에 따 르 면 파일 이 존재 하지 않 을 때 Nginx 가 백 엔 드 에 요청 한 PHP - FPM 모듈 을 보 내 는 것 을 막 기 위해 악성 스 크 립 트 가 주입 하 는 공격 을 피해 야 합 니 다. 따라서 이 항목 은 설명 을 지우 고 0 으로 설정 해 야 합 니 다.
  
설정 완료 저장 및 종료
또한, php. ini 설정 파일 의 위 치 는 컴 파일 전 설정 매개 변수 에서 설정 할 수 있 습 니 다. 컴 파일 매개 변 수 는 다음 과 같이 쓸 수 있 습 니 다. -- with - config - file - path = / usr / local / phop 그러면 phop 은 지정 한 디 렉 터 리 에서 phop. ini 설정 파일 을 읽 습 니 다. 이 매개 변 수 를 추가 하지 않 으 면 기본 위 치 는 phop 설치 디 렉 터 리 에 있 는 lib 디 렉 터 리 입 니 다. 구체 적 으로 phopinfo () 에서 도 읽 을 수 있 습 니 다.출력 인터페이스 보기, php. ini 를 다른 위치 에 두 면 php 가 읽 히 지 않 으 면 모든 설정 이 수정 되면 적용 되 지 않 습 니 다. 이 점 에 주의 하 십시오.
이 때 먼저 웹 사용 자 를 만들어 야 합 니 다:
groupadd www-data
useradd -g www-data www-data

그리고 인터넷 에서 일부 튜 토리 얼 은 pp - fpm. conf 를 수정 하여 만 든 사용자 와 그룹 을 추가 하 라 고 했 습 니 다. 이 럴 때 사용 합 니 다. vim /usr/local/php/etc/php-fpm.conf 파일 을 열 면 공식 알림 의 위 치 를 찾 을 수 없습니다:
  
이 때 아무 위치 에 나 추가 하면 다음 php - fpm 를 시작 할 때 디 렉 터 리 에서 찾 을 수 없 는 오 류 를 보고 합 니 다. 따라서 php - fpm. conf 에 사용자 와 그룹 을 추가 하지 마 십시오. 이 때 php - fpm. conf 마지막 줄 로 넘 어가 면 다음 과 같은 내용 을 발견 할 수 있 습 니 다.
  
php - fpm. d 디 렉 터 리 에 있 는 모든 conf 프로필 을 도 입 했 지만, NONE 는 실제 디 렉 터 리 로 변경 해 야 합 니 다: / usr / local
  
기본적으로 etc / php - fpm. d / 다음 에 www. conf. defalut 라 는 설정 사용자 의 파일 이 있 습 니 다. 다음 명령 을 실행 하여 새 파일 을 복사 하고 엽 니 다.
cp /usr/local/php/etc/php-fpm.d/www.conf.default /usr/local/php/etc/php-fpm.d/www.conf
vim /usr/local/php/etc/php-fpm.d/www.conf

기본 user 와 group 의 설정 은 nobody 이 며, www - data 로 변경 합 니 다.
  
수정 이 완료 되면 저장 하고 종료 한 다음 다음 명령 을 실행 하여 php - fpm 서 비 스 를 시작 합 니 다.
/usr/local/bin/php-fpm

시작 이 끝 난 후 php - fpm 서 비 스 는 기본적으로 9000 포트 를 사용 하여 사용 합 니 다. netstat -tln | grep 9000 포트 사용 현황 보기:
  
9000 포트 가 정상적으로 사용 되 었 다 는 것 은 pp - fpm 서비스 가 성공 적 으로 시작 되 었 음 을 나타 낸다.
그리고 집행 vim /usr/local/nginx/nginx.conf nginx 프로필 을 편집 합 니 다. 구체 적 인 경 로 는 실제 nginx. conf 프로필 위치 에 따라 편집 합 니 다. 다음은 nginx 의 server {} 프로필 의 내용 을 수정 하고 location 블록 을 수정 합 니 다. index. php 를 추가 하여 nginx 서버 가 기본 으로 index. php 를 첫 페이지 로 지원 합 니 다.
  
그리고. php 요청 이 백 엔 드 로 전 송 된 php - fpm 모듈 을 설정 합 니 다. 기본적으로 php 설정 블록 은 주석 이 있 습 니 다. 이 때 주석 을 지우 고 다음 내용 으로 수정 합 니 다.
  
이 안 에는 기본 값 이 많 습 니 다. 루트 는 phop 프로그램 을 설정 하 는 루트 디 렉 터 리 입 니 다. 주로 fastcgi 를 수정 합 니 다.param 의 / script 은 $document 입 니 다.root
위의 것 을 수정 하고 ngix. conf 첫 줄 로 돌아 갑 니 다. 기본 값 은 \ # user nobody 입 니 다. 주석 을 지우 고 user www - data 로 변경 합 니 다.또는 user www - data www - data;nginx 서버 의 권한 을 ww - data 로 표시 합 니 다.
이 저장 을 수정 하고 종료 한 다음 nginx 를 다시 시작 합 니 다.
/usr/local/nginx/nginx -s stop
/usr/local/nginx/nginx 

다음은 테스트 phop 프로그램 을 편집 하고 nginx 의 html 디 렉 터 리 에서 test. phop 파일 을 만 들 고 phop 설정 을 인쇄 합 니 다.

그리고 브 라 우 저 를 열 어 해당 하 는 주 소 를 입력 하여 방문 합 니 다. 출력 페이지 를 보면 nginx 와 phop 이 모두 설정 되 었 음 을 설명 합 니 다.
  

좋은 웹페이지 즐겨찾기