NGINX将所有子文件夹重定向到域根目录

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了NGINX将所有子文件夹重定向到域根目录相关的知识,希望对你有一定的参考价值。

我需要将所有子文件夹重定向到根域,例如。 www.example.com/*到www.example.com。

我尝试过以下方法:

server {
    listen       80;
    server_name  www.example.com;

    location / {
        proxy_pass      http://site/;
        proxy_set_header Host            $host;
        proxy_set_header X-Forwarded-For $remote_addr;
    }

    location ~ ^/(.*?)/?$ {
        return 301 http://www.example.com;
    }
}

但它不起作用,我认为它陷入了重定向循环。

答案

看起来你的正则表达式可能不正确。您可以使用像regex101.com这样的网站来帮助您使用正则表达式。

Here是一个正则表达式的例子,它将注册为任何跟随网址的.com部分之后的任何url的truthy:

.com/(?=.+)

以上是关于NGINX将所有子文件夹重定向到域根目录的主要内容,如果未能解决你的问题,请参考以下文章

NGINX 中的 IP 地址到域重定向

将流量重定向到域

将 IP 重定向到域

htaccess 将所有请求重定向到 index.php,子文件夹除外

使用.htaccess将所有子文件夹的目录重定向到Root(主)目录

将所有子目录子页面重定向到子目录根