如何在NGINX上替换来自url的+,/和=

时间:2014-07-17 13:00:26

标签: nginx

我在将+,/和=替换为NginX之后发送编码的URL,但在解码之前无法将它们替换回Nginx。 我不会使用类似php的东西来处理PHP服务器的请求和响应。 我只想在nginx中操作字符串。 直到现在我已经尝试使用replace-filter-nginx-module和let模块,但是没有成功。 任何帮助都会受到赞扬!

1 个答案:

答案 0 :(得分:1)

http://luajit.org/download.html下载Lua并解压缩该文件夹。然后,运行以下命令(记得将[FOLDER_PATH]替换为解压缩它的实际位置):

cd [FOLDER_PATH]/
make
make install

Lua NGINX模块

将内置添加模块放在./configurehttps://github.com/openresty/lua-nginx-module/tags

假设NGINX安装在/opt/nginx,请运行:

./configure --prefix=/opt/nginx --with-http_ssl_module \ 
    --with-http_secure_link_module \ 
    --add-module=/opt/nginxdependencies/ngx_devel_kit-master \ 
    --add-module=[FOLDER_PATH]/set-misc-nginx-module-0.23 \ 
    --add-module=[FOLDER_PATH]/lua-nginx-module-0.9.10 \ 
    --with-ld-opt='-Wl,-rpath,/usr/local/lib'

现在下载https://github.com/openresty/lua-resty-string并在nginx.conf上方的server { ... }添加条目:

lua_package_path "[FOLDER_PATH]/lua-resty-string-master/lib/?.lua;;";