You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@apisix.apache.org by me...@apache.org on 2020/01/12 08:35:14 UTC
[incubator-apisix] branch master updated: plugin(proxy-rewrite):
using schema pattern to check if uri option starts with / in proxy-rewrite
plugin. (#1041)
This is an automated email from the ASF dual-hosted git repository.
membphis pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-apisix.git
The following commit(s) were added to refs/heads/master by this push:
new 70ff4a5 plugin(proxy-rewrite): using schema pattern to check if uri option starts with / in proxy-rewrite plugin. (#1041)
70ff4a5 is described below
commit 70ff4a556d3b0c37c196ce3e3a672b34cd188a59
Author: agile6v <ag...@agile6v.com>
AuthorDate: Sun Jan 12 16:35:05 2020 +0800
plugin(proxy-rewrite): using schema pattern to check if uri option starts with / in proxy-rewrite plugin. (#1041)
---
lua/apisix/plugin.lua | 2 +-
lua/apisix/plugins/proxy-rewrite.lua | 10 ++--------
t/plugin/proxy-rewrite.t | 2 +-
3 files changed, 4 insertions(+), 10 deletions(-)
diff --git a/lua/apisix/plugin.lua b/lua/apisix/plugin.lua
index 969ecb1..0a6b17a 100644
--- a/lua/apisix/plugin.lua
+++ b/lua/apisix/plugin.lua
@@ -138,7 +138,7 @@ local function load_stream()
local plugin_names = local_conf.stream_plugins
if not plugin_names then
- core.log.warn("failed to read stream plugin list form local file")
+ core.log.warn("failed to read stream plugin list from local file")
return true
end
diff --git a/lua/apisix/plugins/proxy-rewrite.lua b/lua/apisix/plugins/proxy-rewrite.lua
index ab0e593..cc1af62 100644
--- a/lua/apisix/plugins/proxy-rewrite.lua
+++ b/lua/apisix/plugins/proxy-rewrite.lua
@@ -21,7 +21,6 @@ local ipairs = ipairs
local ngx = ngx
local type = type
local re_sub = ngx.re.sub
-local str_sub = string.sub
local schema = {
@@ -31,7 +30,8 @@ local schema = {
description = "new uri for upstream",
type = "string",
minLength = 1,
- maxLength = 4096
+ maxLength = 4096,
+ pattern = "^/.*",
},
regex_uri = {
description = "new uri that substitute from client uri " ..
@@ -92,12 +92,6 @@ function _M.check_schema(conf)
end
end
- if conf.uri ~= nil then
- if str_sub(conf.uri, 1, 1) ~= "/" then
- return false, "invalid uri(" .. conf.uri .. "), must start with /."
- end
- end
-
--reform header from object into array, so can avoid use pairs, which is NYI
if conf.headers then
conf.headers_arr = {}
diff --git a/t/plugin/proxy-rewrite.t b/t/plugin/proxy-rewrite.t
index 832a197..f7e7afd 100644
--- a/t/plugin/proxy-rewrite.t
+++ b/t/plugin/proxy-rewrite.t
@@ -1003,6 +1003,6 @@ invalid capturing variable name found
GET /t
--- error_code: 400
--- response_body eval
-qr/invalid uri/
+qr/failed to match pattern/
--- no_error_log
[error]