我已经在Nginx Web服务器中配置了我的域,现在我想将所有请求重定向到主域。
例如:1)http://www.example.com/blogs/articles应该重定向到http://www.example.com
2)http://www.example.com/wp/history应该被重定向到http://www.example.com/products/file
请帮我这样做。
我担心这是一种不好的做法。相反,您应该将所有请求发送到PHP文件(或对等方)并从那里重定向。
目前尚不清楚你究竟想做什么。我的意思是你的重定向的规律性不明确。
这是一篇文章。也许它会有所帮助。 https://bjornjohansen.no/nginx-redirect
最好不要在服务器配置中进行大量的单重定向,因为它可能非常复杂且不灵活。
同时,“愚蠢”的方式:
使用地图
如果您有一个要以不同方式重定向的URL或正则表达式列表,则应该考虑使用地图,为方便起见,您可以在单独的文件中定义该地图。请注意,映射定义必须位于服务器块之外:
include redirect-map.conf;
server {
[…]
if ( $redirect_uri ) {
return 301 $redirect_uri;
}
}
然后,文件redirect-map.conf可能如下所示:
map $request_uri $redirect_uri {
/about.html /about-us;
/customers.html /our-customers;
/products.html /our-products;
}
请注意以下文档摘录: