>백엔드 개발 >PHP 튜토리얼 >LNMP 환경 설정 - PHP

LNMP 환경 설정 - PHP

WBOY
WBOY원래의
2016-07-30 13:31:39915검색

1. 소스코드 설치

1. 컴파일 및 설치

<code><span>.</span>/configure  <span>--</span>prefix<span>=</span>/usr/<span>local</span>/php<span>\</span><span>--</span><span>with</span><span>-config</span><span>-file</span><span>-path</span><span>=</span>/usr/<span>local</span>/php/etc <span>--</span><span>with</span><span>-bz2</span><span>--</span><span>with</span><span>-curl</span><span>\</span><span>--</span>enable<span>-ftp</span><span>--</span>enable<span>-sockets</span><span>--</span>disable<span>-ipv6</span><span>--</span><span>with</span><span>-gd</span><span>\</span><span>--</span><span>with</span><span>-jpeg</span><span>-dir</span><span>=</span>/usr/<span>local</span><span>--</span><span>with</span><span>-png</span><span>-dir</span><span>=</span>/usr/<span>local</span><span>\</span><span>--</span><span>with</span><span>-freetype</span><span>-dir</span><span>=</span>/usr/<span>local</span><span>--</span>enable<span>-gd</span><span>-native</span><span>-ttf</span><span>\</span><span>--</span><span>with</span><span>-iconv</span><span>-dir</span><span>=</span>/usr/<span>local</span><span>--</span>enable<span>-mbstring</span><span>--</span>enable<span>-calendar</span><span>\</span><span>--</span><span>with</span><span>-gettext</span><span>--</span><span>with</span><span>-libxml</span><span>-dir</span><span>=</span>/usr/<span>local</span><span>--</span><span>with</span><span>-zlib</span><span>\</span><span>--</span><span>with</span><span>-pdo</span><span>-mysql</span><span>=</span>mysqlnd <span>--</span><span>with</span><span>-mysqli</span><span>=</span>mysqlnd <span>--</span><span>with</span><span>-mysql</span><span>=</span>mysqlnd <span>\</span><span>--</span>enable<span>-dom</span><span>--</span>enable<span>-xml</span><span>--</span>enable<span>-fpm</span><span>--</span><span>with</span><span>-libdir</span><span>=</span>lib64 <span>--</span>enable<span>-bcmath</span></code>
<code><span>make</span> && <span>make</span> install</code>
2. 오류 처리

-1

<code>checking <span>for</span> ZLIB support... <span>no</span>checking <span>if</span> the location <span>of</span> ZLIB install directory <span>is</span> defined... <span>yes</span><span>configure</span>: <span>error</span>: Cannot find libz</code>
[ERROR]-2

<code>checking whether <span>to</span> enable JIS<span>-mapped</span> Japanese font support <span>in</span> GD<span>...</span> no 
<span>If</span> configure fails try <span>--</span><span>with</span><span>-vpx</span><span>-dir</span><span>=<</span>DIR<span>></span>configure: error: jpeglib<span>.</span>h <span>not</span> found<span>.</span></code>
[해결책]

<code>wget http://www<span>.boutell</span><span>.com</span>/gd/http/gd-<span>2.0</span><span>.33</span><span>.tar</span><span>.gz</span>
tar zxvf gd-<span>2.0</span><span>.33</span><span>.tar</span><span>.gz</span>
cd gd-<span>2.0</span><span>.33</span>
./configure --prefix=/usr/local/gd2
make
make instal</code>
이 라이브러리를 사용하여 다양한 작업을 수행할 수 있습니다. JPG 이미지에서 ; 다운로드: http://freeware.sgi.com/source/libjpeg/libjpeg-6b.tar.gz,

README 설치 라이브러리를 참조하세요. 일반적인 단계는 다음과 같습니다.

<code>./configure
Make
Make <span>install</span></code>
[ERROR]-3

<code><span>If</span> configure fails try <span>--</span><span>with</span><span>-xpm</span><span>-dir</span><span>=<</span>DIR<span>></span>configure: error: freetype<span>-config</span><span>not</span> found<span>.</span></code>
[ERROR]-4

