백엔드 개발 PHP 튜토리얼 리눅스에 PHP를 설치하는 가장 자세한 과정

리눅스에 PHP를 설치하는 가장 자세한 과정

Mar 08, 2018 am 10:04 AM
linux php 프로세스

이 글에서는 Linux에서 PHP를 설치하는 가장 자세한 과정을 주로 공유합니다. 이전에 nginx 설치 구성을 작성한 다음 php 설치 및 mysql 설치를 진행했지만 시간이 제한되어 있습니다. 한 글에 담기엔 길어서 따로 작성해보겠습니다. php를 설치한 후 mysql의 설정입니다.

1: php 설치 여부 확인

1) yum 설치 확인: yum list 설치됨 | grep php

2) rpm 설치 확인: rpm -qa | grep php

3) 컴파일 및 설치 방법은 다양합니다. PHP의 실행 프로그램을 찾거나 ps -ef grep php 및 기타 방법을 확인하는 등의 쿼리를 직접 수행합니다.

둘: php가 설치되어 있지 않은지 확인하고, php 설치 전 사전 설치 소프트웨어를 준비하시면 됩니다. 물론 번거롭지 않다면 직접 컴파일해서 설치하셔도 됩니다. 여기서는 자세히 다루지 않겠습니다.

1) zlib 및 zlib-devel zlib는 데이터 압축 기능 라이브러리를 제공하며 nginx의 프런트엔드 소프트웨어이기도 합니다. zlib는 php의 zlib 확장을 컴파일해야 하므로 컴파일 중에 zlib.h 헤더 파일이 사용됩니다. 헤더 파일은 zlib -devel에 있으므로 zlib-devel도 다운로드해야 합니다.

2) libxml2 및 libxml-devel libxml2는 xml에 대해 다양한 작업을 간단하게 수행할 수 있는 C 언어 xml 라이브러리로, xpath 쿼리를 지원하고, xslt 변환 및 기타 기능을 부분적으로 지원합니다.

3) libxslt 및 libxslt-devel libxslt-devel을 설치하지 않으면 xslt.config 파일을 찾을 수 없다는 메시지가 표시됩니다. xslt는 xml을 다른 형식으로 변환하기 위한 확장입니다.


3) openssl 및 openssl-devel 보안 소켓 계층 암호화 라이브러리

4) jpeg IJG의 jpeg 라이브러리, PHP의 gd 라이브러리가 필요합니다.

5) libpng는 png 파일을 읽고 쓰기 위해 C 언어로 작성된 상대적으로 낮은 수준의 크로스 플랫폼 라이브러리입니다. 이는 png 파일의 각 픽셀 줄을 쉽게 읽고 쓰는 데 도움이 됩니다. 이는 PHP의 gd 라이브러리에 필요합니다. .

6) freetype 및 freetype-devel은 여러 글꼴 형식에 액세스할 수 있는 통합 인터페이스를 제공하는 무료 오픈 소스 및 이식 가능한 글꼴 엔진입니다. 둘 다 gd 라이브러리의 종속 소프트웨어이므로 설치되지 않았거나 버전이 너무 낮음, php 설치시 gd 라이브러리를 설치하도록 설정하면 에러가 발생합니다. 또한, -devel을 설치하지 않으면 컴파일 시 ft2build.h 파일이 누락되어 에러가 발생합니다. 확장자는 아래와 같이 오류가 보고됩니다.


7) gd gd는 PHP에서 그래픽을 처리하는 확장 라이브러리입니다

8) 내 yum에 있는 버전이 너무 낮아서 제가 직접 컴파일해서 설치했습니다. 간단하게, 즉 wget 컬 주소를 다운로드한 후 tar의 압축을 풀고 새 /usr/local/curl 폴더를 만든 다음 압축이 풀린 컬 폴더에 들어가 구성합니다./configure --prefix=/usr/local/curl .마지막으로 make와 make install이 설치됩니다.

