我如何在Spring Webflux中配置http->
https重定向?我需要将所有http
请求重定向到https
(据我所知,任何http
请求都应具有301
http状态响应,并带有更改http->
https)。在文档中未找到有关此信息的任何信息。我找到了这个答案,但它与tomcat有关。我有净值。
我找到了方法,希望对您有所帮助:
@Bean
public WebFilter httpsRedirectFilter() {
return new WebFilter() {
@Override
public Mono<Void> filter(ServerWebExchange exchange, WebFilterChain chain) {
URI originalUri = exchange.getRequest().getURI();
//here set your condition to http->https redirect
List<String> forwardedValues = exchange.getRequest().getHeaders().get("x-forwarded-proto");
if (forwardedValues != null && forwardedValues.contains("http")) {
try {
URI mutatedUri = new URI("https",
originalUri.getUserInfo(),
originalUri.getHost(),
originalUri.getPort(),
originalUri.getPath(),
originalUri.getQuery(),
originalUri.getFragment());
ServerHttpResponse response = exchange.getResponse();
response.setStatusCode(HttpStatus.MOVED_PERMANENTLY);
response.getHeaders().setLocation(mutatedUri);
return Mono.empty();
} catch (URISyntaxException e) {
throw new IllegalStateException(e.getMessage(), e);
}
}
return chain.filter(exchange);
}
};
}
我们使用拉维5。要将http连接重定向到https,请使用中间件HttpsProtocol。 在我们的4个测试用例中,只有1个正确工作(最后一个重定向)。其他3种情况的中间件添加了url extra index.php。 http://www.aqualink.az/index.php ---
如何在spring WebFlux中配置HTTP->HTTPS重定向?我需要将所有请求重定向到(根据我的理解,任何请求都应该具有http状态响应,并更改HTTP->HTTPS)。在文档中没有找到任何关于它的信息。我找到了这个答案,但它与Tomcat有关。我有奈蒂。
请不要向我推荐超过173票的长而详细的帖子。这对我不起作用。我也试过很多其他的(1,2,3,4)。他们都给我太多的重定向或错误500。因此,我的问题是: 用我的电流。htaccess,这就是发生的情况: https://www.dukescasino.com/-工作完美 https://dukescasino.com/-重定向到上面的内容,这很好 下面的两个选项加载罚款,但它应该重定向到https
我想问一下HTTP到HTTPS的重定向。正如我们所知,重定向是通过从web服务器端重定向来实现的。但是,当涉及到https重定向时,它可以通过两种方式完成,服务器端()和应用程序端()。我想知道: 以下哪种方法有效且性能更好。 考虑到同一服务器上的多个域和域,每种方法的优缺点 非常感谢。 参考: 将Laravel中的WWW重定向到非WWW-堆栈溢出
重定向到 不执行。谁面临过类似的问题?
我有一个域有3个子域: 在我的nginx上有以下3个配置: API null