테스트 환경 : 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。