참고: xxx-devel은 헤더 파일, 정적 라이브러리, 소스 코드까지 포함하는 xxx 소프트웨어의 개발 패키지입니다.

세 가지: PHP 다운로드 및 설치

1) wget을 사용하여 PHP의 tar.gz 파일을 다운로드합니다: wget http://br2.php.net/get/php-7.2.2.tar.gz

2) tar.gz 파일의 압축을 푼다: tar zxvf php-7.2.2.tar.gz

3) 나중에 PHP를 설치할 새 폴더를 만듭니다: mkdir /usr/local/php 그런 다음 압축이 풀린 PHP 설치 패키지 폴더를 입력하고 구성 구성 :

./configure --prefix=/usr/local/php --with-curl=/usr/local/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-xmlrpc --with-xsl --with-zlib --enable-fpm --enable-bcmath --enable-libxml --enable- 인라인 최적화 --enable-mbregex --enable-mbstring --enable-opcache --enable-pcntl --enable-shmop --enable-soap --enable-sockets --enable-sysvsem --enable-xml -- 활성화-zip

참고:

--prefix=설치 디렉터리

--사용 패키지 이름[=패키지 디렉터리]

--활성화해야 하는 활성화 기능

4: PHP 관련 파일 구성

1) php.ini를 구성합니다. 이는 PHP 구성 파일입니다: cp /home/myload/php-7.2.2/php.ini-development /usr/local/php/lib/php.ini

2) 구성 php-fpm.conf, 이것은 php-fpm 구성 파일입니다: cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf

3) www.conf 구성, 사용자 파일 구성: cp etc/php-fpm.d/www.conf.default etc/php-fpm.d/www.conf

4) php-fpm 시작 파일을 init에 복사합니다. d 폴더 편리하게 PHP 시작: cp -R sbin/php-fpm /etc/init.d/php-fpm

Five: PHP를 시작하고 설치 성공 여부 확인

/etc/init.d/php 명령 실행 -fpm

시작되었는지 확인하세요: ps -ef | grep php php

Six에 의해 시작된 프로세스도 확인할 수 있습니다. 설치가 성공적으로 완료되면 php를 지원하도록 nginx를 구성하세요

1) php.ini 파일을 변경하세요. , vim /usr/local/php/lib /php.ini

cgi.fix_pathinfo=1 구성을 찾아 주석을 제거하고 cgi.fix_pathinfo=0으로 변경합니다. 이는 php 구성을 지원하는 nginx와 관련이 없지만 nginx 아래의 php에만 해당되는 보안 취약점입니다. 1. 사용자가 사진을 업로드하여 트로이 목마를 업로드한 후, URL을 통해 사진 주소에 접근하고, 주소 뒤에 /xxx.php를 추가하면 해당 사진을 PHP 파일로 실행할 수 있는 문제입니다. nginx와 apache에는 이 문제가 없습니다.

위 문제에 대해서는 Brother Niao의 블로그를 직접 참조할 수 있습니다. 이 블로그는 매우 자세하게 작성되어 있습니다: http://www.laruence.com/2010/05/20/1495 .html

2) 웹별 그룹 및 사용자 구성

www 사용자 그룹 추가: groupadd www

www 사용자 그룹 아래에 사용자 www 추가: useradd -g www www

3) php-fpm을 변경합니다. conf 구성

user=nobody 주석을 제거하고, none을 위에서 구성한 www 사용자로 변경합니다

group=nobody 주석을 제거하고, none을 위에서 구성한 www 사용자 그룹으로 변경합니다.

마지막으로 PHP에서 최종 include 값이 있는지 확인합니다. -fpm.conf는 올바른 www.conf 디렉토리 주소입니다. 잘못된 경우 올바른 디렉토리 주소로 바꾸십시오.

4) www.conf 구성을 변경합니다

user=nobody 주석을 제거하고 none을 위에서 구성한 www 사용자로 변경합니다.

