Nginx 配置,如果位置不存在

Nginx 配置,如果位置不存在

我的配置

    rewrite /silosy /produktsiya/silosy last;

    location /go/ {
        rewrite /go/http\:/(.*) http://$1 permanent;
    }

    if (!-e $request_filename){
        rewrite ^/(.*) /index.php?$query_string;
    }

现在重写“/go”和“/silosy”不起作用,因为:“if (!-e $request_filename)”正在使用。如何添加位置限制,如下所示:

location [not (go|silosy)] {
    if (!-e $request_filename){
        rewrite ^/(.*) /index.php?$query_string;
    }
}

“不”将如何在 nginx 位置中查找?

答案1

我不知道在位置上看起来“不”如何,但我找到了解决方案:

    rewrite ^/silosy /produktsiya/silosy permanent;
    rewrite ^/go/(.*) http://$1 permanent;

    if (!-e $request_filename){
        rewrite ^/(.*) /index.php?$query_string;
    }

答案2

将你的if (!-e $request_filename)放入块中location /。它是为了无与伦比的

相关内容