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

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


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

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

 

Я попытался разнести фронтенд 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 просмотра, ну неужели ни у кого никаких мыслей нет по данному поводу и никто ничего подобного не делал? Подскажите, может быть я велосипед конструирую и есть способ проще разнести фронтенд и файлсервер?

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

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

Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас
×
×
  • Создать...