Рейтинг:0

Nginx блокирует доступ к определенным типам файлов (например, .txt)

флаг gb

моя цель: Блокировать любой запрос, который запрашивает эти типы файлов:

{случайное имя{.txt
.мд
.git

Если пользователь пытается получить доступ к любому из «заблокированных» типов файлов, я хочу вернуть HTTP 404. Это должно произойти в все папки, а не только корневая папка

мой код сервера до сих пор

сервер {
        слушать 80 default_server;
        слушать [::]:80 default_server;
        корень/форум;
        индекс index.php;
        имя_сервера forum.example.net;
        место расположения / {
                try_files $uri $uri/ =404;
        }
        расположение ~ \.php$ {
                включить фрагменты/fastcgi-php.conf;
                fastcgi_pass unix:/var/run/php/php7.4-fpm.sock;
        }
        местоположение ~ /\.ht {
                отрицать все;
        }
        расположение ~ \.md {
        отрицать все;
        вернуть 404;
        }
        расположение ~ /\.txt {
        отрицать все;
        вернуть 404;
        }
        местоположение ~ /\.git {
        отрицать все;
        вернуть 404;
        }
}

Когда я пытаюсь перейти по адресу: /folder/test.md

Он загружает, а не отправляет Deny all, который я хочу заблокировать.

Как я могу это сделать?

bocian85 avatar
флаг cn
попробуй поставить этот блок раньше место расположения / { try_files $uri $uri/ =404; } также удалите / перед \.filetype, потому что он будет соответствовать только URL-адресу типа something/subdir/.txt
Michael Hampton avatar
флаг cz
Почему там "запретить все"?
Рейтинг:0
флаг gb

Заблокировать типы файлов:

.мд
.git
{что угодно}.txt

добавить в серверный блок:

расположение ~\.(git|txt|md)$ {
 отрицать все;
 404;
}

если пользователь обращается к /folder/1.txt, 1.txt вернет HTTP 404

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.