<code>checking whether <span>to</span> enable JIS<span>-mapped</span> Japanese font support <span>in</span> GD<span>...</span> no 
configure: error: vpx_codec<span>.</span>h <span>not</span> found<span>.</span></code>
[Bzip2 설치]

<code>tar -xzvf bzip2-<span>1.0</span><span>.6</span><span>.tar</span><span>.gz</span></code>
압축 해제된 디렉터리 입력:

cd bzip2-1.0.6 컴파일을 준비하고 libbz2.so 동적 링크 라이브러리를 생성합니다(이 단계는 매우 중요합니다. Python을 설치할 때 이 단계가 없으면 Python은 bz2 모듈을 설치할 수 없습니다):

<code>make <span>-f</span> Makefile<span>-libbz2_so</span></code>
컴파일 및 설치:

make && make install

2.RPM 설치

<code>[root@kallen ~]<span># rpm -ivh php-common-5.4.40-1.el6.remi.x86_64.rpm </span>
warning: php-common-<span>5.4</span><span>.40</span>-<span>1.</span>el6.remi.x86_64.rpm: Header V3 DSA/SHA1 Signature, key ID <span>00</span>f97f56: NOKEY
Preparing...                <span>########################################### [100%]</span><span>file</span> /etc/php.ini <span>from</span> install <span>of</span> php-common-<span>5.4</span><span>.40</span>-<span>1.</span>el6.remi.x86_64 conflicts <span>with</span><span>file</span><span>from</span> package php-common-<span>5.3</span><span>.3</span>-<span>26.</span>el6.x86_64
<span>file</span> /usr/lib64/php/modules/curl.so <span>from</span> install <span>of</span> php-common-<span>5.4</span><span>.40</span>-<span>1.</span>el6.remi.x86_64 conflicts <span>with</span><span>file</span><span>from</span> package php-common-<span>5.3</span><span>.3</span>-<span>26.</span>el6.x86_64
<span>file</span> /usr/lib64/php/modules/fileinfo.so <span>from</span> install <span>of</span> php-common-<span>5.4</span><span>.40</span>-<span>1.</span>el6.remi.x86_64 conflicts <span>with</span><span>file</span><span>from</span> package php-common-<span>5.3</span><span>.3</span>-<span>26.</span>el6.x86_64
<span>file</span> /usr/lib64/php/modules/json.so <span>from</span> install <span>of</span> php-common-<span>5.4</span><span>.40</span>-<span>1.</span>el6.remi.x86_64 conflicts <span>with</span><span>file</span><span>from</span> package php-common-<span>5.3</span><span>.3</span>-<span>26.</span>el6.x86_64
<span>file</span> /usr/lib64/php/modules/phar.so <span>from</span> install <span>of</span> php-common-<span>5.4</span><span>.40</span>-<span>1.</span>el6.remi.x86_64 conflicts <span>with</span><span>file</span><span>from</span> package php-common-<span>5.3</span><span>.3</span>-<span>26.</span>el6.x86_64
<span>file</span> /usr/lib64/php/modules/zip.so <span>from</span> install <span>of</span> php-common-<span>5.4</span><span>.40</span>-<span>1.</span>el6.remi.x86_64 conflicts <span>with</span><span>file</span><span>from</span> package php-common-<span>5.3</span><span>.3</span>-<span>26.</span>el6.x86_64


<span>error</span>: Failed dependencies:
 libmysqlclient.so<span>.18</span>()(<span>64</span>bit) <span>is</span> needed <span>by</span> php-mysql-<span>5.4</span><span>.40</span>-<span>1.</span>el6.remi.x86_64
 libmysqlclient.so<span>.18</span>(libmysqlclient_16)(<span>64</span>bit) <span>is</span> needed <span>by</span> php-mysql-<span>5.4</span><span>.40</span>-<span>1.</span>el6.remi.x86_64
 libmysqlclient.so<span>.18</span>(libmysqlclient_18)(<span>64</span>bit) <span>is</span> needed <span>by</span> php-mysql-<span>5.4</span><span>.40</span>-<span>1.</span>el6.remi.x86_64</code>
3.YUM 설치

1.PHP-5.4

