LNMP 설치 안내서를 컴파일 환경을 설정합니다 (PHP-5.3.27.tar.gz)

테스트 환경 : CentOS는 릴리스 6.5 (최종)

소프트웨어 설치 : nginx를-5.5.32의 MySQL-PHP-5.3.27.tar.gz의 Linux2.6-x86_64.tar.gz 

1, MySQL의 설치 참조 : https://www.cnblogs.com/su-root/p/10247514.html

2, nginx를 설치 참조 : https://www.cnblogs.com/su-root/p/10177045.html      https://www.cnblogs.com/su-root/p/10230994.html

3, PHH는 다음을 설치 :

A, PHP 설치 준비

①yum 설치 패키지는 PHP를 따라

[루트 @ bqh-118의 PHP] # 얌 -y ZLIB libxml libjpeg FreeType에서의 libpng GD 컬 libiconv ZLIB - (STABLE)의 libxml2를-libjpeg (STABLE) - (STABLE) FreeType에서의 - (STABLE)의 libpng-(STABLE)의 GD-컬 (STABLE) - (STABLE)를 설치

기계가 설치되었는지 여부를 감지 ②

[루트 @의 bqh PHP-118] # 회전 수 -qa ZLIB libxml libjpeg FreeType에서의 libpng GD 컬 libiconv ZLIB - (STABLE)의 libxml2를-libjpeg (STABLE) - (STABLE) FreeType에서의 - (STABLE)의 libpng-(STABLE)의 GD-컬 (STABLE) - (STABLE)

