Я настроил HTTP-сервер в Ubuntu с помощью nginx. Его основной функциональностью является работа в качестве простого файлового сервера.
Я следовал этому руководству, чтобы показать файлы, хранящиеся в определенном каталоге: https://www.yanxurui.cc/posts/server/2017-03-21-NGINX-as-a-file-server/#download
И я также следовал этому руководству, чтобы получать запросы POST и хранить файлы в этом месте: https://stackoverflow.com/a/44751210/7994461
Полученная конфигурация в файле конфигурации nginx следующая:
server {
listen 8001;
autoindex on;
autoindex_exact_size off;
autoindex_localtime on;
location / {
root upload;
client_body_temp_path /tmp/;
client_body_in_file_only on;
client_body_buffer_size 1M;
client_max_body_size 3G;
}
}
Папка 'upload' находится внутри / usr / local / nginx / и имеет следующую структуру:
upload
├── test.txt
└─tmp
└─ temp.txt
При доступе к «моему IP-адресу: 8001» в файловом браузере отображаются указанные выше файлы, и вы можете получить к ним доступ, поэтому с этим проблем нет.
Проблема в том, что когда я пытаюсь загрузить новый файл, я использую Postman для отправки запроса POST, выполнив следующие шаги:
- Выберите метод POST
- Вставить http://'my IP-адрес ': 8001 / в URL
- Выберите вкладку «Тело»
- Выберите «данные формы»
- Выберите опцию «file» вместо «text» и просмотрите проводник, чтобы выбрать файл с именем «format.txt», поэтому этот файл теперь находится внутри столбца «Value»
- Напишите 'format.txt' в его ключе
- Нажмите «Отправить»
Я новичок с HTTP-запросами, поэтому я не уверен, что мне нужно что-то еще делать перед отправкой POST.
Сервер возвращает почтальону код результата '403 Forbidden' , и при проверке моего файла error.log выводит следующее сообщение:
'индекс каталога "/ usr / local / nginx / upload /" запрещен "
Кто-то знает, что может происходить? Я не знаю, если это проблема с запросом POST или с конфигурацией сервера.