Хотел бы получить помощь с проблемой, которая поставила меня в тупик.
Я тестирую хостинговую платформу Runcloud для размещения сервера Nextcloud. Он использует настройку прокси-сервера Apache / Nginx и имеет ряд файлов конфигурации, которые нельзя / не следует изменять. Это позволяет использовать дополнительные файлы conf для добавления дополнительных объявлений Nginx.
В файле conf по умолчанию есть это правило:
location ~ /\. {
deny all;
access_log off;
log_not_found off;
}
Это правило вызывает проблемы с тем, как Nextcloud справляется с загрузкой больших файлов, а также с тем, как он разделяет файлы и объединяет их после завершения передачи, что он делает с помощью скрытого файла .file и отклоняется приведенной выше конфигурацией Nginx. Nextcloud рекомендует изменить правило на следующее, чтобы обойти это:
location ~ /\.(?!file).* {
deny all;
access_log off;
log_not_found off;
}
Проблема в том, что я не могу изменить исходное объявление, потому что оно находится в одном из файлов хостинг-провайдера по умолчанию, которые могут быть перезаписаны новыми обновлениями. Они рекомендовали мне использовать настраиваемый файл включения, чтобы переопределить это поведение.
Я следил за их документацией, и новый блок местоположения подбирается Nginx, но не переопределяет режим работы по желанию. Я не уверен, можно ли блоки отвергнутый, как таковой, и я действительно не знаю, как обновленный блок должен быть представлен во включаемом файле. Я попытался сопоставить его более конкретно, но не смог.
Мы будем очень благодарны за любые советы о том, как должно выглядеть это правило!
TIA
Из поддержки RunCloud ...
Для каждого веб-приложения в разделе Nginx Config вы можете создать собственный файл конфигурации и выбрать тип location.main-before. Этот файл conf будет загружен перед main.conf, и поэтому вы можете установить свои собственные директивы местоположения, которые будут иметь приоритет над файлом main.conf веб-приложений.