You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@apisix.apache.org by Kwanhur Huang <hu...@163.com> on 2022/04/26 12:46:00 UTC
Re: [DISCUSS][Change] Support set redirect server port under http_to_https mode in plugin redirect
hi, the community
About this issue, to achieve that redirect the specified server port, some information updating:
Plugin redirect support three mode http_to_https, uri and regex_uri, only one of them can be specified [1].
Under `uri` mode, it has supported to specify server port and reach the target, just like mentioned example.
Under `http_to_https` mode, to reach the target, it needs one way to fetch the redirect server port.
Now has two solutions:
a. Add a property port.
b. Reusing property uri.
solution a: it’s simple to achieve, but its extensibility not enough, if need to specify redirect server name, has to add another property.
solution b: it has to specify properties both http_to_https and uri,
this breaks the original limitation, only one mode can be specified like the test case 21 [2],
but reusing the uri property, its extensibility is enough.
Hopefully hear your voice.
[1] https://apisix.apache.org/docs/apisix/plugins/redirect <https://apisix.apache.org/docs/apisix/plugins/redirect>
[2] https://github.com/apache/apisix/blob/8df9a7d26585f30f273f819a21c96cf8c9104349/t/plugin/redirect.t#L487 <https://github.com/apache/apisix/blob/8df9a7d26585f30f273f819a21c96cf8c9104349/t/plugin/redirect.t#L487>
Kwanhur Huang
TL;DR
> 2022年3月25日 上午11:25,Chao Zhang <zc...@gmail.com> 写道:
>
> Hi,
>
> Agree with this one.
>
> Chao Zhang
> https://github <https://github/>.com/tokers
>
> On March 25, 2022 at 09:16:00, YuanSheng Wang (membphis@apache.org <ma...@apache.org>) wrote:
>
>> I prefer this style, it's easier to read.
>>
>> "plugins": {
>> "redirect": {
>> "uri": "https://$host:9443$request_uri <https://$host:9443$request_uri>",
>> "ret_code": 301
>> }
>> }
>>
>>
>>
>> On Thu, Mar 24, 2022 at 10:04 PM Kwanhur Huang <huang_hua2012@163.com <ma...@163.com>>
>> wrote:
>>
>> > hi, the community
>> >
>> > Issue #4400 <https://github.com/apache/apisix/issues/4400 <https://github.com/apache/apisix/issues/4400>> point out
>> > that, expectedly modify default redirect server port. Original description:
>> >
>> > Can the port be set for http_to_https in the redirect plugin?
>> >
>> > The default https port of apisix is 9443, but after I set http_to_https to
>> > true,
>> > visiting "http://test.com:9080/service/ <http://test.com:9080/service/> <http://test.com:9080/service/ <http://test.com:9080/service/>>"
>> > will redirect to "https://test.com/service/ <https://test.com/service/> <https://test.com/service/ <https://test.com/service/>>",
>> > my expected to jump to "https://test.com:9443/service/ <https://test.com:9443/service/> <
>> > https://test.com:9443/service/ <https://test.com:9443/service/>>"
>> >
>> >
>> > From comment <
>> > https://github.com/apache/apisix/pull/6686#issuecomment-1075798013 <https://github.com/apache/apisix/pull/6686#issuecomment-1075798013>> posts
>> > that better to extend `uri` attribute. This will bring a big change under
>> > http_to_https mode, as my explanation here <
>> > https://github.com/apache/apisix/pull/6686#issuecomment-1075886567 <https://github.com/apache/apisix/pull/6686#issuecomment-1075886567>>.
>> >
>> >
>> > Key-point Only one of http_to_https, uri or regex_uri can be specified.
>> >
>> > Extends uri under http_to_https mode, it’ll break this limitation.
>> >
>> >
>> > Hoping hear your voice.
>> >
>> >
>> > Kwanhur Huang
>> > TL;DR
>> >
>> >
>> >
>> >
>> >
>> > Kwanhur Huang
>> > TL;DR
>> >
>> >
>>
>> --
>>
>> *MembPhis*
>> My GitHub: https://github.com/membphis <https://github.com/membphis>
>> Apache APISIX: https://github.com/apache/apisix <https://github.com/apache/apisix>