我已经在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
请帮助我做到这一点。
答案 0 :(得分:0)
恐怕这是一个坏习惯。相反,您应该将所有请求发送到PHP文件(或对等文件),然后从那里重定向。
答案 1 :(得分:0)
目前尚不清楚您到底想做什么。 我的意思是重定向的规律性尚不清楚。
这里是一篇文章。也许会有所帮助。 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;
}
请注意以下摘录的文档: