Ningx 로 하여 금 Lua 를 지지 하 게 하 다

nginx 의 강력 함, lua 의 고성능, 정말 좋 은 조합 입 니 다. 합치 면 무적 입 니 다. 하하.
다음은 nginx 를 설정 하여 lua 를 지원 합 니 다. nginx 모듈 을 통 해 이 루어 집 니 다.
모듈 주소:https://github.com/chaoslawful/lua-nginx-module
다운로드 링크:https://github.com/chaoslawful/lua-nginx-module/archive/v0.8.10.tar.gz
1. 소스 코드 다운로드, 압축 풀기
a. nginx 소스 코드:
[root@localhost ~]# wget http://nginx.org/download/nginx-1.4.2.tar.gz
[root@localhost ~]# tar zxvf nginx-1.4.2.tar.gz

b. lua 모듈
[root@localhost ~]# wget -O lua-nginx-module-0.8.10.tar.gz https://github.com/chaoslawful/lua-nginx-module/archive/v0.8.10.tar.gz
[root@localhost ~]# tar zxvf lua-nginx-module-0.8.10.tar.gz

c. luajit (lua 인 스 턴 트 컴 파일 러)
[root@localhost ~]# wget http://luajit.org/download/LuaJIT-2.0.2.tar.gz
[root@localhost ~]# tar zxvf LuaJIT-2.0.2.tar.gz

d、ngx_devel_kit (nginx 개발 키 트)
[root@localhost ~]# wget -O ngx_devel_kit-0.2.18.tar.gz https://github.com/simpl/ngx_devel_kit/archive/v0.2.18.tar.gz
[root@localhost ~]# tar zxvf ngx_devel_kit-0.2.18.tar.gz

2, 설치 luajit
[root@localhost ~]# make
[root@localhost ~]# make install

3. nginx 설치
방법 a, luajit 인 스 턴 트 컴 파일 러 사용
[root@localhost nginx-1.4.1]# export LUAJIT_LIB=/usr/local/lib
[root@localhost nginx-1.4.1]# export LUAJIT_INC=/usr/local/include/luajit-2.0
[root@localhost nginx-1.4.1]# ./configure \
--prefix=/usr/local/nginx-1.4.1 \
--with-http_stub_status_module \
--add-module=../lua-nginx-module-0.8.9 \
--add-module=../ngx_devel_kit-0.2.18
[root@localhost nginx-1.4.1]# make -j 4
[root@localhost nginx-1.4.1]# make install
[root@localhost ~]# echo '/usr/local/lib' >> /etc/ld.so.conf.d/lua.conf
[root@localhost ~]# ldconfig

방법 b, lua 컴 파일 러 사용
메모: lua 컴 파일 러 를 사용 하려 면 lua 실행 환경 을 먼저 설치 해 야 합 니 다. 일반적인 시스템 은 모두 미리 설치 되 어 있 습 니 다. 미리 설치 되 어 있 지 않 으 면 yum 으로 설치 할 수 있 습 니 다. 다음 과 같 습 니 다.
[root@localhost ~]# yum install lua lua-devel

설치 nginx:
[root@localhost nginx-1.4.1]# export LUA_LIB=/usr/lib64
[root@localhost nginx-1.4.1]# export LUA_INC=/usr/include
[root@localhost nginx-1.4.1]# ./configure \
--prefix=/usr/local/nginx-1.4.1 \
--with-http_stub_status_module \
--add-module=../lua-nginx-module-0.8.9 \
--add-module=../ngx_devel_kit-0.2.18
[root@localhost nginx-1.4.1]# make -j 4
[root@localhost nginx-1.4.1]# make install

메모: nginx 로 하여 금 lua 를 지원 하 게 하 는 두 가지 방법 이 있 습 니 다. 하 나 는 luajit 인 스 턴 트 컴 파일 러 를 사용 하 는 것 이 고, 다른 하 나 는 lua 컴 파일 러 를 사용 하 는 것 입 니 다.효율 이 높 기 때문에 luajit 를 추천 합 니 다.그 중 ngxdevel_kit 의 역할 은 두 가지 가 있 습 니 다. 하 나 는 개발 용 입 니 다. 다른 하 나 는 오류 로그 에 nginx 처리 단계 정보 (rewrite phase, access phase, content phase) 를 기록 할 수 있 습 니 다. 오류 로그 단 계 를 높 여야 합 니 다. 디 버 깅 할 때 debug 로 설정 할 수 있 습 니 다.
4. 설치 검증
lua 컴 파 일 러 를 사용 할 때 다음 과 같이 표시 합 니 다.
[root@localhost ~]# lsof -p 3359 | grep -i lua
nginx  3359 root  mem  REG 8,3  183920 394551 /usr/lib64/liblua-5.1.so

luajit 인 스 턴 트 컴 파일 러 를 사용 할 때 다음 과 같이 표시 합 니 다.
[root@localhost ~]# lsof -p 13177 | grep -i lua
nginx 13177 root mem REG 8,3 452024 405089 /usr/local/lib/libluajit-5.1.so.2.0.2

5. 설정 명령 과 출력 검증
nginx. conf 설정 파일 을 수정 하고 다음 명령 을 추가 합 니 다:
location / {
    content_by_lua 'ngx.say("hello world!")';
}

nginx 를 다시 시작 하고 curl 로 테스트 합 니 다.
[root@localhost ~]# curl -i localhost
HTTP/1.1 200 OK
Server: nginx/1.4.1
Date: Tue, 24 Sep 2013 23:23:58 GMT
Content-Type: application/octet-stream
Transfer-Encoding: chunked
Connection: keep-alive
hello world!

6. 큰 성 과 를 거두다
더 많은 사용 가능 한 명령 어 를 찾 아 보십시오:http://wiki.nginx.org/HttpLuaModule

좋은 웹페이지 즐겨찾기