aboutsummaryrefslogtreecommitdiffstats
path: root/msb-core/openresty-ext
diff options
context:
space:
mode:
Diffstat (limited to 'msb-core/openresty-ext')
-rw-r--r--msb-core/openresty-ext/pom.xml165
-rw-r--r--msb-core/openresty-ext/src/assembly/resources/openresty/lualib/resty/http.lua850
-rw-r--r--msb-core/openresty-ext/src/assembly/resources/openresty/lualib/resty/http_headers.lua62
-rw-r--r--msb-core/openresty-ext/src/assembly/resources/openresty/nginx/conf/nginx.conf72
-rw-r--r--msb-core/openresty-ext/src/assembly/resources/openresty/nginx/logs/placeholder.txt0
-rw-r--r--msb-core/openresty-ext/src/assembly/resources/openresty/nginx/luaext/customrouter.lua187
-rw-r--r--msb-core/openresty-ext/src/assembly/resources/openresty/nginx/luaext/execute_auth.lua25
-rw-r--r--msb-core/openresty-ext/src/assembly/resources/openresty/nginx/luaext/msbconf.lua26
-rw-r--r--msb-core/openresty-ext/src/assembly/resources/openresty/nginx/luaext/openoadminrouter.lua110
-rw-r--r--msb-core/openresty-ext/src/assembly/resources/openresty/nginx/luaext/openoapijsonrouter.lua110
-rw-r--r--msb-core/openresty-ext/src/assembly/resources/openresty/nginx/luaext/openoapirouter.lua117
-rw-r--r--msb-core/openresty-ext/src/assembly/resources/openresty/nginx/luaext/openouirouter.lua115
-rw-r--r--msb-core/openresty-ext/src/assembly/resources/openresty/nginx/luaext/plugins/auth.lua171
-rw-r--r--msb-core/openresty-ext/src/assembly/resources/openresty/nginx/luaext/plugins/driver_manager.lua127
-rw-r--r--msb-core/openresty-ext/src/assembly/resources/openresty/nginx/luaext/setnocacheflag.lua29
-rw-r--r--msb-core/openresty-ext/src/assembly/resources/openresty/nginx/sites-enabled/openomsb.conf181
-rw-r--r--msb-core/openresty-ext/src/assembly/resources/openresty/nginx/temp/placeholder.txt0
-rw-r--r--msb-core/openresty-ext/src/assembly/resources/openresty/reload.sh29
-rw-r--r--msb-core/openresty-ext/src/assembly/resources/openresty/run.bat55
-rw-r--r--msb-core/openresty-ext/src/assembly/resources/openresty/run.sh49
-rw-r--r--msb-core/openresty-ext/src/assembly/resources/openresty/stop.bat54
-rw-r--r--msb-core/openresty-ext/src/assembly/resources/openresty/stop.sh59
22 files changed, 0 insertions, 2593 deletions
diff --git a/msb-core/openresty-ext/pom.xml b/msb-core/openresty-ext/pom.xml
deleted file mode 100644
index 57a6af5..0000000
--- a/msb-core/openresty-ext/pom.xml
+++ /dev/null
@@ -1,165 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-
- Copyright 2016 ZTE Corporation.
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
-
- Author: Zhaoxing Meng
- email: meng.zhaoxing1@zte.com.cn
-
--->
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
- <parent>
- <groupId>org.openo.common-services.microservice-bus</groupId>
- <artifactId>msb-core-parent</artifactId>
- <version>1.1.0-SNAPSHOT</version>
- </parent>
-
-
- <modelVersion>4.0.0</modelVersion>
- <artifactId>openresty-ext</artifactId>
- <version>1.1.0-SNAPSHOT</version>
- <name>common-services-microservice-bus/msb-core/openresty-ext</name>
- <packaging>pom</packaging>
-
- <properties>
- <outputdir>target/assembly</outputdir>
- <packageid>openresty-ext</packageid>
- </properties>
-
- <dependencies>
- <dependency>
- <groupId>org.openresty.centos.6</groupId>
- <artifactId>openresty</artifactId>
- <version>${openresty.version}</version>
- <type>tar.gz</type>
- </dependency>
- </dependencies>
-
- <build>
- <plugins>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-dependency-plugin</artifactId>
- <executions>
- <execution>
- <id>unpack-dependency-file-linux</id>
- <goals>
- <goal>unpack</goal>
- </goals>
- <!--解压顺序,在最前面-->
- <phase>generate-resources</phase>
- <configuration>
- <artifactItems>
- <artifactItem>
- <groupId>org.openresty.centos.6</groupId>
- <artifactId>openresty</artifactId>
- <type>tar.gz</type>
- <outputDirectory>${linux64outputdir}</outputDirectory>
- </artifactItem>
- </artifactItems>
- <excludes>**/pod/**,**/*.pdb</excludes>
- <overWriteReleases>false</overWriteReleases>
- <overWriteSnapshots>true</overWriteSnapshots>
- <outputAbsoluteArtifactFilename>true</outputAbsoluteArtifactFilename>
- </configuration>
- </execution>
- </executions>
- </plugin>
-
- <plugin>
- <groupId>com.coderplus.maven.plugins</groupId>
- <artifactId>copy-rename-maven-plugin</artifactId>
- <version>1.0.1</version>
- <executions>
- <execution>
- <id>rename-nginx-dir</id>
- <phase>process-resources</phase>
- <goals>
- <goal>rename</goal>
- </goals>
- <configuration>
- <sourceFile>${linux64outputdir}/openresty-${openresty.version}</sourceFile>
- <destinationFile>${linux64outputdir}/openresty</destinationFile>
- </configuration>
- </execution>
- </executions>
- </plugin>
-
- <plugin>
- <artifactId>maven-resources-plugin</artifactId>
- <executions>
- <execution>
- <id>copy-msb-resources-linux64</id>
- <phase>process-resources</phase>
- <goals>
- <goal>copy-resources</goal>
- </goals>
- <configuration>
- <outputDirectory>${linux64outputdir}</outputDirectory>
- <includeEmptyDirs>true</includeEmptyDirs>
- <resources>
- <resource>
- <directory>src/assembly/resources/</directory>
- <filtering>false</filtering>
- <includes>
- <include>**/*</include>
- </includes>
- <excludes>
- <exclude>**/*.bat</exclude>
- <exclude>**/openrestyService*</exclude>
- </excludes>
- </resource>
- </resources>
- <overwrite>true</overwrite>
- </configuration>
- </execution>
- </executions>
- </plugin>
-
-
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-antrun-plugin</artifactId>
- <executions>
- <execution>
- <id>distribution-linux</id>
- <phase>package</phase>
- <goals>
- <goal>run</goal>
- </goals>
- <configuration>
- <target name="distribution">
- <tar destfile="${version.output}/${packageid}-${project.version}-${classifier.linux64}.tar.gz" longfile="posix" compression="gzip">
- <tarfileset dir="${linux64outputdir}" filemode="0644" dirmode="0755">
- <exclude name="**/*.sh"/>
- <exclude name="openresty/nginx/sbin/nginx"/>
- </tarfileset>
- <tarfileset dir="${linux64outputdir}" filemode="0755" dirmode="0755">
- <include name="**/*.sh"/>
- <include name="openresty/nginx/sbin/nginx"/>
- </tarfileset>
- </tar>
- <attachartifact file="${version.output}/${packageid}-${project.version}-${classifier.linux64}.tar.gz" classifier="${classifier.linux64}" type="tar.gz"/>
- </target>
- </configuration>
- </execution>
- </executions>
- </plugin>
-
- </plugins>
- </build>
-
-
-</project>
diff --git a/msb-core/openresty-ext/src/assembly/resources/openresty/lualib/resty/http.lua b/msb-core/openresty-ext/src/assembly/resources/openresty/lualib/resty/http.lua
deleted file mode 100644
index 94f9813..0000000
--- a/msb-core/openresty-ext/src/assembly/resources/openresty/lualib/resty/http.lua
+++ /dev/null
@@ -1,850 +0,0 @@
-local http_headers = require "resty.http_headers"
-
-local ngx_socket_tcp = ngx.socket.tcp
-local ngx_req = ngx.req
-local ngx_req_socket = ngx_req.socket
-local ngx_req_get_headers = ngx_req.get_headers
-local ngx_req_get_method = ngx_req.get_method
-local str_gmatch = string.gmatch
-local str_lower = string.lower
-local str_upper = string.upper
-local str_find = string.find
-local str_sub = string.sub
-local str_gsub = string.gsub
-local tbl_concat = table.concat
-local tbl_insert = table.insert
-local ngx_encode_args = ngx.encode_args
-local ngx_re_match = ngx.re.match
-local ngx_re_gsub = ngx.re.gsub
-local ngx_log = ngx.log
-local ngx_DEBUG = ngx.DEBUG
-local ngx_ERR = ngx.ERR
-local ngx_NOTICE = ngx.NOTICE
-local ngx_var = ngx.var
-local co_yield = coroutine.yield
-local co_create = coroutine.create
-local co_status = coroutine.status
-local co_resume = coroutine.resume
-
-
--- http://www.w3.org/Protocols/rfc2616/rfc2616-sec13.html#sec13.5.1
-local HOP_BY_HOP_HEADERS = {
- ["connection"] = true,
- ["keep-alive"] = true,
- ["proxy-authenticate"] = true,
- ["proxy-authorization"] = true,
- ["te"] = true,
- ["trailers"] = true,
- ["transfer-encoding"] = true,
- ["upgrade"] = true,
- ["content-length"] = true, -- Not strictly hop-by-hop, but Nginx will deal
- -- with this (may send chunked for example).
-}
-
-
--- Reimplemented coroutine.wrap, returning "nil, err" if the coroutine cannot
--- be resumed. This protects user code from inifite loops when doing things like
--- repeat
--- local chunk, err = res.body_reader()
--- if chunk then -- <-- This could be a string msg in the core wrap function.
--- ...
--- end
--- until not chunk
-local co_wrap = function(func)
- local co = co_create(func)
- if not co then
- return nil, "could not create coroutine"
- else
- return function(...)
- if co_status(co) == "suspended" then
- return select(2, co_resume(co, ...))
- else
- return nil, "can't resume a " .. co_status(co) .. " coroutine"
- end
- end
- end
-end
-
-
-local _M = {
- _VERSION = '0.09',
-}
-_M._USER_AGENT = "lua-resty-http/" .. _M._VERSION .. " (Lua) ngx_lua/" .. ngx.config.ngx_lua_version
-
-local mt = { __index = _M }
-
-
-local HTTP = {
- [1.0] = " HTTP/1.0\r\n",
- [1.1] = " HTTP/1.1\r\n",
-}
-
-local DEFAULT_PARAMS = {
- method = "GET",
- path = "/",
- version = 1.1,
-}
-
-
-function _M.new(self)
- local sock, err = ngx_socket_tcp()
- if not sock then
- return nil, err
- end
- return setmetatable({ sock = sock, keepalive = true }, mt)
-end
-
-
-function _M.set_timeout(self, timeout)
- local sock = self.sock
- if not sock then
- return nil, "not initialized"
- end
-
- return sock:settimeout(timeout)
-end
-
-
-function _M.ssl_handshake(self, ...)
- local sock = self.sock
- if not sock then
- return nil, "not initialized"
- end
-
- self.ssl = true
-
- return sock:sslhandshake(...)
-end
-
-
-function _M.connect(self, ...)
- local sock = self.sock
- if not sock then
- return nil, "not initialized"
- end
-
- self.host = select(1, ...)
- self.port = select(2, ...)
-
- -- If port is not a number, this is likely a unix domain socket connection.
- if type(self.port) ~= "number" then
- self.port = nil
- end
-
- self.keepalive = true
-
- return sock:connect(...)
-end
-
-
-function _M.set_keepalive(self, ...)
- local sock = self.sock
- if not sock then
- return nil, "not initialized"
- end
-
- if self.keepalive == true then
- return sock:setkeepalive(...)
- else
- -- The server said we must close the connection, so we cannot setkeepalive.
- -- If close() succeeds we return 2 instead of 1, to differentiate between
- -- a normal setkeepalive() failure and an intentional close().
- local res, err = sock:close()
- if res then
- return 2, "connection must be closed"
- else
- return res, err
- end
- end
-end
-
-
-function _M.get_reused_times(self)
- local sock = self.sock
- if not sock then
- return nil, "not initialized"
- end
-
- return sock:getreusedtimes()
-end
-
-
-function _M.close(self)
- local sock = self.sock
- if not sock then
- return nil, "not initialized"
- end
-
- return sock:close()
-end
-
-
-local function _should_receive_body(method, code)
- if method == "HEAD" then return nil end
- if code == 204 or code == 304 then return nil end
- if code >= 100 and code < 200 then return nil end
- return true
-end
-
-
-function _M.parse_uri(self, uri)
- local m, err = ngx_re_match(uri, [[^(http[s]?)://([^:/]+)(?::(\d+))?(.*)]],
- "jo")
-
- if not m then
- if err then
- return nil, "failed to match the uri: " .. uri .. ", " .. err
- end
-
- return nil, "bad uri: " .. uri
- else
- if m[3] then
- m[3] = tonumber(m[3])
- else
- if m[1] == "https" then
- m[3] = 443
- else
- m[3] = 80
- end
- end
- if not m[4] or "" == m[4] then m[4] = "/" end
- return m, nil
- end
-end
-
-
-local function _format_request(params)
- local version = params.version
- local headers = params.headers or {}
-
- local query = params.query or ""
- if query then
- if type(query) == "table" then
- query = "?" .. ngx_encode_args(query)
- end
- end
-
- -- Initialize request
- local req = {
- str_upper(params.method),
- " ",
- params.path,
- query,
- HTTP[version],
- -- Pre-allocate slots for minimum headers and carriage return.
- true,
- true,
- true,
- }
- local c = 6 -- req table index it's faster to do this inline vs table.insert
-
- -- Append headers
- for key, values in pairs(headers) do
- if type(values) ~= "table" then
- values = {values}
- end
-
- key = tostring(key)
- for _, value in pairs(values) do
- req[c] = key .. ": " .. tostring(value) .. "\r\n"
- c = c + 1
- end
- end
-
- -- Close headers
- req[c] = "\r\n"
-
- return tbl_concat(req)
-end
-
-
-local function _receive_status(sock)
- local line, err = sock:receive("*l")
- if not line then
- return nil, nil, nil, err
- end
-
- return tonumber(str_sub(line, 10, 12)), tonumber(str_sub(line, 6, 8)), str_sub(line, 14)
-end
-
-
-
-local function _receive_headers(sock)
- local headers = http_headers.new()
-
- repeat
- local line, err = sock:receive("*l")
- if not line then
- return nil, err
- end
-
- for key, val in str_gmatch(line, "([^:%s]+):%s*(.+)") do
- if headers[key] then
- if type(headers[key]) ~= "table" then
- headers[key] = { headers[key] }
- end
- tbl_insert(headers[key], tostring(val))
- else
- headers[key] = tostring(val)
- end
- end
- until str_find(line, "^%s*$")
-
- return headers, nil
-end
-
-
-local function _chunked_body_reader(sock, default_chunk_size)
- return co_wrap(function(max_chunk_size)
- local max_chunk_size = max_chunk_size or default_chunk_size
- local remaining = 0
- local length
-
- repeat
- -- If we still have data on this chunk
- if max_chunk_size and remaining > 0 then
-
- if remaining > max_chunk_size then
- -- Consume up to max_chunk_size
- length = max_chunk_size
- remaining = remaining - max_chunk_size
- else
- -- Consume all remaining
- length = remaining
- remaining = 0
- end
- else -- This is a fresh chunk
-
- -- Receive the chunk size
- local str, err = sock:receive("*l")
- if not str then
- co_yield(nil, err)
- end
-
- length = tonumber(str, 16)
-
- if not length then
- co_yield(nil, "unable to read chunksize")
- end
-
- if max_chunk_size and length > max_chunk_size then
- -- Consume up to max_chunk_size
- remaining = length - max_chunk_size
- length = max_chunk_size
- end
- end
-
- if length > 0 then
- local str, err = sock:receive(length)
- if not str then
- co_yield(nil, err)
- end
-
- max_chunk_size = co_yield(str) or default_chunk_size
-
- -- If we're finished with this chunk, read the carriage return.
- if remaining == 0 then
- sock:receive(2) -- read \r\n
- end
- else
- -- Read the last (zero length) chunk's carriage return
- sock:receive(2) -- read \r\n
- end
-
- until length == 0
- end)
-end
-
-
-local function _body_reader(sock, content_length, default_chunk_size)
- return co_wrap(function(max_chunk_size)
- local max_chunk_size = max_chunk_size or default_chunk_size
-
- if not content_length and max_chunk_size then
- -- We have no length, but wish to stream.
- -- HTTP 1.0 with no length will close connection, so read chunks to the end.
- repeat
- local str, err, partial = sock:receive(max_chunk_size)
- if not str and err == "closed" then
- max_chunk_size = tonumber(co_yield(partial, err) or default_chunk_size)
- end
-
- max_chunk_size = tonumber(co_yield(str) or default_chunk_size)
- if max_chunk_size and max_chunk_size < 0 then max_chunk_size = nil end
-
- if not max_chunk_size then
- ngx_log(ngx_ERR, "Buffer size not specified, bailing")
- break
- end
- until not str
-
- elseif not content_length then
- -- We have no length but don't wish to stream.
- -- HTTP 1.0 with no length will close connection, so read to the end.
- co_yield(sock:receive("*a"))
-
- elseif not max_chunk_size then
- -- We have a length and potentially keep-alive, but want everything.
- co_yield(sock:receive(content_length))
-
- else
- -- We have a length and potentially a keep-alive, and wish to stream
- -- the response.
- local received = 0
- repeat
- local length = max_chunk_size
- if received + length > content_length then
- length = content_length - received
- end
-
- if length > 0 then
- local str, err = sock:receive(length)
- if not str then
- max_chunk_size = tonumber(co_yield(nil, err) or default_chunk_size)
- end
- received = received + length
-
- max_chunk_size = tonumber(co_yield(str) or default_chunk_size)
- if max_chunk_size and max_chunk_size < 0 then max_chunk_size = nil end
-
- if not max_chunk_size then
- ngx_log(ngx_ERR, "Buffer size not specified, bailing")
- break
- end
- end
-
- until length == 0
- end
- end)
-end
-
-
-local function _no_body_reader()
- return nil
-end
-
-
-local function _read_body(res)
- local reader = res.body_reader
-
- if not reader then
- -- Most likely HEAD or 304 etc.
- return nil, "no body to be read"
- end
-
- local chunks = {}
- local c = 1
-
- local chunk, err
- repeat
- chunk, err = reader()
-
- if err then
- return nil, err, tbl_concat(chunks) -- Return any data so far.
- end
- if chunk then
- chunks[c] = chunk
- c = c + 1
- end
- until not chunk
-
- return tbl_concat(chunks)
-end
-
-
-local function _trailer_reader(sock)
- return co_wrap(function()
- co_yield(_receive_headers(sock))
- end)
-end
-
-
-local function _read_trailers(res)
- local reader = res.trailer_reader
- if not reader then
- return nil, "no trailers"
- end
-
- local trailers = reader()
- setmetatable(res.headers, { __index = trailers })
-end
-
-
-local function _send_body(sock, body)
- if type(body) == 'function' then
- repeat
- local chunk, err, partial = body()
-
- if chunk then
- local ok,err = sock:send(chunk)
-
- if not ok then
- return nil, err
- end
- elseif err ~= nil then
- return nil, err, partial
- end
-
- until chunk == nil
- elseif body ~= nil then
- local bytes, err = sock:send(body)
-
- if not bytes then
- return nil, err
- end
- end
- return true, nil
-end
-
-
-local function _handle_continue(sock, body)
- local status, version, reason, err = _receive_status(sock)
- if not status then
- return nil, nil, err
- end
-
- -- Only send body if we receive a 100 Continue
- if status == 100 then
- local ok, err = sock:receive("*l") -- Read carriage return
- if not ok then
- return nil, nil, err
- end
- _send_body(sock, body)
- end
- return status, version, err
-end
-
-
-function _M.send_request(self, params)
- -- Apply defaults
- setmetatable(params, { __index = DEFAULT_PARAMS })
-
- local sock = self.sock
- local body = params.body
- local headers = http_headers.new()
-
- local params_headers = params.headers
- if params_headers then
- -- We assign one by one so that the metatable can handle case insensitivity
- -- for us. You can blame the spec for this inefficiency.
- for k,v in pairs(params_headers) do
- headers[k] = v
- end
- end
-
- -- Ensure minimal headers are set
- if type(body) == 'string' and not headers["Content-Length"] then
- headers["Content-Length"] = #body
- end
- if not headers["Host"] then
- if (str_sub(self.host, 1, 5) == "unix:") then
- return nil, "Unable to generate a useful Host header for a unix domain socket. Please provide one."
- end
- -- If we have a port (i.e. not connected to a unix domain socket), and this
- -- port is non-standard, append it to the Host heaer.
- if self.port then
- if self.ssl and self.port ~= 443 then
- headers["Host"] = self.host .. ":" .. self.port
- elseif not self.ssl and self.port ~= 80 then
- headers["Host"] = self.host .. ":" .. self.port
- else
- headers["Host"] = self.host
- end
- else
- headers["Host"] = self.host
- end
- end
- if not headers["User-Agent"] then
- headers["User-Agent"] = _M._USER_AGENT
- end
- if params.version == 1.0 and not headers["Connection"] then
- headers["Connection"] = "Keep-Alive"
- end
-
- params.headers = headers
-
- -- Format and send request
- local req = _format_request(params)
- ngx_log(ngx_DEBUG, "\n", req)
- local bytes, err = sock:send(req)
-
- if not bytes then
- return nil, err
- end
-
- -- Send the request body, unless we expect: continue, in which case
- -- we handle this as part of reading the response.
- if headers["Expect"] ~= "100-continue" then
- local ok, err, partial = _send_body(sock, body)
- if not ok then
- return nil, err, partial
- end
- end
-
- return true
-end
-
-
-function _M.read_response(self, params)
- local sock = self.sock
-
- local status, version, reason, err
-
- -- If we expect: continue, we need to handle this, sending the body if allowed.
- -- If we don't get 100 back, then status is the actual status.
- if params.headers["Expect"] == "100-continue" then
- local _status, _version, _err = _handle_continue(sock, params.body)
- if not _status then
- return nil, _err
- elseif _status ~= 100 then
- status, version, err = _status, _version, _err
- end
- end
-
- -- Just read the status as normal.
- if not status then
- status, version, reason, err = _receive_status(sock)
- if not status then
- return nil, err
- end
- end
-
-
- local res_headers, err = _receive_headers(sock)
- if not res_headers then
- return nil, err
- end
-
- -- keepalive is true by default. Determine if this is correct or not.
- local ok, connection = pcall(str_lower, res_headers["Connection"])
- if ok then
- if (version == 1.1 and connection == "close") or
- (version == 1.0 and connection ~= "keep-alive") then
- self.keepalive = false
- end
- else
- -- no connection header
- if version == 1.0 then
- self.keepalive = false
- end
- end
-
- local body_reader = _no_body_reader
- local trailer_reader, err = nil, nil
- local has_body = false
-
- -- Receive the body_reader
- if _should_receive_body(params.method, status) then
- local ok, encoding = pcall(str_lower, res_headers["Transfer-Encoding"])
- if ok and version == 1.1 and encoding == "chunked" then
- body_reader, err = _chunked_body_reader(sock)
- has_body = true
- else
-
- local ok, length = pcall(tonumber, res_headers["Content-Length"])
- if ok then
- body_reader, err = _body_reader(sock, length)
- has_body = true
- end
- end
- end
-
- if res_headers["Trailer"] then
- trailer_reader, err = _trailer_reader(sock)
- end
-
- if err then
- return nil, err
- else
- return {
- status = status,
- reason = reason,
- headers = res_headers,
- has_body = has_body,
- body_reader = body_reader,
- read_body = _read_body,
- trailer_reader = trailer_reader,
- read_trailers = _read_trailers,
- }
- end
-end
-
-
-function _M.request(self, params)
- local res, err = self:send_request(params)
- if not res then
- return res, err
- else
- return self:read_response(params)
- end
-end
-
-
-function _M.request_pipeline(self, requests)
- for i, params in ipairs(requests) do
- if params.headers and params.headers["Expect"] == "100-continue" then
- return nil, "Cannot pipeline request specifying Expect: 100-continue"
- end
-
- local res, err = self:send_request(params)
- if not res then
- return res, err
- end
- end
-
- local responses = {}
- for i, params in ipairs(requests) do
- responses[i] = setmetatable({
- params = params,
- response_read = false,
- }, {
- -- Read each actual response lazily, at the point the user tries
- -- to access any of the fields.
- __index = function(t, k)
- local res, err
- if t.response_read == false then
- res, err = _M.read_response(self, t.params)
- t.response_read = true
-
- if not res then
- ngx_log(ngx_ERR, err)
- else
- for rk, rv in pairs(res) do
- t[rk] = rv
- end
- end
- end
- return rawget(t, k)
- end,
- })
- end
- return responses
-end
-
-
-function _M.request_uri(self, uri, params)
- if not params then params = {} end
-
- local parsed_uri, err = self:parse_uri(uri)
- if not parsed_uri then
- return nil, err
- end
-
- local scheme, host, port, path = unpack(parsed_uri)
- if not params.path then params.path = path end
-
- local c, err = self:connect(host, port)
- if not c then
- return nil, err
- end
-
- if scheme == "https" then
- local verify = true
- if params.ssl_verify == false then
- verify = false
- end
- local ok, err = self:ssl_handshake(nil, host, verify)
- if not ok then
- return nil, err
- end
- end
-
- local res, err = self:request(params)
- if not res then
- return nil, err
- end
-
- local body, err = res:read_body()
- if not body then
- return nil, err
- end
-
- res.body = body
-
- local ok, err = self:set_keepalive()
- if not ok then
- ngx_log(ngx_ERR, err)
- end
-
- return res, nil
-end
-
-
-function _M.get_client_body_reader(self, chunksize, sock)
- local chunksize = chunksize or 65536
- if not sock then
- local ok, err
- ok, sock, err = pcall(ngx_req_socket)
-
- if not ok then
- return nil, sock -- pcall err
- end
-
- if not sock then
- if err == "no body" then
- return nil
- else
- return nil, err
- end
- end
- end
-
- local headers = ngx_req_get_headers()
- local length = headers.content_length
- local encoding = headers.transfer_encoding
- if length then
- return _body_reader(sock, tonumber(length), chunksize)
- elseif encoding and str_lower(encoding) == 'chunked' then
- -- Not yet supported by ngx_lua but should just work...
- return _chunked_body_reader(sock, chunksize)
- else
- return nil
- end
-end
-
-
-function _M.proxy_request(self, chunksize)
- return self:request{
- method = ngx_req_get_method(),
- path = ngx_re_gsub(ngx_var.uri, "\\s", "%20", "jo") .. ngx_var.is_args .. (ngx_var.query_string or ""),
- body = self:get_client_body_reader(chunksize),
- headers = ngx_req_get_headers(),
- }
-end
-
-
-function _M.proxy_response(self, response, chunksize)
- if not response then
- ngx_log(ngx_ERR, "no response provided")
- return
- end
-
- ngx.status = response.status
-
- -- Filter out hop-by-hop headeres
- for k,v in pairs(response.headers) do
- if not HOP_BY_HOP_HEADERS[str_lower(k)] then
- ngx.header[k] = v
- end
- end
-
- local reader = response.body_reader
- repeat
- local chunk, err = reader(chunksize)
- if err then
- ngx_log(ngx_ERR, err)
- break
- end
-
- if chunk then
- local res, err = ngx.print(chunk)
- if not res then
- ngx_log(ngx_ERR, err)
- break
- end
- end
- until not chunk
-end
-
-
-return _M
diff --git a/msb-core/openresty-ext/src/assembly/resources/openresty/lualib/resty/http_headers.lua b/msb-core/openresty-ext/src/assembly/resources/openresty/lualib/resty/http_headers.lua
deleted file mode 100644
index 24b53b5..0000000
--- a/msb-core/openresty-ext/src/assembly/resources/openresty/lualib/resty/http_headers.lua
+++ /dev/null
@@ -1,62 +0,0 @@
-local rawget, rawset, setmetatable =
- rawget, rawset, setmetatable
-
-local str_gsub = string.gsub
-local str_lower = string.lower
-
-
-local _M = {
- _VERSION = '0.01',
-}
-
-
--- Returns an empty headers table with internalised case normalisation.
--- Supports the same cases as in ngx_lua:
---
--- headers.content_length
--- headers["content-length"]
--- headers["Content-Length"]
-function _M.new(self)
- local mt = {
- normalised = {},
- }
-
-
- mt.__index = function(t, k)
- local k_hyphened = str_gsub(k, "_", "-")
- local matched = rawget(t, k)
- if matched then
- return matched
- else
- local k_normalised = str_lower(k_hyphened)
- return rawget(t, mt.normalised[k_normalised])
- end
- end
-
-
- -- First check the normalised table. If there's no match (first time) add an entry for
- -- our current case in the normalised table. This is to preserve the human (prettier) case
- -- instead of outputting lowercased header names.
- --
- -- If there's a match, we're being updated, just with a different case for the key. We use
- -- the normalised table to give us the original key, and perorm a rawset().
- mt.__newindex = function(t, k, v)
- -- we support underscore syntax, so always hyphenate.
- local k_hyphened = str_gsub(k, "_", "-")
-
- -- lowercase hyphenated is "normalised"
- local k_normalised = str_lower(k_hyphened)
-
- if not mt.normalised[k_normalised] then
- mt.normalised[k_normalised] = k_hyphened
- rawset(t, k_hyphened, v)
- else
- rawset(t, mt.normalised[k_normalised], v)
- end
- end
-
- return setmetatable({}, mt)
-end
-
-
-return _M
diff --git a/msb-core/openresty-ext/src/assembly/resources/openresty/nginx/conf/nginx.conf b/msb-core/openresty-ext/src/assembly/resources/openresty/nginx/conf/nginx.conf
deleted file mode 100644
index ea434b7..0000000
--- a/msb-core/openresty-ext/src/assembly/resources/openresty/nginx/conf/nginx.conf
+++ /dev/null
@@ -1,72 +0,0 @@
-#
-# Copyright 2016 2015-2016 ZTE, Inc. and others. All rights reserved.
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-# Author: Zhaoxing Meng
-# email: meng.zhaoxing1@zte.com.cn
-#
-
-#user xfs xfs;
-worker_processes 1;
-
-error_log logs/error.log warn;
-pid logs/nginx.pid;
-
-events {
- worker_connections 1024;
-}
-
-http {
- # Basic Settings
- default_type application/octet-stream;
- sendfile on;
- tcp_nopush on;
- server_names_hash_bucket_size 128;
- keepalive_timeout 120s;
-
- #the maximum allowed size of the client request body,current 10G
- client_max_body_size 10240m;
- client_body_buffer_size 128k;
-
- #set the time wait for connect to proxy_pass target,avoid waiting too long
- proxy_connect_timeout 10s;
- proxy_read_timeout 120s;
- proxy_send_timeout 120s;
- proxy_set_header X-Real-IP $remote_addr;
- proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
- proxy_set_header Host $host;
- proxy_buffers 4 32k;
-
- #set the nginx_cache parameter
- proxy_cache_path temp/proxy_cache levels=1:2 keys_zone=nginx_cache:256m inactive=1d max_size=1g;
-
- # Logging
- access_log off;
-
- # Lua settings
- lua_package_path "$prefix/../lualib/?.lua;$prefix/luaext/?.lua;;";
- lua_package_cpath "$prefix/../lualib/?.so;;";
-
- lua_shared_dict ceryx 10M;
- lua_code_cache on;
-
- # see https://github.com/openresty/lua-resty-core
- #init_by_lua '
- # require "resty.core"
- #';
-
- # Includes
- include mime.types;
- include ../sites-enabled/*.conf;
-}
diff --git a/msb-core/openresty-ext/src/assembly/resources/openresty/nginx/logs/placeholder.txt b/msb-core/openresty-ext/src/assembly/resources/openresty/nginx/logs/placeholder.txt
deleted file mode 100644
index e69de29..0000000
--- a/msb-core/openresty-ext/src/assembly/resources/openresty/nginx/logs/placeholder.txt
+++ /dev/null
diff --git a/msb-core/openresty-ext/src/assembly/resources/openresty/nginx/luaext/customrouter.lua b/msb-core/openresty-ext/src/assembly/resources/openresty/nginx/luaext/customrouter.lua
deleted file mode 100644
index 46d0b8a..0000000
--- a/msb-core/openresty-ext/src/assembly/resources/openresty/nginx/luaext/customrouter.lua
+++ /dev/null
@@ -1,187 +0,0 @@
---[[
-
- Copyright 2016 ZTE Corporation.
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
-
- Author: Zhaoxing Meng
- email: meng.zhaoxing1@zte.com.cn
-
-]]
--- put red into the connection pool of size 100,
--- with 10 seconds max idle time
-local function close_redis(red)
- if not red then
- return
- end
- --release connection to the pool
- local pool_max_idle_time = 10000
- local pool_size = 100
- local ok, err = red:set_keepalive(pool_max_idle_time, pool_size)
- if not ok then
- ngx.log(ngx.ERR, "set keepalive error:", err)
- end
- return
-end
-
-local function query_ipurl_updatecache(red,key)
- local keyprefix = "msb:routing:custom:"..key
-
-
- local infokey=keyprefix..":info"
- -- first of all check whether the status is 1(enabled)
- local status = red:hget(infokey,"status")
- if not (status=="1") then
- ngx.log(ngx.WARN, key.."is disabled.status=", status)
- return nil
- end
-
- -- Try to get url for key
- local url, err = red:hget(infokey,"url")
- ngx.log(ngx.WARN, "==url:", url)
- if not url or url == ngx.null then
- return nil
- end
-
- -- Try to get ip:port for key
- local serverkey=keyprefix..":lb:server1"
- local server, err = red:hget(serverkey,"ip")..":"..red:hget(serverkey,"port")
- ngx.log(ngx.WARN, "==server:", server)
- if not server or server == ngx.null then
- return nil
- end
-
- -- get the local cache
- local cache = ngx.shared.ceryx
- local uri = ngx.var.uri
- -- Save found key to local cache for 5 seconds
- cache:set("custom:key:"..uri,key,5)
- cache:set("custom:server:"..uri,server,5)
- cache:set("custom:url:"..uri,url,5)
-
- ngx.var.key = key
- ngx.var.server = server
- ngx.var.url = url
- return true
-end
-
-local function query_allkeys_updatecache(red)
- -- Try to get all keys start with "msb:routing:custom:"
- local allkeys, err = red:keys("msb:routing:custom:*")
- if not allkeys or allkeys == ngx.null then
- ngx.log(ngx.ERR,err)
- return ""
- end
- local key_set={}
- for key, value in ipairs(allkeys) do
- name = string.gsub(string.gsub(string.gsub(value,"msb:routing:custom:",""),":info",""),":lb:server1","")
- key_set[name]=true
- end
- local key_table = {}
- local index = 1
- for key,_ in pairs(key_set) do
- key_table[index] = key
- index = index + 1
- end
- table.sort(key_table, function (a, b)
- return a > b
- end)
-
- local servicenames = ""
- local delimiter = "<>"
- for i=1,#key_table do
- servicenames=servicenames..key_table[i]..delimiter
- end
-
- -- get the local cache
- local cache = ngx.shared.ceryx
- -- Save all keys to local cache for 30 seconds(0.5 minutes)
- cache:set("customrouter:allkeys", servicenames, 30)
- return servicenames;
-end
-
-local function query_router_info()
- local uri = ngx.var.uri
- ngx.log(ngx.WARN, "==uri:", uri)
-
- -- Check if key exists in local cache
- local cache = ngx.shared.ceryx
- local key, flags = cache:get("custom:key:"..uri)
- local server, flags = cache:get("custom:server:"..uri)
- local url, flags = cache:get("custom:url:"..uri)
- if key and server and url then
- ngx.var.key = key
- ngx.var.server = server
- ngx.var.url = url
- ngx.log(ngx.WARN, "==using custom cache:", key.."&&"..server.."&&"..url)
- return
- end
-
- local redis = require "resty.redis"
- local red = redis:new()
- red:set_timeout(1000) -- 1000 ms
- local redis_host = "127.0.0.1"
- local redis_port = 6379
- local res, err = red:connect(redis_host, redis_port)
-
- -- Return if could not connect to Redis
- if not res then
- ngx.log(ngx.ERR, "connect to redis error:", err)
- return
- end
-
- -- Check if all servicenames exists in local cache
- local servicenames, flags = cache:get("customrouter:allkeys")
- if servicenames then
- ngx.log(ngx.WARN,"==get all keys from cache:",servicenames)
- else
- servicenames = query_allkeys_updatecache(red)
- end
-
- local delimiter = "<>"
- for key in string.gmatch(servicenames,"(.-)"..delimiter) do
- ngx.log(ngx.WARN, "==key_table key:", key)
- local from, to, err = ngx.re.find(uri, "^"..key.."(/(.*))?$", "jo")
- if from then
- ngx.log(ngx.WARN,"Matched! start-end:",from,"-",to)
- local result = query_ipurl_updatecache(red,key)
- if result then
- break
- end
- else
- ngx.log(ngx.WARN,"not Matched")
- if err then
- ngx.log(ngx.WARN,"ngx.re.find throw error: ",err)
- return
- end
- end
- end
-
- return close_redis(red)
-end
-
-local function rewrite_router_url()
- local server=ngx.var.server
- if server=="fallback" then
- ngx.status = ngx.HTTP_NOT_FOUND
- ngx.exit(ngx.status)
- end
- local url=ngx.var.url
- local key=ngx.var.key
- local rewriteduri = ngx.re.sub(ngx.var.uri, "^"..key.."(.*)", url.."$1", "o")
- ngx.log(ngx.WARN, "==rewrited uri:", rewriteduri)
- ngx.req.set_uri(rewriteduri)
-end
-
-query_router_info()
-rewrite_router_url() \ No newline at end of file
diff --git a/msb-core/openresty-ext/src/assembly/resources/openresty/nginx/luaext/execute_auth.lua b/msb-core/openresty-ext/src/assembly/resources/openresty/nginx/luaext/execute_auth.lua
deleted file mode 100644
index 946f561..0000000
--- a/msb-core/openresty-ext/src/assembly/resources/openresty/nginx/luaext/execute_auth.lua
+++ /dev/null
@@ -1,25 +0,0 @@
---[[
-
- Copyright 2016 ZTE Corporation.
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
-
- Author: Zhaoxing Meng
- email: meng.zhaoxing1@zte.com.cn
-
-]]
-local auth_plugin = require('plugins.auth')
-local msbconf = require('msbconf')
-if(msbconf.auth_plugin_status == "on") then
- auth_plugin.access()
-end \ No newline at end of file
diff --git a/msb-core/openresty-ext/src/assembly/resources/openresty/nginx/luaext/msbconf.lua b/msb-core/openresty-ext/src/assembly/resources/openresty/nginx/luaext/msbconf.lua
deleted file mode 100644
index 48b04c7..0000000
--- a/msb-core/openresty-ext/src/assembly/resources/openresty/nginx/luaext/msbconf.lua
+++ /dev/null
@@ -1,26 +0,0 @@
---[[
-
- Copyright 2016 ZTE Corporation.
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
-
- Author: Zhaoxing Meng
- email: meng.zhaoxing1@zte.com.cn
-
-]]
-local _M = {}
-_M._VERSION = '1.0.0'
-
-return {
- auth_plugin_status = "off"
-} \ No newline at end of file
diff --git a/msb-core/openresty-ext/src/assembly/resources/openresty/nginx/luaext/openoadminrouter.lua b/msb-core/openresty-ext/src/assembly/resources/openresty/nginx/luaext/openoadminrouter.lua
deleted file mode 100644
index 938a017..0000000
--- a/msb-core/openresty-ext/src/assembly/resources/openresty/nginx/luaext/openoadminrouter.lua
+++ /dev/null
@@ -1,110 +0,0 @@
---[[
-
- Copyright 2016 ZTE Corporation.
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
-
- Author: Zhaoxing Meng
- email: meng.zhaoxing1@zte.com.cn
-
-]]
--- put red into the connection pool of size 100,
--- with 10 seconds max idle time
-local function close_redis(red)
- if not red then
- return
- end
- --release connection to the pool
- local pool_max_idle_time = 10000
- local pool_size = 100
- local ok, err = red:set_keepalive(pool_max_idle_time, pool_size)
- if not ok then
- ngx.log(ngx.ERR, "set keepalive error:", err)
- end
- return
-end
-
-local function rewrite_admin_url()
- local apiserver=ngx.var.apiserver
- if apiserver=="fallback" then
- ngx.status = ngx.HTTP_NOT_FOUND
- ngx.exit(ngx.status)
- end
- local adminurl=ngx.var.adminurl
- local uri = ngx.re.sub(ngx.var.uri, "^/admin/([^/]+)(/[Vv][^/]*)?(.*)", adminurl.."$3", "o")
- ngx.req.set_uri(uri)
-end
-
-local function query_admin_info()
- local apiserver = ngx.var.apiserver
- local apiname = ngx.var.apiname
- local apiversion = ngx.var.apiversion
- apiversion=string.sub(apiversion,2,string.len(apiversion))
-
- -- Check if key exists in local cache
- local cache = ngx.shared.ceryx
- local server, flags = cache:get("server:admin:"..apiname..":"..apiversion)
- local url, flags = cache:get("url:admin:"..apiname..":"..apiversion)
- if server and url then
- ngx.var.apiserver = server
- ngx.var.adminurl = url
- ngx.log(ngx.WARN, "==using admin cache:", server.."&&"..url)
- return
- end
-
- local redis = require "resty.redis"
- local red = redis:new()
- red:set_timeout(1000) -- 1000 ms
- local redis_host = "127.0.0.1"
- local redis_port = 6379
- local res, err = red:connect(redis_host, redis_port)
-
- -- Return if could not connect to Redis
- if not res then
- ngx.log(ngx.ERR, "connect to redis error:", err)
- return
- end
-
- -- Construct Redis key
- local prefix = "msb"
- local keyprefix = prefix..":routing:api:"..apiname..":"..apiversion
-
-
- -- Try to get ip:port for apiname
- local serverkey=keyprefix..":lb:server1"
- local server, err = red:hget(serverkey,"ip")..":"..red:hget(serverkey,"port")
- ngx.log(ngx.WARN, "==adminserver:", server)
- if not server or server == ngx.null then
- return close_redis(red)
- end
-
- -- Try to get admin url for apiname
- local infokey=keyprefix..":info"
- local url, err = red:hget(infokey,"metricsUrl")
- ngx.log(ngx.WARN, "==adminurl:", url)
- if not url or url == ngx.null then
- return close_redis(red)
- end
-
- -- Save found key to local cache for 5 seconds
- cache:set("server:admin:"..apiname..":"..apiversion, server, 5)
- cache:set("url:admin:"..apiname..":"..apiversion, url, 5)
-
- ngx.log(ngx.WARN, "==admin result:", server.."&&"..url)
- ngx.var.apiserver = server
- ngx.var.adminurl = url
-
- return close_redis(red)
-end
-query_admin_info()
-rewrite_admin_url() \ No newline at end of file
diff --git a/msb-core/openresty-ext/src/assembly/resources/openresty/nginx/luaext/openoapijsonrouter.lua b/msb-core/openresty-ext/src/assembly/resources/openresty/nginx/luaext/openoapijsonrouter.lua
deleted file mode 100644
index 9255a65..0000000
--- a/msb-core/openresty-ext/src/assembly/resources/openresty/nginx/luaext/openoapijsonrouter.lua
+++ /dev/null
@@ -1,110 +0,0 @@
---[[
-
- Copyright 2016 ZTE Corporation.
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
-
- Author: Zhaoxing Meng
- email: meng.zhaoxing1@zte.com.cn
-
-]]
--- put red into the connection pool of size 100,
--- with 10 seconds max idle time
-local function close_redis(red)
- if not red then
- return
- end
- --release connection to the pool
- local pool_max_idle_time = 10000
- local pool_size = 100
- local ok, err = red:set_keepalive(pool_max_idle_time, pool_size)
- if not ok then
- ngx.log(ngx.ERR, "set keepalive error:", err)
- end
- return
-end
-
-local function rewrite_apijson_url()
- local apiserver=ngx.var.apiserver
- if apiserver=="fallback" then
- ngx.status = ngx.HTTP_NOT_FOUND
- ngx.exit(ngx.status)
- end
- local apijsonurl=ngx.var.apijsonurl
- local uri = ngx.re.sub(ngx.var.uri, "^/apijson/([^/]+)(/[Vv][^/]*)?(.*)", apijsonurl.."$3", "o")
- ngx.req.set_uri(uri)
-end
-
-local function query_apijson_info()
- local apiserver = ngx.var.apiserver
- local apiname = ngx.var.apiname
- local apiversion = ngx.var.apiversion
- apiversion=string.sub(apiversion,2,string.len(apiversion))
-
- -- Check if key exists in local cache
- local cache = ngx.shared.ceryx
- local server, flags = cache:get("server:apijson:"..apiname..":"..apiversion)
- local url, flags = cache:get("url:apijson:"..apiname..":"..apiversion)
- if server and url then
- ngx.var.apiserver = server
- ngx.var.apijsonurl = url
- ngx.log(ngx.WARN, "==using apijson cache:", server.."&&"..url)
- return
- end
-
- local redis = require "resty.redis"
- local red = redis:new()
- red:set_timeout(1000) -- 1000 ms
- local redis_host = "127.0.0.1"
- local redis_port = 6379
- local res, err = red:connect(redis_host, redis_port)
-
- -- Return if could not connect to Redis
- if not res then
- ngx.log(ngx.ERR, "connect to redis error:", err)
- return
- end
-
- -- Construct Redis key
- local prefix = "msb"
- local keyprefix = prefix..":routing:api:"..apiname..":"..apiversion
-
-
- -- Try to get ip:port for apiname
- local serverkey=keyprefix..":lb:server1"
- local server, err = red:hget(serverkey,"ip")..":"..red:hget(serverkey,"port")
- ngx.log(ngx.WARN, "==apijsonserver:", server)
- if not server or server == ngx.null then
- return close_redis(red)
- end
-
- -- Try to get apijson url for apiname
- local infokey=keyprefix..":info"
- local url, err = red:hget(infokey,"apijson")
- ngx.log(ngx.WARN, "==apijsonurl:", url)
- if not url or url == ngx.null then
- return close_redis(red)
- end
-
- -- Save found key to local cache for 5 seconds
- cache:set("server:apijson:"..apiname..":"..apiversion, server, 5)
- cache:set("url:apijson:"..apiname..":"..apiversion, url, 5)
-
- ngx.log(ngx.WARN, "==apijson result:", server.."&&"..url)
- ngx.var.apiserver = server
- ngx.var.apijsonurl = url
-
- return close_redis(red)
-end
-query_apijson_info()
-rewrite_apijson_url() \ No newline at end of file
diff --git a/msb-core/openresty-ext/src/assembly/resources/openresty/nginx/luaext/openoapirouter.lua b/msb-core/openresty-ext/src/assembly/resources/openresty/nginx/luaext/openoapirouter.lua
deleted file mode 100644
index 717bd1a..0000000
--- a/msb-core/openresty-ext/src/assembly/resources/openresty/nginx/luaext/openoapirouter.lua
+++ /dev/null
@@ -1,117 +0,0 @@
---[[
-
- Copyright 2016 ZTE Corporation.
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
-
- Author: Zhaoxing Meng
- email: meng.zhaoxing1@zte.com.cn
-
-]]
--- put red into the connection pool of size 100,
--- with 10 seconds max idle time
-local function close_redis(red)
- if not red then
- return
- end
- --release connection to the pool
- local pool_max_idle_time = 10000
- local pool_size = 100
- local ok, err = red:set_keepalive(pool_max_idle_time, pool_size)
- if not ok then
- ngx.log(ngx.ERR, "set keepalive error:", err)
- end
- return
-end
-
-local function rewrite_api_url()
- local apiserver=ngx.var.apiserver
- if apiserver=="fallback" then
- ngx.status = ngx.HTTP_NOT_FOUND
- ngx.exit(ngx.status)
- end
- local apiurl=ngx.var.apiurl
- local uri = ngx.re.sub(ngx.var.uri, "^/openoapi/([^/]+)(/[Vv][^/]*)?(.*)", apiurl.."$3", "o")
- ngx.req.set_uri(uri)
-end
-
-local function query_api_info()
- local apiserver = ngx.var.apiserver
- local apiname = ngx.var.apiname
- local apiversion = ngx.var.apiversion
- apiversion=string.sub(apiversion,2,string.len(apiversion))
-
- -- Check if key exists in local cache
- local cache = ngx.shared.ceryx
- local server, flags = cache:get("server:api:"..apiname..":"..apiversion)
- local url, flags = cache:get("url:api:"..apiname..":"..apiversion)
- if server and url then
- ngx.var.apiserver = server
- ngx.var.apiurl = url
- ngx.log(ngx.WARN, "==using api cache:", server.."&&"..url)
- return
- end
-
- local redis = require "resty.redis"
- local red = redis:new()
- red:set_timeout(1000) -- 1000 ms
- local redis_host = "127.0.0.1"
- local redis_port = 6379
- local res, err = red:connect(redis_host, redis_port)
-
- -- Return if could not connect to Redis
- if not res then
- ngx.log(ngx.ERR, "connect to redis error:", err)
- return
- end
-
- -- Construct Redis key
- local prefix = "msb"
- local keyprefix = prefix..":routing:api:"..apiname..":"..apiversion
-
- local infokey=keyprefix..":info"
- -- first of all check whether the status is 1(enabled)
- local status = red:hget(infokey,"status")
- if not (status=="1") then
- ngx.log(ngx.WARN, keyprefix.."is disabled.status=", status)
- return close_redis(red)
- end
-
- -- Try to get url for apiname
- local url, err = red:hget(infokey,"url")
- ngx.log(ngx.WARN, "==url:", url)
- if not url or url == ngx.null then
- return close_redis(red)
- end
-
- -- Try to get ip:port for apiname
- local serverkey=keyprefix..":lb:server1"
- local server, err = red:hget(serverkey,"ip")..":"..red:hget(serverkey,"port")
- ngx.log(ngx.WARN, "==server:", server)
- if not server or server == ngx.null then
- return close_redis(red)
- end
-
-
- -- Save found key to local cache for 5 seconds
- cache:set("server:api:"..apiname..":"..apiversion, server, 5)
- cache:set("url:api:"..apiname..":"..apiversion, url, 5)
-
- ngx.log(ngx.WARN, "==api result:", server.."&&"..url)
- ngx.var.apiserver = server
- ngx.var.apiurl = url
-
- return close_redis(red)
-end
-query_api_info()
-rewrite_api_url() \ No newline at end of file
diff --git a/msb-core/openresty-ext/src/assembly/resources/openresty/nginx/luaext/openouirouter.lua b/msb-core/openresty-ext/src/assembly/resources/openresty/nginx/luaext/openouirouter.lua
deleted file mode 100644
index c36057e..0000000
--- a/msb-core/openresty-ext/src/assembly/resources/openresty/nginx/luaext/openouirouter.lua
+++ /dev/null
@@ -1,115 +0,0 @@
---[[
-
- Copyright 2016 ZTE Corporation.
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
-
- Author: Zhaoxing Meng
- email: meng.zhaoxing1@zte.com.cn
-
-]]
--- put red into the connection pool of size 100,
--- with 10 seconds max idle time
-local function close_redis(red)
- if not red then
- return
- end
- --release connection to the pool
- local pool_max_idle_time = 10000
- local pool_size = 100
- local ok, err = red:set_keepalive(pool_max_idle_time, pool_size)
- if not ok then
- ngx.log(ngx.ERR, "set keepalive error:", err)
- end
- return
-end
-
-local function rewrite_iui_url()
- local iuiserver=ngx.var.iuiserver
- if iuiserver=="fallback" then
- ngx.status = ngx.HTTP_NOT_FOUND
- ngx.exit(ngx.status)
- end
- local iuiurl=ngx.var.iuiurl
- local uri = ngx.re.sub(ngx.var.uri, "^/openoui/([^/]+)(.*)", iuiurl.."$2", "o")
- ngx.req.set_uri(uri)
-end
-
-local function query_iui_info()
- local iuiserver = ngx.var.iuiserver
- local iuiname = ngx.var.iuiname
-
- -- Check if key exists in local cache
- local cache = ngx.shared.ceryx
- local server, flags = cache:get("server:iui:"..iuiname)
- local url, flags = cache:get("url:iui:"..iuiname)
- if server and url then
- ngx.var.iuiserver = server
- ngx.var.iuiurl = url
- ngx.log(ngx.WARN, "==using iui cache:", server.."&&"..url)
- return
- end
-
- local redis = require "resty.redis"
- local red = redis:new()
- red:set_timeout(1000) -- 1000 ms
- local redis_host = "127.0.0.1"
- local redis_port = 6379
- local res, err = red:connect(redis_host, redis_port)
-
- -- Return if could not connect to Redis
- if not res then
- ngx.log(ngx.ERR, "connect to redis error:", err)
- return
- end
-
- -- Construct Redis key
- local prefix = "msb"
- local keyprefix = prefix..":routing:iui:"..iuiname
-
- local infokey=keyprefix..":info"
- -- first of all check whether the status is 1(enabled)
- local status = red:hget(infokey,"status")
- if not (status=="1") then
- ngx.log(ngx.WARN, keyprefix.."is disabled.status=", status)
- return close_redis(red)
- end
-
- -- Try to get url for iuiname
- local url, err = red:hget(infokey,"url")
- ngx.log(ngx.WARN, "==url:", url)
- if not url or url == ngx.null then
- return close_redis(red)
- end
-
- -- Try to get ip:port for iuiname
- local serverkey=keyprefix..":lb:server1"
- local server, err = red:hget(serverkey,"ip")..":"..red:hget(serverkey,"port")
- ngx.log(ngx.WARN, "==server:", server)
- if not server or server == ngx.null then
- return close_redis(red)
- end
-
-
- -- Save found key to local cache for 5 seconds
- cache:set("server:iui:"..iuiname, server, 5)
- cache:set("url:iui:"..iuiname, url, 5)
-
- ngx.log(ngx.WARN, "==iui result:", server.."&&"..url)
- ngx.var.iuiserver = server
- ngx.var.iuiurl = url
-
- return close_redis(red)
-end
-query_iui_info()
-rewrite_iui_url() \ No newline at end of file
diff --git a/msb-core/openresty-ext/src/assembly/resources/openresty/nginx/luaext/plugins/auth.lua b/msb-core/openresty-ext/src/assembly/resources/openresty/nginx/luaext/plugins/auth.lua
deleted file mode 100644
index 1572060..0000000
--- a/msb-core/openresty-ext/src/assembly/resources/openresty/nginx/luaext/plugins/auth.lua
+++ /dev/null
@@ -1,171 +0,0 @@
---[[
-
- Copyright 2016 2015-2016 OEPN-O. and others. All rights reserved.
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
-
-]]
-local _M = {}
-_M._VERSION = '1.0.0'
-local auth_url = '/openoapi/auth/v1';
-local auth_token_url = auth_url..'/tokens';
-local auth_token_key = "X-Auth-Token";
-local redirect_url = "/openoui/common/login.html"
-
-local white_list= {
- auth_token_url,
- redirect_url,
- '/openoui/common/css',
- '/openoui/common/js',
- '/openoui/common/thirdparty',
- '/openoui/common/i18n',
- '/openoui/common/image',
- '/openoui/common/login.html',
- '/openoui/common/json'
-};
-
-local function verify_value(value)
- if (nil == value or 0 == #value)
- then
- return false;
- else
- return true;
- end
-end
-
---[[checks str2 starts with str1]]--
-local function starts_with(str1, str2)
- return string.sub(str2, 1, string.len(str1)) == str1;
-end
-
--- Check and ignore the request if it is from auth module.--
-local function is_white_list(url)
- for i, value in ipairs(white_list)
- do
- if (starts_with(value, url))
- then
- return true;
- end
- end
- return false;
-end
-
-local function set_header(tokens)
- for key,value in pairs(tokens)
- do
- ngx.log (ngx.ERR, "Headers: ", key, value);
- ngx.req.set_header(key, value);
- end
-
-end
---[[ validates the token with auth ]]--
-local function validate_token(tokens)
- -- auth expects the token in header.
- set_header(tokens);
- -- call auth token check url to validate.
- local res = ngx.location.capture(auth_token_url, { method = ngx.HTTP_HEAD});
- ngx.log (ngx.ERR, "Auth Result:", res.status);
- if (nil == res)
- then
- return false;
- end
- return (ngx.HTTP_OK == res.status);
-end
-
---[[ get auth token from cookies ]]--
-local function get_cookies()
- local cookie_name = "cookie_"..auth_token_key;
- local auth_token = ngx.var[cookie_name];
- local tokens = {};
- -- verify whether its empty or null.
- if (verify_value(auth_token))
- then
- ngx.log(ngx.ERR, "token : ", auth_token );
- tokens[auth_token_key] = auth_token;
- end
- return tokens;
-end
-
-local function get_service_url()
- -- get host.
- local host = ngx.var.host;
- --get port
- local port = ":"..ngx.var.server_port;
- local proto = "";
- --get protocol
- if (ngx.var.https == "on")
- then
- proto = "https://";
- else
- proto = "http://";
- end
- --get url
- local uri = ngx.var.uri;
- --form complete service url.
- --local complete_url = proto..host..port..url
- local complete_url = uri;
- local service = "?service="
- --add arguments if any.
- if ngx.var.args ~= nil
- then
- complete_url = complete_url.."?"..ngx.var.args;
- end
- ngx.log(ngx.ERR, "service url : ", complete_url);
- return service..ngx.escape_uri(complete_url);
-end
-
-local function redirect(url)
- local service = get_service_url();
- ngx.log(ngx.ERR, "redirect: ", url..service);
- ngx.redirect(url..service);
-end
-
-function _M.access()
-
- ngx.log(ngx.ERR, "==============start check token===============: ");
- local url = ngx.var.uri;
- ngx.log(ngx.ERR, "Url : ", url);
-
- -- ignore token validation if auth request.
- if (is_white_list(url))
- then
- return;
- end
-
-
-
- -- get auth token from cookies.
- local auth_tokens = get_cookies();
-
- -- check if auth token is empty,
- -- redirect it to login page in that case.
- if (nil == next(auth_tokens))
- then
- ngx.log(ngx.ERR, "Token Invalidate, redirect to ", redirect_url);
- redirect(redirect_url);
- return;
- end
-
- -- validate the token with auth module.
- -- continue if success, else redirect to login page.
- if(validate_token(auth_tokens))
- then
- ngx.log(ngx.ERR, "Token Validate.");
- return;
- else
- redirect(redirect_url);
- end
- ngx.log(ngx.INFO, "running auth plugin")
- end
-
-return _M \ No newline at end of file
diff --git a/msb-core/openresty-ext/src/assembly/resources/openresty/nginx/luaext/plugins/driver_manager.lua b/msb-core/openresty-ext/src/assembly/resources/openresty/nginx/luaext/plugins/driver_manager.lua
deleted file mode 100644
index 45d327d..0000000
--- a/msb-core/openresty-ext/src/assembly/resources/openresty/nginx/luaext/plugins/driver_manager.lua
+++ /dev/null
@@ -1,127 +0,0 @@
---[[
-
- Copyright 2016 2015-2016 OPEN-O. and others. All rights reserved.
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
-
-]]
-local _M = {}
-_M._VERSION = '1.0.0'
-local _HEADER = "X-Driver-Parameter"
-
---extract driver header if present in request
-local function get_driver_header()
- local header = ""
- local driver_header = ngx.req.get_headers()[_HEADER]
- if (driver_header ~= nil)
- then
- header = driver_header
- end
- return header
-end
-
--- generate query url
-local function get_query_url(x_driver_header)
- local drivermgr_uri = '/openoapi/drivermgr/v1/drivers'
- local url = drivermgr_uri.."?".._HEADER.."="..tostring(ngx.escape_uri(x_driver_header)).."&service_url="..ngx.var.uri
- return url
-end
-
--- generate driver url
-local function get_driver_url(driver_header)
- local cjson = require "cjson"
- local query_url = get_query_url(driver_header)
- local driver_header_value = get_driver_header();
- ngx.req.clear_header(_HEADER)
- local res = ngx.location.capture(query_url, { method = ngx.HTTP_GET})
- ngx.req.set_header(_HEADER, driver_header_value);
- ngx.log (ngx.ERR, "Driver manager resp url : ", tostring(res.body))
- if (res.status == 200 and res.body ~= nil and res.body ~= '')
- then
- return tostring(cjson.new().decode(res.body).url)
- else
- return ''
- end
-end
-
--- get the ori query param string
-local function get_ori_query()
- local args = ngx.req.get_uri_args();
- local ori_query_param = "?"..ngx.encode_args(args);
- ngx.log(ngx.ERR, "The original request query parameter is ", ori_query_param);
- return ori_query_param;
-end
-
--- get headers
-local function get_headers()
- local headers = {}
- local h = ngx.req.get_headers()
- for k, value in pairs(h)
- do
- headers[k] = value
- end
- return headers
-end
-
-local function get_body_params()
- ngx.req.read_body()
- local actual_body = ""
- local body_param = ngx.req.get_body_data()
- if(body_param ~= nil)
- then
- actual_body = tostring(body_param)
- end
- return actual_body
-end
-
-function _M.access()
- ngx.log(ngx.ERR, "DRIVER MANAGER LUA", "***********************")
-
- -- extract X-Driver-Parameter header param
- local driver_header = get_driver_header()
- ngx.log(ngx.ERR, "X-Driver-Parameter: ", driver_header)
-
-
- -- ignore driver redirection if not driver manager request.
- if (driver_header ~= "")
- then
-
- local driver_url = get_driver_url(driver_header)..get_ori_query();
- ngx.log (ngx.ERR, "Driver manager URl:: ", driver_url)
-
- local http = require "resty.http"
- local actual_headers = get_headers()
- local actual_body = get_body_params()
-
- ngx.log(ngx.ERR, "HTTP request to driver... ", " Request to driver manager")
- local httpc = http.new();
- httpc:set_timeout(300000);
- local res, err = httpc:request_uri(driver_url, {
- method = ngx.req.get_method(),
- body = actual_body,
- headers = actual_headers
- })
-
- if not res then
- ngx.say("Request to driver failed : ", err)
- return
- end
- ngx.log(ngx.ERR, "Response from driver : ", tostring(res.body))
- ngx.say(res.body)
-
- else
- ngx.log(ngx.ERR, "X-Driver-Parameter not present", " Redirect to same url")
- end
-end
-
-return _M \ No newline at end of file
diff --git a/msb-core/openresty-ext/src/assembly/resources/openresty/nginx/luaext/setnocacheflag.lua b/msb-core/openresty-ext/src/assembly/resources/openresty/nginx/luaext/setnocacheflag.lua
deleted file mode 100644
index 8b57660..0000000
--- a/msb-core/openresty-ext/src/assembly/resources/openresty/nginx/luaext/setnocacheflag.lua
+++ /dev/null
@@ -1,29 +0,0 @@
---[[
-
- Copyright 2016 ZTE Corporation.
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
-
- Author: Zhaoxing Meng
- email: meng.zhaoxing1@zte.com.cn
-
-]]
-local from, to, err = ngx.re.find(ngx.var.uri, "\\.(gif|jpg|jpeg|png|bmp|ico)$", "jo")
---Based on the request file type to determine whether to cache
-if from then
- --use cache
- return 0
-else
- --do not use cache
- return 1
-end \ No newline at end of file
diff --git a/msb-core/openresty-ext/src/assembly/resources/openresty/nginx/sites-enabled/openomsb.conf b/msb-core/openresty-ext/src/assembly/resources/openresty/nginx/sites-enabled/openomsb.conf
deleted file mode 100644
index ad0bf1c..0000000
--- a/msb-core/openresty-ext/src/assembly/resources/openresty/nginx/sites-enabled/openomsb.conf
+++ /dev/null
@@ -1,181 +0,0 @@
-#
-# Copyright 2016 2015-2016 ZTE, Inc. and others. All rights reserved.
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-# Author: Zhaoxing Meng
-# email: meng.zhaoxing1@zte.com.cn
-#
-
-server {
- listen 80;
- default_type text/html;
- add_header X-Cache-Status $upstream_cache_status;
-
- location = / {
- rewrite ^ /openoui/microservices/index.html redirect;
- }
-
- location = /openoui/microservices {
- rewrite /openoui/microservices /openoui/microservices/index.html redirect;
- }
-
- location / {
- set $server "fallback";
- set $url "";
- set $key "";
-
- # Lua files
- rewrite_by_lua_file luaext/customrouter.lua;
- access_by_lua_file luaext/execute_auth.lua;
-
- proxy_pass http://$server;
- }
- location ~ ^/api/(.*) {
- rewrite ^/api/(.*) /openoapi/$1 last;
- }
- location ~ ^/iui/(.*) {
- rewrite ^/iui/(.*) /openoui/$1 last;
- }
-
- location ^~ /openoapi/driver_ {
- set $backend "";
- # Lua files
- access_by_lua_block {
- local driver_manager = require('plugins.driver_manager')
- driver_manager.access()
- }
- proxy_pass http://$backend;
- }
- location ~ ^/openoapi/([^/]+)(/[Vv][^/]*)?(.*) {
-
- #Send requests to Driver Mgr. if 'X_Driver_Parameter' header found in the request
- if ($http_X_Driver_Parameter) {
- rewrite_by_lua_block {
- local driver_manager = require('plugins.driver_manager')
- driver_manager.access()
- }
- }
-
- set $apiname $1;
- set $apiversion $2;
- set $apiserver "fallback";
- set $apiurl "";
-
- # Lua files
- rewrite_by_lua_file luaext/openoapirouter.lua;
- access_by_lua_file luaext/execute_auth.lua;
-
- proxy_pass http://$apiserver;
- }
-
- location ~ ^/openoui/([^/]+)(.*) {
- location ~* ^/iui/([^/]+)(.*)\.(?:png|jpg|jpeg|js|css|html|gif|ico|bmp|woff)$ {
- set $iuiname $1;
- set $iuiparam $2;
- set $iuiserver "fallback";
- set $iuiurl "";
-
- # Lua files
- rewrite_by_lua_file luaext/openouirouter.lua;
- access_by_lua_file luaext/execute_auth.lua;
-
- proxy_cache nginx_cache;
- proxy_cache_key $host$uri$is_args$args;
- proxy_cache_valid 200 304 12h ;
- proxy_cache_valid 301 302 1m ;
- proxy_cache_valid any 1m ;
- expires 12h;
-
- proxy_pass http://$iuiserver;
- }
- set $iuiname $1;
- set $iuiparam $2;
- set $iuiserver "fallback";
- set $iuiurl "";
-
- # Lua files
- rewrite_by_lua_file luaext/openouirouter.lua;
- access_by_lua_file luaext/execute_auth.lua;
-
- proxy_pass http://$iuiserver;
- }
-
- location ~ ^/admin/([^/]+)(/[Vv][^/]*)?(.*) {
- set $apiname $1;
- set $apiversion $2;
- set $apiserver "fallback";
- set $adminurl "";
-
- # Lua files
- rewrite_by_lua_file luaext/openoadminrouter.lua;
- access_by_lua_file luaext/execute_auth.lua;
-
- proxy_pass http://$apiserver;
- }
-
- location ~ ^/apijson/([^/]+)(/[Vv][^/]*)?(.*) {
- location ~* ^/apijson/([^/]+)(/[v][^/]*)?(.*)\.(?:png|jpg|jpeg|js|css|html|gif|ico|bmp|woff)$ {
- set $apiname $1;
- set $apiversion $2;
- set $apiserver "fallback";
- set $apijsonurl "";
-
- # Lua files
- rewrite_by_lua_file luaext/openoapijsonrouter.lua;
- access_by_lua_file luaext/execute_auth.lua;
-
- proxy_cache nginx_cache;
- proxy_cache_key $host$uri$is_args$args;
- proxy_cache_valid 200 304 12h ;
- proxy_cache_valid 301 302 1m ;
- proxy_cache_valid any 1m ;
- expires 12h;
-
- proxy_pass http://$apiserver;
- }
- set $apiname $1;
- set $apiversion $2;
- set $apiserver "fallback";
- set $apijsonurl "";
-
- # Lua files
- rewrite_by_lua_file luaext/openoapijsonrouter.lua;
- access_by_lua_file luaext/execute_auth.lua;
-
- proxy_pass http://$apiserver;
- }
-
- location ~* \.(?:png|jpg|jpeg|js|css|html|gif|ico|bmp|woff)$ {
- set $server "fallback";
- set $url "";
- set $key "";
-
- # Lua files
- rewrite_by_lua_file luaext/customrouter.lua;
- access_by_lua_file luaext/execute_auth.lua;
-
- proxy_cache nginx_cache;
- proxy_cache_key $host$uri$is_args$args;
- proxy_cache_valid 200 304 12h ;
- proxy_cache_valid 301 302 1m ;
- proxy_cache_valid any 1m ;
- expires 12h;
-
- proxy_pass http://$server;
- }
-
- location = /favicon.ico {
- log_not_found off;
- }
-} \ No newline at end of file
diff --git a/msb-core/openresty-ext/src/assembly/resources/openresty/nginx/temp/placeholder.txt b/msb-core/openresty-ext/src/assembly/resources/openresty/nginx/temp/placeholder.txt
deleted file mode 100644
index e69de29..0000000
--- a/msb-core/openresty-ext/src/assembly/resources/openresty/nginx/temp/placeholder.txt
+++ /dev/null
diff --git a/msb-core/openresty-ext/src/assembly/resources/openresty/reload.sh b/msb-core/openresty-ext/src/assembly/resources/openresty/reload.sh
deleted file mode 100644
index 63e6854..0000000
--- a/msb-core/openresty-ext/src/assembly/resources/openresty/reload.sh
+++ /dev/null
@@ -1,29 +0,0 @@
-#!/bin/sh
-#
-# Copyright 2016 ZTE Corporation.
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-# Author: Zhaoxing Meng
-# email: meng.zhaoxing1@zte.com.cn
-#
-
-DIRNAME=`dirname $0`
-HOME=`cd $DIRNAME/nginx; pwd`
-_NGINXCMD="$HOME/sbin/nginx"
-
-cd $HOME; pwd
-echo =========== begin to reload ===============
-echo @WORK_DIR@ $HOME
-echo @C_CMD@ $_NGINXCMD -p $HOME/ -s reload
-$_NGINXCMD -p $HOME/ -s reload \ No newline at end of file
diff --git a/msb-core/openresty-ext/src/assembly/resources/openresty/run.bat b/msb-core/openresty-ext/src/assembly/resources/openresty/run.bat
deleted file mode 100644
index 0efc55a..0000000
--- a/msb-core/openresty-ext/src/assembly/resources/openresty/run.bat
+++ /dev/null
@@ -1,55 +0,0 @@
-@REM
-@REM Copyright 2016 ZTE Corporation.
-@REM
-@REM Licensed under the Apache License, Version 2.0 (the "License");
-@REM you may not use this file except in compliance with the License.
-@REM You may obtain a copy of the License at
-@REM
-@REM http://www.apache.org/licenses/LICENSE-2.0
-@REM
-@REM Unless required by applicable law or agreed to in writing, software
-@REM distributed under the License is distributed on an "AS IS" BASIS,
-@REM WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-@REM See the License for the specific language governing permissions and
-@REM limitations under the License.
-@REM
-@REM Author: Zhaoxing Meng
-@REM email: meng.zhaoxing1@zte.com.cn
-@REM
-
-@echo off
-title openresty-server
-@if not "%ECHO%" == "" echo %ECHO%
-@if "%OS%" == "Windows_NT" setlocal
-
-set DIRNAME=.
-
-if "%OS%" == "Windows_NT" set DIRNAME=%~dp0%
-
-set ARGS=
-:loop
-if [%1] == [] goto endloop
- set ARGS=%ARGS% %1
- shift
- goto loop
-:endloop
-
-set HOME=%DIRNAME%nginx
-set _NGINXCMD=%HOME%\nginx.exe
-
-echo =========== openresty config info ============================================
-echo HOME=%HOME%
-echo _NGINXCMD=%_NGINXCMD%
-echo ===============================================================================
-
-cd /d "%HOME%"
-echo @WORK_DIR@%HOME%
-echo @C_CMD@ "%_NGINXCMD%"
-%_NGINXCMD%
-IF ERRORLEVEL 1 goto showerror
-exit
-:showerror
-echo WARNING: Error occurred during startup or Server abnormally stopped by way of killing the process,Please check!
-echo After checking, press any key to close
-pause
-exit \ No newline at end of file
diff --git a/msb-core/openresty-ext/src/assembly/resources/openresty/run.sh b/msb-core/openresty-ext/src/assembly/resources/openresty/run.sh
deleted file mode 100644
index f5226b5..0000000
--- a/msb-core/openresty-ext/src/assembly/resources/openresty/run.sh
+++ /dev/null
@@ -1,49 +0,0 @@
-#!/bin/sh
-#
-# Copyright 2016 ZTE Corporation.
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-# Author: Zhaoxing Meng
-# email: meng.zhaoxing1@zte.com.cn
-#
-
-DIRNAME=`dirname $0`
-HOME=`cd $DIRNAME/nginx; pwd`
-LUAJIT_HOME=`cd $DIRNAME/luajit; pwd`
-_NGINXCMD="$HOME/sbin/nginx"
-echo =========== prepare the symbolic links ========================================
-ln -s -f $_NGINXCMD $DIRNAME/bin/openresty
-ln -s -f $LUAJIT_HOME/bin/luajit2.1.0-beta2 $LUAJIT_HOME/bin/luajit
-ln -s -f $LUAJIT_HOME/lib/libluajit-5.1.so.2.1.0 $LUAJIT_HOME/lib/libluajit-5.1.so.2
-ln -s -f $LUAJIT_HOME/lib/libluajit-5.1.so.2.1.0 $LUAJIT_HOME/lib/libluajit-5.1.so
-echo ================================================================================
-
-echo =========== create symbolic link for libluajit-5.1.so.2 ========================================
-LUAJIT_FILENAME="$LUAJIT_HOME/lib/libluajit-5.1.so.2"
-LN_TARGET_FILE='/lib/libluajit-5.1.so.2'
-LN_TARGET_FILE64='/lib64/libluajit-5.1.so.2'
-ln -s -f $LUAJIT_FILENAME $LN_TARGET_FILE
-ln -s -f $LUAJIT_FILENAME $LN_TARGET_FILE64
-echo ===============================================================================
-
-echo =========== openresty config info =============================================
-echo HOME=$HOME
-echo _NGINXCMD=$_NGINXCMD
-echo ===============================================================================
-cd $HOME; pwd
-
-echo @WORK_DIR@ $HOME
-echo @C_CMD@ $_NGINXCMD -p $HOME/
-$_NGINXCMD -p $HOME/
-
diff --git a/msb-core/openresty-ext/src/assembly/resources/openresty/stop.bat b/msb-core/openresty-ext/src/assembly/resources/openresty/stop.bat
deleted file mode 100644
index 3609162..0000000
--- a/msb-core/openresty-ext/src/assembly/resources/openresty/stop.bat
+++ /dev/null
@@ -1,54 +0,0 @@
-@REM
-@REM Copyright 2016 ZTE Corporation.
-@REM
-@REM Licensed under the Apache License, Version 2.0 (the "License");
-@REM you may not use this file except in compliance with the License.
-@REM You may obtain a copy of the License at
-@REM
-@REM http://www.apache.org/licenses/LICENSE-2.0
-@REM
-@REM Unless required by applicable law or agreed to in writing, software
-@REM distributed under the License is distributed on an "AS IS" BASIS,
-@REM WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-@REM See the License for the specific language governing permissions and
-@REM limitations under the License.
-@REM
-@REM Author: Zhaoxing Meng
-@REM email: meng.zhaoxing1@zte.com.cn
-@REM
-
-@echo off
-title close openresty-server
-@if not "%ECHO%" == "" echo %ECHO%
-@if "%OS%" == "Windows_NT" setlocal
-
-set DIRNAME=.
-
-if "%OS%" == "Windows_NT" set DIRNAME=%~dp0%
-
-set ARGS=
-:loop
-if [%1] == [] goto endloop
- set ARGS=%ARGS% %1
- shift
- goto loop
-:endloop
-
-set HOME=%DIRNAME%nginx
-set _NGINXCMD=%HOME%\nginx.exe
-
-
-echo =========== openresty config info ============================================
-echo HOME=%HOME%
-echo _NGINXCMD=%_NGINXCMD%
-echo ===============================================================================
-
-
-cd /d "%HOME%"
-echo @WORK_DIR@%HOME%
-echo @C_CMD@ "%_NGINXCMD% -s stop"
-
-%_NGINXCMD% -s stop
-echo closing signal has been sent,stopping in background,WAIT...
-timeout /t 5 /nobreak > nul
-exit
diff --git a/msb-core/openresty-ext/src/assembly/resources/openresty/stop.sh b/msb-core/openresty-ext/src/assembly/resources/openresty/stop.sh
deleted file mode 100644
index 6057d48..0000000
--- a/msb-core/openresty-ext/src/assembly/resources/openresty/stop.sh
+++ /dev/null
@@ -1,59 +0,0 @@
-#!/bin/bash
-#
-# Copyright 2016 ZTE Corporation.
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-# Author: Zhaoxing Meng
-# email: meng.zhaoxing1@zte.com.cn
-#
-
-DIRNAME=`dirname $0`
-HOME=`cd $DIRNAME/nginx; pwd`
-_NGINXCMD="$HOME/sbin/nginx"
-
-echo =========== openresty config info =============================================
-echo HOME=$HOME
-echo _NGINXCMD=$_NGINXCMD
-echo ===============================================================================
-cd $HOME; pwd
-
-echo @WORK_DIR@ $HOME
-echo @C_CMD@ $_NGINXCMD -p $HOME/ -s stop
-
-function save_nginx_pid(){
- nginx_id=`ps -ef | grep nginx | grep $_NGINXCMD | grep -v grep | awk '{print $2}'`
- echo $nginx_id
- worker_id_list=`ps -ef | grep nginx | grep $nginx_id | grep "worker process" | awk '{print $2}'`
- echo $worker_id_list
-}
-
-function kill_nginx_process(){
- ps -p $nginx_id
- if [ $? == 0 ]; then
- kill -9 $nginx_id
- fi
-
- for worker_id in $worker_id_list
- do
- ps -p $worker_id
- if [ $? == 0 ]; then
- echo kill -9 $worker_id
- kill -9 $worker_id
- fi
- done
-}
-save_nginx_pid;
-$_NGINXCMD -p $HOME/ -s stop
-sleep 5
-kill_nginx_process; \ No newline at end of file