fix(upload): add client_max_body_size to nginx config and improve upload error messaging

This commit is contained in:
2026-10-06 10:30:49 +03:00
parent 6dcfd59f73
commit 2a84b5bcb0
3 changed files with 17 additions and 5 deletions
+2 -2
View File
@@ -5,7 +5,7 @@
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no, viewport-fit=cover"> <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no, viewport-fit=cover">
<title>Notes — Персональный тренажер и словарь английского языка</title> <title>Notes — Персональный тренажер и словарь английского языка</title>
<meta name="description" content="Защищённый персональный тренажёр и словарь английского языка с интервальными повторениями SRS SM-2, контекстным поиском и озвучкой"> <meta name="description" content="Защищённый персональный тренажёр и словарь английского языка с интервальными повторениями SRS SM-2, контекстным поиском и озвучкой">
<link rel="stylesheet" href="/static/css/style.css?v=3.8"> <link rel="stylesheet" href="/static/css/style.css?v=3.9">
<!-- PWA meta and icons --> <!-- PWA meta and icons -->
<link rel="manifest" href="/manifest.json"> <link rel="manifest" href="/manifest.json">
@@ -1075,7 +1075,7 @@
<!-- Audio Element for native streaming --> <!-- Audio Element for native streaming -->
<audio id="global-audio-player" preload="none"></audio> <audio id="global-audio-player" preload="none"></audio>
<script src="/static/js/app.js?v=3.8"></script> <script src="/static/js/app.js?v=3.9"></script>
</body> </body>
</html> </html>
+13 -3
View File
@@ -3915,12 +3915,22 @@ document.addEventListener('DOMContentLoaded', () => {
bookFileInput.value = ''; bookFileInput.value = '';
window.location.hash = `#reader/book/${book.id}`; window.location.hash = `#reader/book/${book.id}`;
} else { } else {
const errData = await resp.json(); let errMsg = 'Не удалось обработать файл';
alert(`Ошибка загрузки: ${errData.detail || 'Не удалось обработать файл'}`); try {
const errData = await resp.json();
errMsg = errData.detail || errMsg;
} catch (_) {
if (resp.status === 413) {
errMsg = 'Файл слишком большой (превышен лимит размера в Nginx)';
} else {
errMsg = `Код ответа сервера: HTTP ${resp.status}`;
}
}
alert(`Ошибка загрузки: ${errMsg}`);
} }
} catch (e) { } catch (e) {
console.error('File upload error:', e); console.error('File upload error:', e);
alert('Ошибка сети при загрузке файла'); alert('Ошибка сети или соединение прервано при загрузке файла');
} }
}); });
} }
+2
View File
@@ -2,6 +2,8 @@ server {
listen 80; listen 80;
server_name study.qpid.pro; server_name study.qpid.pro;
client_max_body_size 100M;
location / { location / {
proxy_pass http://127.0.0.1:8002; proxy_pass http://127.0.0.1:8002;
proxy_http_version 1.1; proxy_http_version 1.1;