linux - 우분투에서 공식 php7을 컴파일하고 설치하는 방법은 무엇입니까?

WBOY
풀어 주다: 2016-08-04 09:19:20
원래의
778명이 탐색했습니다.

결국 PHP를 배울 때 하위 계층을 배워야 하는데 오랫동안 C에 대해 모두 잊어버렸습니다. 공식 PHP7을 컴파일하는 방법을 알려주세요. http://php.net/downloads .php#...

답글 내용:

결국 PHP를 배울 때 하위 계층을 배워야 하는데 오랫동안 C에 대해 모두 잊어버렸습니다. 공식 PHP7을 컴파일하는 방법을 알려주세요. http://php.net/downloads .php#...

심심해서 그냥 정리해서 그 과정을 적어보겠습니다.

<code>wget http://cn2.php.net/get/php-7.0.9.tar.bz2/from/this/mirror

tar xvf mirror

cd php-7.0.9/

sudo apt-get update

sudo apt-get install libkrb5-dev \
libc-client2007e                 \
libc-client2007e-dev             \
libcurl4-openssl-dev             \
libbz2-dev                       \
libjpeg-dev                      \
libmcrypt-dev                    \
libxslt1-dev                     \
libxslt1.1                       \
libpq-dev                        \
libpng12-dev                     \
libfreetype6-dev                 \
build-essential                  \
git                              \
make</code>
로그인 후 복사

아래 ./configure에 누락된 오류가 있는 경우 위 명령에 lib-dev(el)

을 추가하세요.
<code>./configure \
--prefix=/opt/php-7.0.9                      \
--with-config-file-path=/opt/php-7.0.9/etc   \
--with-zlib-dir                              \
--with-freetype-dir                          \
--enable-mbstring                            \
--with-libxml-dir=/usr                       \
--enable-soap                                \
--enable-calendar                            \
--with-curl                                  \
--with-mcrypt                                \
--with-zlib                                  \
--with-gd                                    \
--disable-rpath                              \
--enable-inline-optimization                 \
--with-bz2                                   \
--with-zlib                                  \
--enable-sockets                             \
--enable-sysvsem                             \
--enable-sysvshm                             \
--enable-pcntl                               \
--enable-mbregex                             \
--enable-exif                                \
--enable-bcmath                              \
--with-mhash                                 \
--enable-zip                                 \
--with-pcre-regex                            \
--with-pdo-mysql                             \
--with-mysqli                                \
--with-mysql-sock=/var/run/mysqld/mysqld.sock \
--with-jpeg-dir=/usr                         \
--with-png-dir=/usr                          \
--enable-gd-native-ttf                       \
--with-openssl                               \
--with-fpm-user=www-data                     \
--with-fpm-group=www-data                    \
--enable-ftp                                 \
--with-imap                                  \
--with-imap-ssl                              \
--with-kerberos                              \
--with-gettext                               \
--with-xmlrpc                                \
--with-xsl                                   \
--enable-opcache                             \
--enable-fpm</code>
로그인 후 복사

그런 다음 컴파일을 시작합니다. 참고로 컴파일 머신의 메모리는 클 것입니다. 가상머신의 초기 1G가 부족해서 4G로 조정했습니다.

<code>make  #或者根据你当前正在编译机器cpu核数调参数加速编译,比如我虚拟机是2核 make -j2 就可以同时跑2个job加速编译,编译了差不多15分钟</code>
로그인 후 복사

그런 다음 설치

<code>sudo make install</code>
로그인 후 복사

위의 접두어로 지정된 디렉토리(/opt/php-7.0.9/)에 php7을 설치합니다.

cli를 실행하여 버전 번호와 정보를 확인하세요.

<code>/opt/php-7.0.9/bin/php -v
/opt/php-7.0.9/bin/php -i</code>
로그인 후 복사

php-fpm 서비스를 실행하기 전에 관련 구성 파일을 제자리에 배치해야 합니다.

<code>sudo mv /opt/php-7.0.9/etc/php-fpm.conf.default /opt/php-7.0.9/etc/php-fpm.conf
sudo mv /opt/php-7.0.9/etc/php-fpm.d/www.conf.default /opt/php-7.0.9/etc/php-fpm.d/www.conf
sudo cp ./php.ini-production /opt/php-7.0.9/etc/php.ini</code>
로그인 후 복사

fpm이 수신 대기하는 포트 수정:

<code>sudo vi /opt/php-7.0.9/etc/php-fpm.d/www.conf
>;listen = 127.0.0.1:9000
>listen = /var/run/php7.0.9-fpm.sock</code>
로그인 후 복사

그런 다음 sudo /opt/php-7.0.9/sbin/php-fpm 서비스를 시작하세요

마지막으로 nginx 구성에서

을 사용하세요.
<code>fastcgi_pass   unix:/var/run/php7.0.9-fpm.sock;</code>
로그인 후 복사

그렇습니다.

16.04 LTS를 사용하는 경우 자체 PHP7 소프트웨어 패키지를 가져오세요

온라인에서 Linux编译PHP 검색하면 많은 결과를 얻을 수 있습니다. ./configure --help를 사용하여 매개변수 목록을 얻을 수 있습니다.
PHP 베타 버전이 나왔을 때 여러 번 컴파일했습니다. 컬, gd, iconv, json, mbstring, mysqlnd, pdo 등 일부 확장 프로그램을 설치해야 합니다. 그렇지 않으면 많은 프로그램에 문제가 발생합니다.

직접 컴파일하는 것이 낫습니다. 소프트웨어 패키지가 너무 오래되어서 버그가 보고되었을 때 오랫동안 복구되지 않았습니다

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