Перейти к публикации

Ошибка при загрузке файлов в смонтированную сетевую шару.


Рекомендованные сообщения

Обращаюсь к вам с нестандартной проблемой, у самого знаний не хватает.

 

Я попытался разнести фронтенд DLE и файловое хранилище на разные серверы. Цель: отдача фронтенда с быстрого VDS на SSD, а хранение файлов на сервере с широким каналом и обычными дисками.

 

1-й сервер: https://cybersoft.ru

DLE на домене второго уровня с примонтированной сетевой папкой /uploads/files

2-й сервер: https://files.cybersoft.ru

DLE на домене третьего уровня, подключён к БД 1-го сервера и расшарена папка /uploads/files

 

Соответственно при загрузке файла на основном домене фактически он пишется в сетевую шару и загружается на второй сервер.

При скачивании файла ссылки index.php?do=download редиректятся на домен 3-го уровня и фактически скачивание идёт со второго сервера.

 

Единственная проблема: при загрузке объёмных файлов, я получаю ошибку загрузки. Судя по всему, сервер файл принял и скрипт пытается проверить наличие файла, но в это время он все ещё загружается на сетевую шару. В итоге выводится ошибка, однако через некоторое время файл догружается и появляется в списке файлов загруженных к новости…

 

Подскажите, можно ли как-то увеличить период ожидания загрузки файла, чтобы скрипт ждал, пока он фактически загрузится в сетевую папку и не выводил сообщение об ошибке?

 

P.S. Возможно, реализация кривенькая и тупенькая, но как разбираюсь в nix, так и пытался. Может быть, кто-то подскажет более простое решение вместо разработанного мной велосипеда.

Изменено пользователем HorrorTM
Ссылка на сообщение
Поделиться на других сайтах

Ребят, 93 просмотра, ну неужели ни у кого никаких мыслей нет по данному поводу и никто ничего подобного не делал? Подскажите, может быть я велосипед конструирую и есть способ проще разнести фронтенд и файлсервер?

Ссылка на сообщение
Поделиться на других сайтах
11 часов назад, HorrorTM сказал:

Ребят, 93 просмотра, ну неужели ни у кого никаких мыслей нет по данному поводу и никто ничего подобного не делал? Подскажите, может быть я велосипед конструирую и есть способ проще разнести фронтенд и файлсервер?

Я может,конечно,не правильно думаю,но в вашем случае для чего стоит 2-й DLE? Не проще тогда немного изменить файл загрузки файлов в движке,чтоб закачивались в расшаренную папку? Я когда-то делал что-то типа такого,только загружались файлы на яндекс-диск и все прекрасно работало.Если не изменяет память,то редактировал флеш-загрузчик DLE,но это было еще в 9-й версии.

 

Извиняюсь.Кажется файл upload.class.php в \engine\classes\uploads. Прописывал доступ к файловой папке.

Изменено пользователем Spyver
Ссылка на сообщение
Поделиться на других сайтах
  • 2 недели спустя...
В 29.12.2019 в 21:37, HorrorTM сказал:

Ребят, 93 просмотра, ну неужели ни у кого никаких мыслей нет по данному поводу и никто ничего подобного не делал? Подскажите, может быть я велосипед конструирую и есть способ проще разнести фронтенд и файлсервер?

Не мучайтесь ерундой, для нормальной поддержки файловых стораджей, нужна поддержка данного функционала со стороны разработчика, или со стороны отчаянного стороннего разработчика.

Ссылка на сообщение
Поделиться на других сайтах

Присоединяйтесь к обсуждению

Вы можете опубликовать сообщение сейчас, а зарегистрироваться позже. Если у вас есть аккаунт, войдите в него для написания от своего имени.

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

×
×
  • Создать...