>  기사  >  운영 및 유지보수  >  Nginx에 Lua 모듈을 추가하는 방법

Nginx에 Lua 모듈을 추가하는 방법

WBOY
WBOY앞으로
2023-05-25 11:28:061399검색

lua 설치

wget http://luajit.org/download/luajit-2.0.5.tar.gz 
tar -zxvf luajit-2.0.5.tar.gz
cd luajit-2.0.5
make && make install prefix=/usr/local/luajit

etc/profile Join

# lua
export luajit_lib=/usr/local/luajit/lib 
export luajit_inc=/usr/local/luajit/include/luajit-2.0

source etc/profile

ngx_devel_kit 모듈 다운로드

wget https://github.com/simpl/ngx_devel_kit/archive/v0.3.0.tar.gz

ndk(nginx 개발 키트) 모듈은 ngin의 확장입니다. x 서버용 모듈 핵심 기능, 이를 기반으로 타사 모듈 개발을 신속하게 구현할 수 있습니다. ndk는 일부 기본 작업을 처리하는 함수와 매크로를 제공하여 타사 모듈 개발을 위한 코드 양을 줄입니다.

lua-nginx-module 모듈 다운로드

wget https://github.com/openresty/lua-nginx-module/archive/v0.10.9rc7.tar.gz

lua-nginx-module 모듈을 사용하면 nginx가 lua를 직접 실행할 수 있습니다.

다음과 같은 원본 컴파일

nginx -v

보기:
인수 구성: --user=www --group=www --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module -- with-http_gzip_static_module --with -http_sub_module --with-http_v2_module

nginx 원본 디렉터리 입력:

./configure --user=www --group=www --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module --with-http_gzip_static_module --with-http_sub_module --with-http_v2_module --add-module=/root/lua-nginx-module-0.10.9rc7/ --add-module=/root/ngx_devel_kit-0.3.0

make만 하고 make install을 실행하지 마세요.

컴파일 오류는 lua 환경 변수가 잘못되었다는 것입니다.

nginx -v 命令报错
./nginx: error while loading shared libraries: libluajit-5.1.so.2: cannot open shared object file: no such file or directory

解决:
echo "/usr/local/luajit/lib" >> /etc/ld.so.conf

ldconfig

성공한 후 nginx -v를 사용하여 확인할 수 있으며 오류가 보고되지 않습니다.

원본 nginx를 nginx_old

cp objs/nginx로 원본 nginx에 백업하고 덮어씁니다.

컴파일 디렉토리에서

make upgrade

nginx를 실행하여 lua 모듈을 추가하세요.

테스트:

server{
 ...
 location /lua {
  default_type 'text/html';
  content_by_lua '
    ngx.say("hello, lua!")
  ';
 }
 ...
}

브라우저 열기:

http://blog.13sai.com/lua

안녕 루아를 볼 수 있습니다. !

위 내용은 Nginx에 Lua 모듈을 추가하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 yisu.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제