nginx를 설치
내가 lnmp 설치 컴파일, 설치 패키지의 Nginx를 다운로드
wget을 http://nginx.org/download/nginx-1.13.4.tar.gz
방화벽 및 SELinux를 사용 해제
위해 setenforce 0
서비스의 iptables 중지
설치 종속성을 확인
(의 nginx 라이브러리를 설치하려면 다음 명령을 실행합니다.)
냠 GCC의 PCRE의 PCRE-(STABLE) ZLIB의 ZLIB-(STABLE)하려면 openssl하려면 openssl-(STABLE)을 설치 -y
만들기 계정과의 nginx를 실행 그룹
계정에 직접 로그인 할 수 없습니다 당신은 당신의 nginx 실행을 설치하기 전에 계정을 만들어야합니다
groupadd www가
useradd와 WWW -s / sbin에 / nologin으로 -g WWW
Nginx의 구성 설치 옵션
nginx를 소개 설치 옵션을 지정, 매개 변수 설명, 일부 간단한 구성의 공식 웹 사이트를 참조 할 수 있습니다 것만의 설치 위치, 기본 구성으로 다른 다른
./configure를 --prefix = / usr / 지방 / Nginx에
공식 웹 사이트 매개 변수 설명 : http://nginx.org/en/docs/configure.html
일반 구성 :(는 라인 실행시 실행)를 넣어
./ 구성
--sbin 경로 = / usr / 지방 / Nginx에 / Nginx에
--conf 경로 = / usr / 지방 / Nginx에 / nginx.conf
--pid 경로 = / usr / 지방 / Nginx에 / nginx.pid - -with- http_ssl_module --with-PCRE = .. / PCRE - 8.41 --with-ZLIB = .. / ZLIB-1.2.11 --user = WWW --group = WWW
컴파일 및 설치
만들 && 설치하기
시작, 중지, 다시 시작
sbin 디렉토리는 설치 디렉토리의 nginx로 전환해야
nginx를 시작합니다
nginx를
추신 -ef으로 | 그렙의 nginx를 nginx를 성공을보고하기 시작했다
정지의 nginx
의 nginx -s 정지
다시 시작
의 nginx -s 다시로드
기본 사이트 테스트
80 포트가 열려 있지 : 때문에 액세스, 로컬 및 원격 액세스 (IP를 통한 액세스), CentOS는 기본 원격 액세스는 할 수 없습니다. 해결 방법 : 일시적으로 빈 방화벽이나 방화벽 규칙을 끄십시오!
nginx를 부팅 구성
시스템 시작시에 /etc/rc.d/rc.local 파일에 대한 / usr / 지방 / Nginx의 경우 / sbin / nginx를 명령, rc.local에 파일이 실행됩니다. 디폴트는, 실행 권한을하지 그것을 실행 권한을 추가 rc.local에 있기 때문에 그러나 CentOS7, 시스템 서비스에 기록되어있는 서비스 시작 서비스 설명 파일을 추가 할 것을 제안.
/etc/rc.d/에 빔이 를 rc.local
# 다음 매개 변수 추가
는 / usr / 빈 / Nginx에
chmod를 + X /etc/rc.d/rc.local 일
여기에 당신은 또한 chkconfig를의 nginx에 사용할 수있는, 일종의 방법 중 하나이지만,이 방법은, 당신은 nginx를위한 스크립트를 작성 시작해야합니다. 그것은 나중에 언급 될 것이다.
구성 환경 변수
보기에 에코 $ PATH 환경 변수
구성 환경 변수는이 서버가 필요하지 않습니다 일반적이다. 여기에 또한 짧게에 대한
VI은 / etc / 프로파일
# 1 직접 환경 변수 효과 리터를 수정 한 후 다음 명령 실행
공급원은 / etc / 프로필
서비스로 구성된 nginx를
있도록이 필요가 nginx를위한 별도의 서비스 시작 스크립트를 작성하는 다시 시작, 시작, 중지 할 서비스의 nginx 다시 시작에 의해 수행 될 수있다. 스크립팅 정보
이 좋은 거래 후에는 부트 업을 설정하는 것은 매우 쉽습니다.
chkconfig를 - nginx를 추가
chkconfig를의 nginx에를
Nginx에는 PHP를 지원
테스트 여부를 일반 PHP 파일 구문 분석
<? PHP의
phpinfo를 ();
액세스를 다운로드하라는 메시지가 표시됩니다 때, 일반 PHP 파일을 나타내는 것은 해결되지!
솔루션
Nginx에 사이트 구성 파일을 수정하여 해결
의 nginx 구성 파일 (/usr/local/nginx/conf/nginx.conf)을 수정할
# 아래 코드, 서버 사이트 구성을 복사, 전면 노트를 제거
~ #location \ .PHP $ {
#root HTML,
127.0.0.1:9000 #fastcgi_pass ,
의 index.php를 #fastcgi_index,
#fastcgi_param의 SCRIPT_FILENAME 웹 루트 디렉토리 $ fastcgi_script_name # 죽음을 권장하지 않습니다 여기에 쓰기는 $ DOCUMENT_ROOT 대신에 사용할 수 있습니다
; 사용법 #include fastcgi_params
}
여기 PHP는 프로파일이 제대로 해석 할 수있다 (PHP 환경에서 다음의 설치, 걱정하지 마세요)
설정 멀티 사이트로, 각 사이트 다음, 작성하는 별도의 구성 파일을 권장, 여러 사이트를 설정 include /conf/vhosts/*.conf
양식을로드
다음은 두 개의 도메인 이름을 준비
www.a.com를 서버 IP에 해결
www.b.com 는 IP 서버에 해결
사이트 프로파일 디렉토리 만들기
에서 mkdir / usr / 지방 /의 nginx / conf의 / 가상 호스트
편집 nginx.conf
다음 추가
/usr/local/nginx/conf/vhosts/*.conf 포함
사이트 디렉토리를 작성
# 만들기 www.a.com 사이트 디렉터리
에서 mkdir / var에 /를 WWW / www.a.com
# 테스트 홈 만들
정력 /var/www/www.a.com/의 index.php를 번호 입력 사이트 도메인 이름 : www.a.com
# 생성 www.b.com 사이트 디렉터리
에서 mkdir / var에 /를 WWW / www.b.com # 테스트 홈 만들 정력 /var/www/www.b.com/index.php 번호 입력 사이트 도메인 이름 : www.b.com
사이트 프로필 만들기
사이트 프로필 www.a.com 만들기
사이트 # www.a.com 프로필 만들기
에서 mkdir / var에 / 지역 / Nginx에 / conf의 / 가상 호스트 / www.a.com.conf의
내용은 다음 #을 :
서버 {
80 듣고 ,
서버 _ www.a.com # 설정 도메인
인덱스를 의 index.php index.html을 # 기본 홈
루트의 / var /를 WWW / www.a.com # 사이트 카탈로그
로드 구성 파일에 대한 # . [서버 기본에서 블록 (가) /etc/nginx/default.d/*.conf을 포함 # 부하 확장 구성
LOCATION / { }
error_page /404.html을 404; LOCATION /40x.html = { }
error_page 500 502 503 504 /50x.html; LOCATION /50x.html = { } #은 IS 다음 PHP 지원 공용를 사용 파일 소개 위치 ~ \ .PHP의 $ { fastcgi_pass 127.0.0.1:9000; fastcgi_index의 index.php를; fastcgi_param SCRIPT_FILENAME $ DOCUMENT_ROOT $ fastcgi_script_name; fastcgi_params을 포함한다; } }
www.b.com의 생성 사이트 프로필
# 직접 사이트를 복사 한 다음에 변경하기
CP의 ./www.a.com.conf의 ./www.b.com.conf을
다시 시작의 nginx와 두 개의 테스트 사이트
서비스의 nginx 다시 시작
Nginx의 환경 하에서 빌 마운트 공정
시스템 환경 : CentOS는 6.5 / 7.0 x86_64에 페도라 20 x86_64의
패키지 의존성을 설치 .Yum
냠 설치 ZLIB libxml libjpeg FreeType에서의 libpng GD 컬 libiconv ZLIB-(STABLE)의 libxml2를-(STABLE) libjpeg-(STABLE) FreeType에서-(STABLE)의 libpng-(STABLE)의 GD-(STABLE) 컬-(STABLE)하려면 openssl하려면 openssl-(STABLE) libxslt- (STABLE)을 아무显示过安装할
II. 패키지 libiconv를 설치
wget을 HTTP : // ftp.gnu.org/pub/gnu/libiconv/libiconv-1.15.tar.gz 타르 zxf libiconv- 1.15 . 타르 에 .gz CD를 libiconv - 1.15
그런 다음 컴파일
./configure를 --prefix = / usr / 지방 / (libiconv 번호 libiconv-에서 . 1 다음 디렉토리 .15)
이 디렉토리에 설치 컴파일
만들 && 하게 설치
III. 구성 컴파일 및 PHP-5.6.30.tar.gz를 설치
wget을 HTTP : // tw1.php.NET/get/php-5.6.30.tar.gz/from/this/mirror #은 (다운로드 / usr / 지방 / SRC는, 캔,이있는 곳 권장) 뮤직 비디오 미러 PHP- 5.6 . (30) . 타르 는 .gz 타르 PHP- xzvf 5.6 . (30) . 타르 는 .gz
그런 다음 구성
④ (进到PHP- 5.6 0.30解压后的目录里) . / 구성 \ --prefix = / USR / 로컬 / PHP \ --enable- FPM \ --with-의 MySQL = mysqlnd \ --with PDO - 투 - MySQL = mysqlnd \ --with-mysqli = mysqlnd \ --with- 하려면 openssl \ --with- ZLIB \ --with- GD \ --with-jpeg- DIR \ --with-png- DIR \ --with-iconv에서 = / usr / 지방 / libiconv \ --enable- 짧은 - 태그 \ --enable- 소켓은 \ --enable-zend- 멀티 바이트 \ --enable-을비누 \ --enable- mbstring \ --enable- 정적 \ --with- 컬 \ --enable- FTP \ --with-libxml- 디렉토리
정상적인 상황이 잘못에서 일반적으로 패키지가 설치되어 있지 않은 것, 오류 메시지에 따라 잘 설치되어 있어야합니다. 마지막으로, 시앙은 동일한 주제에 무엇을 당신을 생각합니다.
그런 다음 컴파일하고이 디렉토리에 설치
만들 && 하게 설치
네 .php.ini 구성
첫째, 우리는 php.ini 파일을 구성 할 수있다 필요 php.ini 파일 : 두 개의 파일이있다 설치 디렉토리 -Development 및 php.ini- 생산의 php.ini 파일 - 사용하는 생산의 온라인 버전을 php.ini의 - 개발 버전 사용하여 개발을 우리가 개발을 수행하는 선택을 구성 CP php.ini의-개발 /usr/local/php/lib/php.ini
의 nginx 구성에 다섯 .PHP-FPM은 구성 위의 위의 nginx는 말을 일으키는 이유입니다, PHP 포트는 9000입니다 실행되기 때문에
① 사본 PHP- FPM 구성 파일 은 cp -R ./sapi/fpm/php-fpm.conf / usr / 지방 / PHP을 / etc / PHP- fpm.conf ② PHP는 우리에게 준비 init.d.php을 줄 것이다 - FPM CP ./sapi/fpm/init.d.php-fpm /etc/init.d/php- FPM ③ PHP를 - FPM 목록을 chkconfig가하는 서비스를 추가 chkconfig를 --add PHP- FPM ④ 시작에서 설정 부팅 은 chkconfig PHP - FPM ON ⑤ 플러스의 허가 chmod를 + X 방향은 / etc / init.d를 / PHP- FPM ⑥ PHP 시작 - FPM 서비스 PHP는 - FPM은 시작 부터 성공적인 쇼 PHP를 -fpm가 DONE을
VI. 사용자를 작성 (nginx를 이미 설정보다, 그것은 중요하지 않습니다 다시 실행하기 때문에, 생략 할 수 있지만, 이미이 사용자를보고됩니다)
작성 www가 사용자
groupadd WWW
은 useradd -g www가 -s / sbin에 / nologin으로 -M WWW
VII. PHP는 환경 변수를 추가하는 명령
① 에디터 정력을 / etc / 프로필
② 경로의 마지막 줄에 추가 = $를 PATH : $ 홈 / 빈 : / usr / 지방 / PHP / 빈
그런 다음, 다음 명령을 실행, 위의 프로필 파일을 저장
소스 / 등은 / (환경 변수를 적용하려면) 프로필 은 PHP 버전보기 PHP의 -v를
PHP 버전 정보를 확인하고 nginx를 구성 도메인 이름에 표시 위치는 위의 index.php를 좋아 썼다 덧붙였다. 브라우저를 열고 자신의 가상 사이트 설정을 실행 화면이 잘 PHP 파일에 액세스 할 수 있습니다.