Html nginx子文件夹重定向

Html nginx子文件夹重定向,html,.htaccess,nginx,url-redirection,Html,.htaccess,Nginx,Url Redirection,我想在我的nginx中为我的pelican博客进行重定向。这是我的初始地址(或者看起来像…): /年/月/日/文章/ 例如: /2014/01/07/一些文章/ 我想要的是,如果nginx没有找到最后一个子文件夹,它将服务于父文件夹(并继续服务于根文件夹) 因此,在url/2014/01/07/some article/中,如果找不到文件夹“some article”,则服务于父文件夹“07”。但是,同样,如果它没有找到它,则提供“01”,然后继续逻辑到年份,最后是根 顺便说一句,如果你读了愚蠢

我想在我的nginx中为我的pelican博客进行重定向。这是我的初始地址(或者看起来像…):

/年/月/日/文章/

例如: /2014/01/07/一些文章/

我想要的是,如果nginx没有找到最后一个子文件夹,它将服务于父文件夹(并继续服务于根文件夹)

因此,在url/2014/01/07/some article/中,如果找不到文件夹“some article”,则服务于父文件夹“07”。但是,同样,如果它没有找到它,则提供“01”,然后继续逻辑到年份,最后是根

顺便说一句,如果你读了愚蠢的配置,请建议我。我从我目前运行的网站上获取了配置,因此对于鹈鹕博客来说可能不准确

下面是现在的配置文件(尚未测试):

}我解决了这件事

这是我的新配置:

server {
listen 443 ssl;
listen 80;
listen [::]:80;
listen [::]:443 ssl;

server_name xxxxxxxxx;
root /var/www/pelican/;

index index.html rss.xml;

# faillite du nom de l'article
location ~* ^/([0-9]+)/([0-9]+)/([0-9]+)/(.+)/$ {
    try_files $uri $uri/ /$1/$2/$3/;
    }

# faillite du jour
location ~* ^/([0-9]+)/([0-9]+)/([0-9]+)/$ {
    try_files $uri $uri/ /$1/$2/;
    }

# faillite du mois
location ~* ^/([0-9]+)/([0-9]+)/$ {
    try_files $uri $uri/ /$1/;
    }

# faillite de l'annee et des langues
location ~* ^/([0-9]+)/$ {
    try_files $uri $uri/ /;
    }

}

您正在使用301重定向。所以先看看你的根路径是错误的。它应该是完整的路径,如
root/home/public_html/pelican/
对于提要,其外观如下所示:最后一次重写^/fr/feed//fr/feed/rss.xml;最后重写^/en/feed//en/feed/rss.xmlIs Is WordPress?更改
try\u files$url使用
try_文件$uri$uri//index.php?q=$uri$args目的是几乎透明地迁移到pelican…原来是wordpress:D,但你最后的建议显然是错误的。根(/home/public…)也是错误的。我不明白你为什么这么说。它应该是(视情况而定)/home/username/public\u html/pelican。就我而言,它将是/var/www/pelican…没关系。我之所以这么说是因为/pelican/是错误的。这是一条错误的道路。这不是完整的路径。它类似于/etc/directory。如果was/pelican/nginx将给出404错误。因为该目录不存在。您可以使其存在。。。如果你想/需要,这不是拜登。但目前,它无法解决我的问题(如果当前请求不存在,则重定向到父文件夹)。
server {
listen 443 ssl;
listen 80;
listen [::]:80;
listen [::]:443 ssl;

server_name xxxxxxxxx;
root /var/www/pelican/;

index index.html rss.xml;

# faillite du nom de l'article
location ~* ^/([0-9]+)/([0-9]+)/([0-9]+)/(.+)/$ {
    try_files $uri $uri/ /$1/$2/$3/;
    }

# faillite du jour
location ~* ^/([0-9]+)/([0-9]+)/([0-9]+)/$ {
    try_files $uri $uri/ /$1/$2/;
    }

# faillite du mois
location ~* ^/([0-9]+)/([0-9]+)/$ {
    try_files $uri $uri/ /$1/;
    }

# faillite de l'annee et des langues
location ~* ^/([0-9]+)/$ {
    try_files $uri $uri/ /;
    }

}