Apache htaccess规则,涉及重写映射小写-转换为Nginx规则

Apache htaccess规则,涉及重写映射小写-转换为Nginx规则,apache,.htaccess,nginx,url-rewriting,Apache,.htaccess,Nginx,Url Rewriting,我目前在.htaccess文件中有以下内容,该文件运行良好,但需要将其转换为与nginx一起使用: Options -Indexes -MultiViews RewriteMap lowercase int:tolower RewriteEngine On RewriteCond %{THE_REQUEST} \s/users/[a-z]/([^/\s]+)\s RewriteRule . /users/%1/? [R=301,L] RewriteCond %{REQUEST_FILENA

我目前在.htaccess文件中有以下内容,该文件运行良好,但需要将其转换为与nginx一起使用:

Options -Indexes -MultiViews

RewriteMap lowercase int:tolower
RewriteEngine On

RewriteCond %{THE_REQUEST} \s/users/[a-z]/([^/\s]+)\s
RewriteRule . /users/%1/? [R=301,L]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^users/([A-Za-z])([^/]+)/$ /users/${lowercase:$1}/$1$2/ [L]
我已经阅读了nginx中更一般的重写为小写的情况,并使用--with-http_perl_模块选项重新编译了nginx,但无法让这个特定示例正常工作

到目前为止,我有以下几点:

location / {
        try_files $uri $uri/ =404;

        if (!-e $request_filename){
            rewrite ^/users/([A-Za-z0-9_-])([^/]+)/$ /users/$1/$1$2/;
        }
}

有关更多上下文,请参阅我不久前的原始问题,其中对htaccess规则进行了排序:我现在通过将ngx_http_lower_upper_case模块添加到nginx并使用以下内容来进行排序:
location/{try_files$uri$uri/=404;lower$lowercase_user_dir“$1”;if(!-e$request\u filename){rewrite^/users/([A-Za-z0-9_-])([^/]+)/$/users/$lowercase_user_dir/$1$2/;}}
您应该将其作为答案添加(稍后接受),因为它可能会帮助其他读者。否则,问题也会保留在未回答的问题队列中。谢谢:)