Как замаскировать путь к защищенной папке, чтобы она выглядела так, будто она находится в другом месте?

Как замаскировать путь к защищенной папке, чтобы она выглядела так, будто она находится в другом месте?

Я использую X-Accel для обслуживания защищенной папки, содержащей изображения:https://www.nginx.com/resources/wiki/start/topics/examples/x-accel/

В настоящее время я храню файлы в /protected_filesпапке. Поэтому теперь, чтобы увидеть файлы с помощью X-Accel, я передаю путь, содержащий URL /protected_files, например protected_files/image1.jpg.

Вот как я устанавливаю защиту на защищенную папку:

location /protected_files {
  internal;
}

Затем, чтобы просмотреть файлы с помощью X-Accel, я передаю путь с расширением X-Accel-Redirect.

Есть ли способ замаскировать URL-адрес так, чтобы он выглядел так, будто он обслуживается с другого URL-адреса? Например /fake_folder/image1.jpg?

Я попробовал создать еще одну папку с желаемым поддельным именем, а затем добавить псевдоним к настоящему имени, но это не сработало:

location /fake_folder {
  internal;
  alias /protected_files;
}

Затем я передаю URL с помощью /fake_folder/image1.jpg, но получаю ошибку 404

решение1

В соответствии сдокументацияна внутренних, переписанные запросы считаются внутренними запросами. Следующее должно работать:

location /fake_folder {
    rewrite ^/fake_folder/(.*)$ /protected_files/$1 break;
}

Связанный контент