주석 group=nobody를 제거하고 none을 위에서 구성한 www 사용자 그룹으로 변경합니다.

5) 변경 nginx.conf 파일 /etc/local/nginx/conf/nginx.conf

댓글 #user=nobody를 제거하고 user=www

로 변경합니다. 위치 제거 ~ .php${...}이 댓글은 코드 섹션을 작성하고 fastcgi_param의 /scripts를 $document_root


로 변경합니다. 마지막으로 위치 / {...}의 기본 인덱스 뒤에 index.php를 추가하여 index.php가 기본 홈페이지로 사용되도록 합니다


6) php-fpm과 nginx를 다시 시작하세요. php-fpm을 모두 종료한 다음 /etc/init.d/php-pfm을 다시 시작하려면 /usr/local/nginx/sbin/nginx -s stop nginx를 중지하세요. 그런 다음 /usr/local/nginx/sbin/php를 실행하여 다시 시작하세요.

7) phpinfo();라는 내용으로 html 디렉터리에 php 파일을 생성한 후 브라우저에서 파일 주소에 접근하여 올바른 php 관련 정보가 얻어졌는지 확인하면 올바르게 표시되면 구성에 성공한 것입니다. .

Seven: PHP를 지원하기 위해 Apache와 협력합니다. 이는 나중에 추가되어 계속됩니다...

관련 권장 사항:

Linux 설치 PHP 오류 기록

Linux 설치 php 모듈 --with-mysql - -with- mysqli는 mysql을 설치해야 하나요?

php와 memcache의 Linux 설치 과정 기록

위 내용은 리눅스에 PHP를 설치하는 가장 자세한 과정의 상세 내용입니다. 자세한 내용은 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 옷 제거제

Video Face Swap

Video Face Swap

완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

뜨거운 도구

메모장++7.3.1

메모장++7.3.1

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

SublimeText3 중국어 버전

SublimeText3 중국어 버전

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

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

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

PHP와 Python : 다른 패러다임이 설명되었습니다 PHP와 Python : 다른 패러다임이 설명되었습니다 Apr 18, 2025 am 12:26 AM

PHP는 주로 절차 적 프로그래밍이지만 객체 지향 프로그래밍 (OOP)도 지원합니다. Python은 OOP, 기능 및 절차 프로그래밍을 포함한 다양한 패러다임을 지원합니다. PHP는 웹 개발에 적합하며 Python은 데이터 분석 및 기계 학습과 같은 다양한 응용 프로그램에 적합합니다.

PHP vs. Python : 사용 사례 및 응용 프로그램 PHP vs. Python : 사용 사례 및 응용 프로그램 Apr 17, 2025 am 12:23 AM

PHP는 웹 개발 및 컨텐츠 관리 시스템에 적합하며 Python은 데이터 과학, 기계 학습 및 자동화 스크립트에 적합합니다. 1.PHP는 빠르고 확장 가능한 웹 사이트 및 응용 프로그램을 구축하는 데 잘 작동하며 WordPress와 같은 CMS에서 일반적으로 사용됩니다. 2. Python은 Numpy 및 Tensorflow와 같은 풍부한 라이브러리를 통해 데이터 과학 및 기계 학습 분야에서 뛰어난 공연을했습니다.

PHP를 사용하는 이유는 무엇입니까? 설명 된 장점과 혜택 PHP를 사용하는 이유는 무엇입니까? 설명 된 장점과 혜택 Apr 16, 2025 am 12:16 AM

PHP의 핵심 이점에는 학습 용이성, 강력한 웹 개발 지원, 풍부한 라이브러리 및 프레임 워크, 고성능 및 확장 성, 크로스 플랫폼 호환성 및 비용 효율성이 포함됩니다. 1) 배우고 사용하기 쉽고 초보자에게 적합합니다. 2) 웹 서버와 우수한 통합 및 여러 데이터베이스를 지원합니다. 3) Laravel과 같은 강력한 프레임 워크가 있습니다. 4) 최적화를 통해 고성능을 달성 할 수 있습니다. 5) 여러 운영 체제 지원; 6) 개발 비용을 줄이기위한 오픈 소스.

