LNMP 환경을 구성하려면 우리 호스트가 Nginx, MySQL, PHP, phpMyAdmin을 지원해야 합니다. 구성 후에는 이 환경을 직접 사용하여 웹사이트를 실행할 수 있습니다. 아래 방법을 구성하겠습니다.
먼저 공식 설명을 살펴보겠습니다
LNMP 원클릭 설치 패키지는 Linux Shell로 작성된 Shell 프로그램으로 CentOS/RadHat, Debian/Ubuntu VPS(VDS) 또는 독립 호스트용 LNMP(Nginx, MySQL, PHP, phpMyAdmin) 프로덕션 환경을 설치할 수 있습니다.
1. MySQL을 설치합니다
명령 실행:
-
- apt-get install -y mysql-server mysql-client
-
-
코드 복사
MySQL을 설치할 수 있습니다. 설치 과정에서 루트 비밀번호를 입력하라는 메시지가 표시됩니다. 필요한 비밀번호를 입력하고 Enter를 누르세요.
설치가 완료되면 다음 명령을 실행하여 1단계 보안 설정을 수행하세요.
-
- mysql_secure_installation
-
-
코드 복사
안내에 따라 루트 비밀번호 변경 여부, 익명 사용자 제거 여부, 루트 원격 로그인 금지 여부 등을 묻는 메시지가 표시됩니다.
2. PHP 설치
명령 실행:
-
- apt-get install php5-fpm php5-gd php5-mysql php5-memcache php5-curl
-
-
복사 코드
위 명령은 php5-memcache 확장을 설치하므로 계속해서 Memcached를 설치하세요.
-
- apt-get install memcached
-
-
코드 복사
설치 후 php5-fpm -v를 사용하여 PHP 버전을 확인하세요.
-
-
- root@ztbox:~# php5-fpm -v
-
코드 복사
PHP 5.4.16-1~dotdeb.1 (fpm-fcgi) (구축일: 2013년 6월 8일 22:20:42)
저작권 (c) 1997-2013 PHP 그룹
Zend 엔진 v2.4.0, 저작권 (c) 1998-2013 Zend Technologies
3. Nginx 설치
여기서는 앞으로 있을 수 있는 기능 향상에 대비해 Nginx(nginx-full)의 모든 확장 기능을 직접 설치했습니다.
-
- apt-get install -y nginx-full
-
-
코드 복사
그런 다음 Nginx를 시작하세요.
접속 결과는 위와 같습니다. 다음으로 Nginx를 구성합니다.
-
- vim /etc/nginx/sites-available/default
-
-
코드 복사
……
위치 ~ .php$ {
fastcgi_split_path_info ^(. .php)(/. )$;
# # 참고: php.ini 에 "cgi.fix_pathinfo = 0;"이 있어야 합니다.
#
# # php5-cgi만 사용:
# fastcgi_pass 127.0.0.1:9000;
# # php5-fpm 사용:
fastcgi_pass unix:/var/run/php5-fpm.sock;
fastcgi_index index.php;
fastcgi_params 포함;
}
……
변경 사항을 저장한 후 Nginx를 다시 시작하세요.
다음으로 PHP의 세부 정보를 보기 위해 새로운 phpinfo를 생성합니다.
-
- vim /usr/share/nginx/html/phpinfo.php
-
-
-
코드 복사
저장 후 http://ip/phpinfo.php에 접속하시면 phpinfo 페이지가 뜨면 완료입니다.
새 사이트를 만드는 방법
Jun Ge의 원클릭 패키지와 달리 이 방법으로 설치된 LNMP에는 사이트 구성 파일을 수동으로 추가해야 합니다.
구성 파일 디렉터리를 입력하고 과 같은 새 사이트 구성 파일을 만듭니다.
-
- vi dearroy.com.conf
-
-
- 서버 {
- 수신 80;
-
- #ipv6
- # Listen [::]:80 default_server;
-
- root /usr/share/nginx/html/dearroy.com;
-
- #기본 홈페이지 파일 이름
- index index.php index.html index.htm;
-
- #바인딩 도메인 이름
- server_name localhost;
-
- #의사 정적 규칙
- include wordpress.conf;
-
- 위치 / {
- try_files $uri $uri/ /index.html;
- }
- #오류 페이지 정의
- #error_page 404 /404.html;
-
- 위치 ~ .php$ {
- fastcgi_split_path_info ^ (. .php)(/. )$;
- fastcgi_pass 127.0.0.1:9000;
- fastcgi_index index.php;
- include fastcgi_params;
- }
- #PHP
- }
-
-
코드 복사
저장 후 Nginx를 다시 시작하면 웹사이트 추가 및 바인딩이 완료됩니다.
마지막으로 가장 일반적으로 사용되는 두 가지 프로그램인 Nginx pseudo-static은 다음과 같습니다.
워드프레스:
코드 복사 코드는 다음과 같습니다: 위치 / {
if (-f $request_filename/index.html){
다시 쓰기(.*) $1/index.html break;
}
if (-f $request_filename/index.php){
다시 쓰기(.*) $1/index.php;
}
if (!-f $request_filename){
다시 쓰기(.*) /index.php;
}
}
X에 대해 토론하세요:
코드 복사 코드는 다음과 같습니다. ^([^.]*)/topic-(. ).html$ $1/portal.php?mod=topic&topic=$2 last;
^([^.]*)/article-([0-9] )-([0-9] ).html$ $1/portal.php?mod=view&aid=$2&page=$3 last; 다시 작성
^([^.]*)/forum-(w )-([0-9] ).html$ $1/forum.php?mod=forumdisplay&fid=$2&page=$3 last; 다시 작성
^([^.]*)/thread-([0-9] )-([0-9] )-([0-9] ).html$ $1/forum.php?mod=viewthread&tid=$2&extra 다시 작성 =page=$4&page=$3 마지막;
^([^.]*)/group-([0-9] )-([0-9] ).html$ $1/forum.php?mod=group&fid=$2&page=$3 last; 다시 작성
^([^.]*)/space-(username|uid)-(. ).html$ $1/home.php?mod=space&$2=$3 last; 다시 작성
^([^.]*)/([a-z] )-(. ).html$ $1/$2.php?rewrite=$3 마지막으로 다시 작성;
if (!-e $request_filename) {
404를 반환합니다.
|