Загрузить файл напрямую на удаленный сервер - PullRequest
1 голос
/ 27 июля 2011

Доброго времени суток всем.

У меня есть следующий сценарий:

1 сервер с сайтом, который имеет несколько форм, которые будут публиковать некоторые данные.Часть этих данных должна попадать в базу данных, а также могут быть некоторые файлы, которые необходимо загрузить.

Проблема в том, что на сервере запускается 2 нехватки места, поэтому выделен еще 1 сервер, которыйиметь в качестве основной функции для хранения загруженных файлов.Я могу получить доступ ко второму серверу, используя ssh / ftp / что угодно.

Ограничение состоит в том, что я не могу настроить действие форм для отправки сообщения 2 на второй сервер.

Так что яСпрашивается, могу ли я загрузить файлы 2 на второй сервер, не сохраняя их на первом, и скопировать их после этого (из-за недостатка места).Что-то вроде установки пути загрузки, например «ftp: // secondServerIp / what, учетные данные».

Ответы [ 2 ]

1 голос
/ 27 июля 2011

Загрузка файла метода POST будет храниться во временном каталоге по умолчанию на сервере, если только не указано другое расположение с директивой upload_tmp_dir в php.ini . Вероятно, это может быть ссылка на файл NFS или, если вы ограничены только дисковым пространством, вы можете указать его на RAM-диске , чтобы файлы сохранялись в памяти. Затем вы скопируете его на удаленный сервер и удалите файл с RAM-диска. Будет ли это практичным, зависит от ожидаемой нагрузки.

Другой вариант - добавить обратный прокси-сервер на главном компьютере (например, nginx ), а затем прозрачно проксировать загрузки изображений для обработки сервером хранения, а все остальное - обычным сервером. .

Или вы добавляете правило mod_rewrite к вашему Apache, которое перенаправляет загрузку форм.

1 голос
/ 27 июля 2011

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

Тогда вам нужно будет только установить эту удаленную папку в качестве места назначения для ваших загрузок.

...