③安装libiconv-1.14.tar.gz ----- ( https://excellmedia.dl.sourceforge.net/project/korwah/source/libiconv/libiconv-1.14.tar.gz )

 
 
[루트 @는 bqh-118 PHP] #에 타르 zxf libiconv-1.14.tar.gz 용 
의 CD-libiconv가 1.14
libiconv / ./configure를 --prefix = / usr / 지방
만들
화장 설치

④ 빠른 설치 libmcrypt 확장 (설치 EPEL 소스 방법) 

[루트 @ bqh-118 yum.repos.d] #wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-6.repo 
[루트 @의 bqh- 118 yum.repos.d] #yum makecache 
[루트 @ bqh yum.repos.d-118] # 얌 libmcrypt-(STABLE) -y 설치

암호화 알고리즘 ⑤ 빠른 설치 mhash 광범위한 라이브러리

  Mhash는 암호와 같은 (원본을 저장하지 않고, mhash는, 메시지 다이제스트, 작은 인증 코드뿐만 아니라 중요한 정보를 장면의 값을 테스트하는 데 사용할 수있는 기본에 오픈 PHP를 암호화 이산 수학 원리 확장 라이브러리를 바꾸지을 기반으로 ) 등등.

  Mhash PHP가 지원되는 알고리즘을 볼 수 MHASH_hashname ()에 의해 수 등 MD5, SHA1, GOST, 같은 해시 알고리즘의 다양한 제공합니다.

문제에 대한주의 :이 확장 최신 해시 알고리즘 제공하지 않습니다 확장 원리의 결과에 돌이킬 수없는 작업을.

[루트 @의 bqh PHP-118] # 얌 mhash mhash-(STABLE) -y 설치

⑥ 빠른 Mcrypt 라이브러리 암호화 확장 기능을 설치

  PHP 프로그래머는 고성능 코드를 보장하기 위해뿐만 아니라, 매우 중요한 포인트가 보안 안전 절차이다가, 프로그램을 작성. PHP는 몇 가지 암호화 기능에 추가되어,보다 완벽한 기능을 갖춘 PHP를 암호화 확장 라이브러리 Mcrypt 라이브러리 및 mhash이있다. Mcrypt 라이브러리 확장, 즉, 암호화 및 암호 해독 기능을 달성 할 수있는 일반 텍스트 암호를 모두 플러스

비밀, 암호문을 복원 할 수 있습니다. Mcrypt 라이브러리의 PHP는 기본적으로 설정되지 않은 암호화 지원 바 도서관의 중요한 확장이있다. 원시 알고리즘 및 암호화 모드가 지원되는 Mcrypt 라이브러리 라이브러리는 암호화 알고리즘 및 암호화 모드 8 20 종류의 지원, 특정 기능 crypt_list_algorithms () 및 mcrypt_list_modes 표시 할 수있다 ().

[루트 @의 bqh PHP-118] # 얌 Mcrypt 라이브러리의 -y 설치

⑦ 장착 libxslt를-(STABLE)

[루트 @ bqh-118의 PHP] # 얌 -y libxslt를-(STABLE)를 설치

 PHP는 종속성을 확인 위에 장착.

둘째, PHP 서비스를 설치하기

 ① PHP-5.3.27.tar.gz 및 압축 해제를 다운로드합니다. 

다운로드 PHP : https://www.php.net/distributions/php-5.3.27.tar.gz

[루트 @ bqh PHP-118] # 타르 XF의 PHP-5.3.27.tar.gz

컴파일하고 PHP를 설치 ②

[루트 @가 bqh 118 PHP] # CD를 PHP 5.3.27 - 
[루트 @가 bqh-118-PHP 5.3.27] #. / 구성 \ 
--prefix = / 애플리케이션 / PHP-5.3.27 \ 
--with-의 MySQL = / 애플리케이션 / MySQL을 \ 
--with-의 iconv-DIR = / usr / 지방 / libiconv \ 
--with-FreeType에서-DIR \ 
--with-JPEG-DIR \ 
--with-PNG-DIR \ 
--with-ZLIB \ 
--with-libxml-DIR = / USR \ 
--enable-XML \ 
--disable-RPATH \ 
--enable 안전 모드 \ 
\ --enable-bc 수학 
\ --enable-은 shmop 
--enable-SYSVSEM \ 
--enable-인라인 최적화 \ 
--with-curlwrappers \ 
--enable-mbregex \ 
--enable-mbstring \ 
--enable-FPM을 \ 
--with-Mcrypt 라이브러리 \ 
--with-GD \ 
--enable-gd- 네이티브 TTF의 \
--with-openssl을 \ 
--with-mhash \ 
\ --enable-pcntl 
--enable-소켓 \ 
--with-XMLRPC \ 
--enable-ZIP \ 
--enable-비누 \ 
--enable-짧은 태그 \ 
\ --enable-젠드 - 멀티 
--enable 정전기 \ 
--with-XSL \ 
--with-FPM 사용자의 nginx = \ 
--with-FPM 그룹의 nginx = \ 
--enable-FTP

참고 : 만들기 전에이 두 가지 명령을 추가 :

[루트 @의 bqh-118-PHP 5.3.27] # LN -s /application/mysql/lib/libmysqlclient.so.18은 / usr / lib64에 / 
[@ 루트의 bqh-118-PHP 5.3.27] #에 터치 EXT /의 Phar /phar.phar 
[루트 @의 bqh-118 PHP-5.3.27] # 만들 && #를 설치하기安装PHP生成文件到系统
...... 
......... 
헤더 파일을 설치 / 응용 프로그램 / PHP-5.3.27 / 포함 / PHP / 
도우미 프로그램을 설치 : /application/php-5.3.27/bin/ 
  프로그램 :의 phpize의 
  프로그램 : PHP를 설정 
설치 매뉴얼 페이지 : /application/php-5.3.27/man/man1/ 
  페이지 : phpize.1의 
  페이지 : PHP-config.1 
설치 PEAR 환경 : /application/php-5.3.27/lib/php/  
[PEAR] Archive_Tar - 설치 : 1.3.11
[PEAR] Console_Getopt은 - 설치 : 1.3.1
경고 : 배 / PEAR 패키지 "배 / Structures_Graph"(권장 버전 1.0.4)이 필요 
배 / PEAR 패키지 "배 / XML_Util"(권장 버전 1.2.1)이 필요합니다 경고 
[PEAR] PEAR를 - 설치 : 1.9.4은 
PEAR을 쓴 /application/php-5.3.27/etc/pear.conf :에서 시스템 설정 파일 
/application/php-5.3.27/lib/php 당신의 php.ini의 include_path에 : 당신은 추가 할 수 있습니다 
[PEAR] Structures_Graph- 설치 : 1.0.4은 
[PEAR] XML_Util이 - 설치 : 1.2.1 
-c 내선을 설치 /home/bqh/tools/php-5.3.27/build/shtool /의 Phar / phar.phar /application/php-5.3.27/bin 
에선 -s -f /application/php-5.3.27/bin/phar.phar /application/php-5.3.27/bin/phar
PDO 헤더를 설치 : /application/php-5.3.27/include/php/ext/pdo/ 
[루트 @의 bqh-118 PHP-5.3.27] # 에코 $를? 
0

③ 엔진 구성 PHP 설정 파일 php.ini 파일

연결 안전하고 편리한 액세스를 설정합니다 :

[루트 @의 bqh-118-PHP 5.3.27] # LN /application/php-5.3.27/ -s / 애플리케이션 / PHP 
[루트 @의 bqh-118-PHP 5.3.27] #에 LS -l / 애플리케이션 / PHP의 
lrwxrwxrwx 1 개 루트 루트 24 6月23 7시 7분 / 응용 프로그램 / PHP -> /application/php-5.3.27/

PHP 설정 PHP는 기본 디렉토리에 파일을 복사하고 php.ini 파일로 이름을 변경

[루트-1 @ 18 BQH PHP - 5.3.27] # LL ./php.ini-* 
-rw-R & LT -. r--로 11 2,013 ./php.ini-development # 개발 일자 제 1 101 101 69606 
-rw- (R) -. r-- 같이 1 101 101 11 69,627 2,013 ./php.ini-production # 7 일자 생산 
#의 [루트 PHP-1 @ 18 BQH 5.3.27] CP-생산 php.ini 파일 / 파일 애플리케이션 / PHP / LIB / PHP를 .INI

④ PHP 구성 서비스 (FastCGI를 모드) 설정 파일의 PHP-fpm.conf

[루트 @의 bqh-118-PHP 5.3.27] #에 LL / 애플리케이션 / PHP은 / etc / 
总用量28 
-rw-R - r--로 1 루트 루트 1,242 6月23 6시 32분 pear.conf 
-rw-R --r-- 1 루트 루트 21,690 6月23 6시 32분 PHP-fpm.conf.default 
[루트 @의 bqh-118-PHP 5.3.27] #에 CP를 /application/php/etc/php-fpm.conf.default /application/php/etc/php-fpm.conf 
[루트 @의 bqh-118-PHP 5.3.27] #에 LL / 애플리케이션 / PHP은 / etc / 
总用量52 
-rw-R - r--로 1 개 루트 루트 1,242 6 23 6시 32분 pear.conf月
r-- 같이 1 개 루트 루트 21,690 6月23 7시 31분 - -rw-R PHP-fpm.conf 
- -rw-R r-- 같이 1 개 루트 루트月6 21,690 23 06 32-PHP fpm.conf.default

공정 PHP를 시작 ⑤

[루트 @의 bqh-118 PHP - 5.3.27] # / 애플리케이션 / PHP / sbin에 / PHP-FPM  
[루트 @의 bqh-118 PHP - 5.3.27] # 추신 -ef | 그렙 PHP-FPM | 그렙 -v 그렙 
루트 128,897 1 0 7시 55분? 0시 0분 0초 PHP-FPM : 마스터 처리 (/application/php-5.3.27/etc/php-fpm.conf) 
의 nginx 128,898 128,897 7시 55분 0? 0시 0분 0초 PHP-FPM : 풀 www가             
nginx를 128,899 128,897 0 7시 55분? 0시 0분 0초 PHP-FPM : 풀 www가             
nginx를 128,900 128,897 0 7시 55분? 0시 0분 0초 PHP-FPM : 풀 www가             
nginx를 128,901 128,897 0 7시 55분? 0시 0분 0초 PHP-FPM : 풀 www가             
nginx를 128,902 128,897 0 7시 55분? 0시 0분 0초 PHP-FPM : 풀 www가             
nginx를 128,903 128,897 0 7시 55분? 0시 0분 0초 PHP-FPM : 풀 WWW            
nginx를 128,904 128,897 0 7시 55분? 0시 0분 0초 PHP-FPM : 풀 www가             
nginx를 128,905 128,897 0 7시 55분? 0시 0분 0초 PHP-FPM : 풀 www가             
nginx를 128,906 128,897 0 7시 55분? 0시 0분 0초 PHP-FPM : 풀 www가             
nginx를 128,907 128,897 0 7시 55분? 0시 0분 0초 PHP-FPM : 풀 www가             
nginx를 128,908 128,897 0 7시 55분? 0시 0분 0초 PHP-FPM : 풀 www가             
nginx를 128,909 128,897 0 7시 55분? 0시 0분 0초 PHP-FPM : 풀 www가             
nginx를 128,910 128,897 0 7시 55분? 0시 0분 0초 PHP-FPM : 풀 www가             
nginx를 128,911 128,897 0 7시 55분? 0시 0분 0초 PHP-FPM : 풀 www가             
nginx를 128,912 128,897 0 7시 55분? 0시 0분 0초 PHP-FPM : 풀 WWW            
nginx를 128,913 128,897 0 7시 55분? 0시 0분 0초 PHP-FPM : 풀 WWW             
-lntup [루트 @의 bqh-118-PHP 5.3.27]의 SS # | 그렙 PHP-FPM 
TCP 128 0 * 127.0.0.1:9000 LISTEN : * 사용자 (( "PHP -fpm "128897,7) ("PHP-FPM 
」128898,0) ( "PHP-FPM」128899,0) ("PHP-FPM」128900,0) ( "PHP-FPM "128901,0) ("PHP-FPM」128902,0) ( "PHP-FPM」128903,0) ("PHP-FPM」128904,0) ( "PHP-FPM」 128905,0) ( "PHP-FPM」128906,0) ("PHP-FPM」128907,0) ( "PHP-FPM」128908,0) ("PHP-FPM ", 128,909, 0), ( "PHP-FPM」128910,0) ("PHP-FPM」128911,0) ( "PHP-FPM」128912,0) ("PHP-FPM」128913,0) )

⑥ 시험 PHP

사이트 디렉토리의 nginx에서 PHP 코드 테스트를 쓰기 Test_phpinfo.php

[루트 @의 HTML bqh-118] # 정력 test_phpinfo.php 

<? PHP의 
    phpinfo를 (); 
?>

 구성 nginx.conf

[루트 @의 bqh의 conf-118] #에 정력 nginx.conf는 

1 worker_processes; 
이벤트 { 
    worker_connections 1024; 
} 
HTTP { 
    의 mime.types를 포함한다; 
    default_type 애플리케이션 / octet-stream을; 
    에 sendfile을; 
    keepalive_timeout 65; 

 서버 { 
        80을 듣고; 
        서버 _ www.test.com; 
        루트 HTML; 
     위치 / { 인덱스 된 index.html index.htm을; } 위치 ~ * \ (PHP | PHP5) $ {..? 127.0.0.1:9000 fastcgi_pass; fastcgi_index의 index.php를; fastcgi.conf을 포함한다; } 500 502 503 504 /50x.html을 error_page; } }

구성을 새로 고침 ⑦ 브라우저를 실행 한 결과가 성공적 있는지 확인하기 위해 주소를 입력합니다.

[루트 @의 HTML bqh-118] # / 애플리케이션 / Nginx의 경우 / sbin / nginx를 -t 
의 nginx : 구성 파일 /application/nginx-1.6.3/conf/nginx.conf 구문은 확인 
의 nginx : 구성 파일 / 프로그램 / nginx- 1.6.3 / CONT는 / nginx.conf 테스트 성공 
[루트 @의 HTML bqh-118] # / 애플리케이션 / Nginx의 경우 / sbin / nginx를 -s 장전

http://192.168.0.118/test_phpinfo.php 또는 http://www.test.com/test_phpinfo.php

 좋아, 현재의 nginx PHP를 통과해야하고, 여기에 우리가 PHP는 MySQL의 통과 여부를 테스트해야합니다.

nginx를 PHP 사이트 디렉토리 아래에 test_mysql.php 코드 테스트를 작성 ⑧

[root@bqh-118 html]# vim test_mysql.php
[root@bqh-118 html]# cat test_mysql.php 
<?php
$link_id=mysql_connect('localhost','root','123456') or mysql_error();
if($link_id) {
   echo "MySQL connection succeeded!";
  }
else {
   echo mysql_error();
  }
?>

 浏览器输入地址:http://192.168.0.118/test_mysql.php 或 http://www.test.com/test_mysql.php

ok测试没有问题。

假如我们把mysql密码改了,我们再来测试一下效果:

到此为止,nginx→php→mysql测试一通; LNMP环境搭建ok。

추천

출처www.cnblogs.com/su-root/p/11073215.html