nginx + lua 개발 환경 노트 설정 (2)

3849 단어 nginx
이전 장 에 서 는 Centos 7 에 openresty 를 설치 하 였 다. 클릭 하여 보기 클릭 하여 링크 열기
          다음은 장 카 이 타 오의 설치 Nginx + Lua 개발 환경 을 참고 하여 한 걸음 한 걸음 하 는 실험 입 니 다.     클릭 하여 보기 클릭 하여 링크 열기
  저 는 yum 으로 설치 되 어 있 기 때문에 기본적으로 openresty 의존 패키지 와 LuaJIT, ngxcache_Purge 등 내 장 된 플러그 인 이 모두 설치 되 어 있 습 니 다. 설치 에 성공 하면 발견 할 수 있 습 니 다.
  다음 디 렉 터 리 가 더 나 온 것 을 발견 할 수 있 습 니 다. 설치 성공 을 설명 합 니 다 (/ usr / local / openresty 는 기본 설치 경로 입 니 다)
/ usr / local / openresty / luajit: luajit 환경, luajit 는 자바 와 유사 한 jit, 즉 즉시 컴 파일, lua 는 해석 언어 로 luajit 코드 를 기계 코드 로 즉시 컴 파일 하여 좋 은 성능 을 얻 을 수 있 습 니 다. /usr / local / openresty / lualib: 사용 할 lua 라 이브 러 리 는 redis, json 라 이브 러 리 등 기본 적 인 lua 라 이브 러 리 를 제공 합 니 다. 또한 자신 이 개발 하거나 제3자 의 것 을 여기에 놓 을 수 있 습 니 다. /nginx: 설 치 된 nginx; / usr / local / openresty / nginx / sbin / nginx 를 통 해 -V. nginx 버 전과 설 치 된 모듈 을 봅 니 다. 이전 장 에 path 가 설정 되 어 있 기 때문에 source / etc / profile 을 통 해 nginx - v 를 직접 사용 하면 됩 니 다.
 환경 설정
  설정 및 Nginx HttpLuaModule 문 서 를 볼 수 있 습 니 다.http://wiki.nginx.org/HttpLuaModule。
1) nginx. conf 설정 파일 편집 
vim /usr/local/openresty/nginx/conf/nginx.conf  

2) http 부분 에 다음 설정 추가 
#lua    ,    ”;”  ,  ”;;”        ,   /usr/servers/nginx    
lua_package_path "/usr/local/openresty/lualib/?.lua;;";  #lua     
lua_package_cpath "/usr/local/openresty/lualib/?.so;;";  #c     
3)
개발 편 의 를 위해 / usr / server / nginx / conf 디 렉 터 리 에 lua. conf 를 만 듭 니 다. 
#lua.conf  
server {  
    listen       80;  
    server_name  _;  
}  

4) nginx. conf 의 http 부분 에 include lua. conf 를 추가 하여 이 파일 세 션 을 포함 합 니 다. 
include lua.conf;  

5. 정상 여 부 를 테스트 
/usr/local/openresty/nginx/sbin/nginx  -t   

다음 내용 을 표시 하면 설정 이 성공 했다 는 것 을 설명 합 니 다.
nginx: the configuration file /usr/servers/nginx/conf/nginx.conf syntax is ok
nginx: configuration file /usr/servers/nginx/conf/nginx.conf test is successful
HelloWorld
1. lua. conf 에 server 부분 에 다음 설정 을 추가 합 니 다. 
location /lua {  
    default_type 'text/html';  
        content_by_lua 'ngx.say("hello world")';  
}  

2. 설정 이 올 바른 지 테스트 
/usr/local/openresty/nginx/sbin/nginx  -t  

3. nginx 재 부팅 
/usr/local/openresty/nginx/sbin/nginx  -s reload  

 4. 방문http://192.168.0.219/lua(자신의 기 계 는 실제 상황 에 따라 ip 을 바꾼다) 다음 과 같은 내용 을 볼 수 있다. 
hello world
5. lua 코드 파일
lua 코드 를 nginx 설정 에 두 면 lua 코드 가 증가 함 에 따라 설정 파일 이 너무 길 고 유지 하기 어 려 울 수 있 으 므 로 lua 코드 를 외부 파일 로 옮 겨 저장 해 야 합 니 다. 
vim /usr/local/openresty/nginx/conf/lua/test.lua  
#        
ngx.say("hello world");   

그리고 lua. conf 는  
location /lua {  
    default_type 'text/html';  
    content_by_lua_file conf/lua/test.lua; #   nginx      
}   
여기 conf / lu / test. lua 도 절대 경로 / usr / local / openresty / nginx / conf / lu / test. lua 를 사용 할 수 있 습 니 다.
6、lua_code_cache 
기본 상황 에서 luacode_cache  열 린 것 입 니 다. 즉, 캐 시 lua 코드 입 니 다. 즉, lua 코드 가 변 경 될 때마다 reload nginx 가 적용 되 어야 합 니 다. 개발 단계 에서 lua 를 통 해code_cache  off;캐 시 를 닫 습 니 다. 이렇게 디 버 깅 할 때 lua 코드 를 수정 할 때마다 reload nginx 가 필요 없습니다.하지만 공식 환경 에 서 는 캐 시 를 켜 는 것 을 잊 지 마 세 요.
location /lua {  
        default_type 'text/html';  
        lua_code_cache off;  
        content_by_lua_file conf/lua/test.lua;  
}  
오픈 후 reload nginx 는 다음 과 같은 경 보 를 볼 수 있 습 니 다.
nginx: [alert] lua_code_cache is off; this will hurt performance in/usr/local/openresty/nginx/conf/lua.conf:8
7. 오류 로그
 실행 중 오류 가 발생 하면 오류 로 그 를 보 는 것 을 잊 지 마 십시오. 
tail -f /usr/servers/nginx/logs/error.log  

여기까지 우리 의 기본 환경 건설 이 끝났다.

좋은 웹페이지 즐겨찾기