php5.4 2012년 5월 출시 3월 8일 php5.4.0부터 PHP는 다음과 같은 몇 가지 새로운 기능을 추가했습니다:

    특성 지원
  • 간단한 웹 서버 내장
  • 제공 배열 단축 구문
  • 함수 반환 값에서 배열 값에 직접 접근
  • 마지막으로 매직 메서드 및 안전 모드 제거
사용을 권장합니다. Webtatic EL6의 YUM 소스 php5.4를 설치하려면 먼저 Webtatic EL6 YUM 소스를 설치합니다. YUM 소스의 설치 구성은 "RHEL6에서 YUM 소스 구성" 기사를 참조하세요.

설치에 실패하면 먼저 이전 PHP를 제거한 후
<code>rpm -Uvh http://repo<span>.webtatic</span><span>.com</span>/yum/el6/latest<span>.rpm</span></code>
<code>yum <span>-y</span> install php54w php54w<span>-bcmath</span> php54w<span>-cli</span><span>\</span>
php54w<span>-common</span> php54w<span>-devel</span> php54w<span>-fpm</span> php54w<span>-gd</span><span>\</span>
php54w<span>-imap</span> php54w<span>-ldap</span> php54w<span>-mbstring</span> php54w<span>-mcrypt</span><span>\</span>
php54w<span>-mysql</span> php54w<span>-odbc</span> php54w<span>-pdo</span> php54w<span>-pear</span><span>\</span>
php54w<span>-pecl</span><span>-igbinary</span> php54w<span>-xml</span> php54w<span>-xmlrpc</span><span>\</span>
php54w<span>-opcache</span> php54w<span>-intl</span> php54w<span>-pecl</span><span>-memcache</span></code>

에 포함된 PHP 확장 목록을 사용하는 것이 좋습니다.

<code> yum <span>remove</span> php php-*</code>

Package Provides
php54w mod_php
php54w-bcmath
php54w-cli php-cgi, php-pcntl, php-readline
php54w-common php-api, php-bz2, php-calendar, php-ctype, php-curl, php-date, php-exif, php-fileinfo, php-ftp, php-gettext, php-gmp, php-hash, php-iconv, php-json, php-libxml, php-openssl, php-pcre, php-pecl-Fileinfo, php-pecl-phar, php-pecl-zip, php-reflection, php-session, php-shmop, php-simplexml, php-sockets, php-spl, php-tokenizer, php-zend-abi, php-zip, php-zlib
php54w-dba
php54w-devel
php54w-embedded php-embedded-devel
php54w-enchant
php54w-fpm
php54w-gd
php54w-imap
php54w-interbase php_database, php-firebird
php54w-intl
php54w-ldap
php54w-mbstring
php54w-mcrypt
php54w-mssql
php54w-mysql php-mysqli, php_database
php54w-odbc php-pdo_odbc, php_database
php54w-pdo
php54w-pgsql php-pdo_pgsql, php_database
php54w-process php-posix, php-sysvmsg, php-sysvsem, php-sysvshm
php54w-pspell
php54w-recode
php54w-snmp
php54w-soap
php54w-tidy
php54w-xml php-dom, php-domxml, php-wddx, php-xsl
php54w-xmlrpc
php54w-zts
해결책:
<code>[root@kallen ~]# yum install php54w-gd.x86_64
Loaded plugins: product-id, security, subscription-manager
This system <span>is</span><span>not</span> registered <span>to</span> Red Hat Subscription Management. You can <span>use</span> subscription-manager <span>to</span><span>register</span>.
Setting up Install <span>Process</span>
Resolving Dependencies
<span>--> Running transaction check</span><span>---> Package php54w-gd.x86_64 0:5.4.41-1.w6 will be installed</span><span>--> Processing Dependency: libt1.so.5()(64bit)for package: php54w-gd-5.4.41-1.w6.x86_64</span><span>--> Finished Dependency Resolution</span>
Error: <span>Package</span>: php54w-gd-<span>5.4</span><span>.41</span>-<span>1.</span>w6.x86_64 (webtatic)
           Requires:libt1.so<span>.5</span>()(<span>64</span><span>bit</span>)
 You could try using <span>--skip-broken to work around the problem</span>
 You could try running: rpm -Va <span>--nofiles --nodigest</span></code>

2.PHP-5.5

<code>[root<span>@kallen</span> ~]<span># rpm -ivh t1lib-5.1.2-6.el6_2.1.x86_64.rpm </span><span>warning</span>: t1lib-<span>5.1</span><span>.2</span>-<span>6.</span>el6_2<span>.1</span>.x86_64.<span>rpm</span>: Header V3 RSA/SHA1 Signature, key ID <span>c105b9de</span>: NOKEY
Preparing...                <span>######</span><span>######</span><span>######</span><span>######</span><span>######</span><span>######</span><span>######</span><span># [100%]</span><span>1</span>:t1lib                   <span>######</span><span>######</span><span>######</span><span>######</span><span>######</span><span>######</span><span>######</span><span># [100%]</span></code>

4. 버전 테스트
<code>[root<span>@kallen</span> ~]<span># yum remove php  php-bcmath php-cli php-common  php-devel php-fpm    php-gd php-imap  php-ldap php-mbstring php-mcrypt php-mysql   php-odbc   php-pdo   php-pear  php-pecl-igbinary  php-xml php-xmlrpc</span></code>
<code>[root<span>@kallen</span> ~]<span># yum install php55w  php55w-bcmath php55w-cli php55w-common  php55w-devel php55w-fpm    php55w-gd php55w-imap  php55w-ldap php55w-mbstring php55w-mcrypt php55w-mysql   php55w-odbc   php55w-pdo   php55w-pear  php55w-pecl-igbinary  php55w-xml php55w-xmlrpc php55w-opcache php55w-intl php55w-pecl-memcache</span></code>
1. 버전 정보

<code>kallen@kallen:~$ php <span>-v</span>
PHP <span>5.5</span><span>.9</span><span>-</span><span>1</span>ubuntu4<span>.11</span> (cli) (built: Jul  <span>2</span><span>2015</span><span>15</span>:<span>23</span>:<span>08</span>) 
Copyright (c) <span>1997</span><span>-</span><span>2014</span> The PHP <span>Group</span>
Zend Engine v2<span>.5</span><span>.0</span>, Copyright (c) <span>1998</span><span>-</span><span>2014</span> Zend Technologies
    <span>with</span> Zend OPcache v7<span>.0</span><span>.3</span>, Copyright (c) <span>1999</span><span>-</span><span>2014</span>, <span>by</span> Zend Technologies </code>
<code><span><span><?php</span>
    phpinfo();
<span>?></span></span></code>


2. PHP 설치 모듈 보기

3. MySQL 연결 테스트

<code>kallen<span>@kallen</span><span>:~</span><span>$ </span>php -m
[<span>PHP</span><span>Modules</span>]
bcmath
bz2
calendar
<span>Core</span>
ctype
date
dba
dom
ereg
exif
fileinfo
filter
ftp
gd
gettext
hash
iconv
json
ldap
libxml
mbstring
mhash
mysql
mysqli
openssl
pcntl
pcre
<span>PDO</span>
pdo_mysql
pdo_pgsql
pgsql
<span>Phar</span>
posix
readline
<span>Reflection</span>
session
shmop
<span>SimpleXML</span>
soap
sockets
<span>SPL</span>
standard
sysvmsg
sysvsem
sysvshm
tokenizer
wddx
xml
xmlreader
xmlwriter
<span>Zend</span><span>OPcache</span>
zip
zlib

[<span>Zend</span><span>Modules</span>]
<span>Zend</span><span>OPcache</span></code>

아직 완성 전이에요!
<code><span><span><?php</span><span>$link</span>=mysql_connect(<span>'localhost'</span>,<span>'root'</span>,<span>'*'</span>);
    <span>if</span>(!<span>$link</span>)
        <span>echo</span><span>"Connection Error!"</span>;
    <span>else</span><span>echo</span><span>"Connected Successfully!"</span>
    mysql_close();
<span>?></span></span></code>

저작권 고지: 이 기사는 블로거의 원본 기사이므로 블로거의 허가 없이 복제할 수 없습니다.|Copyright ©2011-2015, Kallen Ding, All Rights Reserved.

이상은 관련 내용을 포함하여 LNMP 환경 구축-PHP 장을 소개하고 있으며, PHP 튜토리얼에 관심이 있는 친구들에게 도움이 되기를 바랍니다.

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