我对旧的未使用的子域进行了重写,其中90%的URL既与主域相对应,又与子域相对应,但是某些url对于子域是唯一的。
如何创建条件,如果重写返回404,则返回自定义页面。
if ($host ~* (sub1|sub2|sub3)\.mysite\.loc) {
rewrite ^(.+)$ http://mysite.loc$1 permanent;
location / {
error_page 404 =301 http://mysite.loc/lost-sub;
}
}
答案 0 :(得分:0)
您可以使用try_files
,例如:
location / {
try_files $uri @failover;
}
location @failover {
proxy_pass http://failover;
}
在这种情况下,如果找不到文件而不是返回404
,它将尝试location @failover