nginx根据请求的url,访问指定的代码路径

nginx配置如下

server {

        listen 80;

        server_name localhost;

        set $dir /code_dir1;

        if ($request_uri ~* /index){

            set $dir /code_dir2;

        }

        root $dir;

}


其中  ~*:与指定正则表达式模式匹配时返回“真”,判断匹配与否时不区分字符大小写;


以下是额外的一些知识:

一、if语句中的判断条件(nginx)

1、正则表达式匹配:

==:等值比较;

~:与指定正则表达式模式匹配时返回“真”,判断匹配与否时区分字符大小写;

~*:与指定正则表达式模式匹配时返回“真”,判断匹配与否时不区分字符大小写;

!~:与指定正则表达式模式不匹配时返回“真”,判断匹配与否时区分字符大小写;

!~*:与指定正则表达式模式不匹配时返回“真”,判断匹配与否时不区分字符大小写;


2、文件及目录匹配判断:

-f, !-f:判断指定的路径是否为存在且为文件;

-d, !-d:判断指定的路径是否为存在且为目录;

-e, !-e:判断指定的路径是否存在,文件或目录均可;

-x, !-x:判断指定路径的文件是否存在且可执行;

你可能感兴趣的:(nginx根据请求的url,访问指定的代码路径)