PHP와 Python 중에서 선택 : 가이드 PHP와 Python 중에서 선택 : 가이드 Apr 18, 2025 am 12:24 AM

PHP는 웹 개발 및 빠른 프로토 타이핑에 적합하며 Python은 데이터 과학 및 기계 학습에 적합합니다. 1.PHP는 간단한 구문과 함께 동적 웹 개발에 사용되며 빠른 개발에 적합합니다. 2. Python은 간결한 구문을 가지고 있으며 여러 분야에 적합하며 강력한 라이브러리 생태계가 있습니다.

PHP : 서버 측 스크립팅 언어 소개 PHP : 서버 측 스크립팅 언어 소개 Apr 16, 2025 am 12:18 AM

PHP는 동적 웹 개발 및 서버 측 응용 프로그램에 사용되는 서버 측 스크립팅 언어입니다. 1.PHP는 편집이 필요하지 않으며 빠른 발전에 적합한 해석 된 언어입니다. 2. PHP 코드는 HTML에 포함되어 웹 페이지를 쉽게 개발할 수 있습니다. 3. PHP는 서버 측 로직을 처리하고 HTML 출력을 생성하며 사용자 상호 작용 및 데이터 처리를 지원합니다. 4. PHP는 데이터베이스와 상호 작용하고 프로세스 양식 제출 및 서버 측 작업을 실행할 수 있습니다.

PHP 및 웹 : 장기적인 영향 탐색 PHP 및 웹 : 장기적인 영향 탐색 Apr 16, 2025 am 12:17 AM

PHP는 지난 수십 년 동안 네트워크를 형성했으며 웹 개발에서 계속 중요한 역할을 할 것입니다. 1) PHP는 1994 년에 시작되었으며 MySQL과의 원활한 통합으로 인해 개발자에게 최초의 선택이되었습니다. 2) 핵심 기능에는 동적 컨텐츠 생성 및 데이터베이스와의 통합이 포함되며 웹 사이트를 실시간으로 업데이트하고 맞춤형 방식으로 표시 할 수 있습니다. 3) PHP의 광범위한 응용 및 생태계는 장기적인 영향을 미쳤지 만 버전 업데이트 및 보안 문제에 직면 해 있습니다. 4) PHP7의 출시와 같은 최근 몇 년간의 성능 향상을 통해 현대 언어와 경쟁 할 수 있습니다. 5) 앞으로 PHP는 컨테이너화 및 마이크로 서비스와 같은 새로운 도전을 다루어야하지만 유연성과 활발한 커뮤니티로 인해 적응력이 있습니다.

PHP와 Python : 그들의 역사에 깊은 다이빙 PHP와 Python : 그들의 역사에 깊은 다이빙 Apr 18, 2025 am 12:25 AM

PHP는 1994 년에 시작되었으며 Rasmuslerdorf에 의해 개발되었습니다. 원래 웹 사이트 방문자를 추적하는 데 사용되었으며 점차 서버 측 스크립팅 언어로 진화했으며 웹 개발에 널리 사용되었습니다. Python은 1980 년대 후반 Guidovan Rossum에 의해 개발되었으며 1991 년에 처음 출시되었습니다. 코드 가독성과 단순성을 강조하며 과학 컴퓨팅, 데이터 분석 및 기타 분야에 적합합니다.

Apr 16, 2025 pm 07:39 PM

메모장은 Java 코드를 직접 실행할 수는 없지만 다른 도구를 사용하여 명령 줄 컴파일러 (Javac)를 사용하여 Bytecode 파일 (filename.class)을 생성하면 달성 할 수 있습니다. Java Interpreter (Java)를 사용하여 바이트 코드를 해석하고 코드를 실행하고 결과를 출력하십시오.

See all articles