Назад | Перейти на главную страницу

Перенаправление NginX не работает должным образом

Я настроил перенаправление для NginX следующим образом:

location / {
   try_files $uri $uri/ @rewrite;
}

location @rewrite {
    rewrite ^/(.*)$ /index.php?permalink=$1 last;
}

он отлично работает для тысяч ссылок, но для некоторых это не так

Некоторые из ссылок, которые продолжают выдавать ошибку 404:

Для тысяч других ссылок profile / * он отлично работает. Я попытался получить доступ к вышеуказанным профилям через:

index.php?permalink=profile/jongz

И работает нормально. Поэтому я предполагаю, что должна быть некоторая неправильная конфигурация или что-то, что заставляет nginX выдавать ошибку 404 - файл не найден вместо перехода к rewrite функция.

Содержат ли эти ссылки какие-то символы или комбинации символов, которые мешают nginX правильно переписать ссылку?

Следующее правило было проблемой:

location ~* .(js|jpg|jpeg|gif|png|css|tgz|gz|rar|bz2|doc|pdf|ppt|tar|wav|bmp|rtf|swf|ico|flv|txt|woff|woff2|svg)$ {
        etag on;
        if_modified_since exact;
        add_header Pragma "public";
        add_header Cache-Control "max-age=31536000, public";
}

Не уверен, почему не ставится точка в начале выражения. Кто-нибудь знает на это ответ?