Перейти к публикации
Дизайн и модификация IPS Community IPBSkinsBETA
Поиск в
  • Дополнительно...
Искать результаты, содержащие...
Искать результаты в...
Galenfea

Загрузка файлов на другой сервер

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

10/12/08 12:43 (изменено)

Ключевые слова: размещение uploads

 

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

 

Задача: как сделать так, чтобы загрузка файлов производилась на другой сервер? Чтобы все файлы, которые закачиваются пользователями в uploads находились на другом сервере.

 

Предпринятые усилия по поиску решения дали: в версии IPB 2.3.5 в общих настройках форума есть строчка

Домен скрипта для формы загрузки

Опция переназначает параметр action для формы загрузки файлов. Данная опция будет полезна при использовании определенного сервера для загрузки файлов, что бывает крайне необходимо для распределения нагрузки по разным серверам. (Если вы не знаете для чего этот параметр — не изменяйте его!)

Пример значения опции: http:// master.mysite.com/forums

 

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

Путь к директории 'upload' Проблемы с загрузкой на сервер?

Это относительный путь, а не URL.

IPB определил следующий путь к директории uploads:

/catalog/your_site/public_html/forum/uploads

 

Есть ли где-нибудь такой скрипт?

Изменено пользователем Galenfea

Поделиться сообщением


Ссылка на сообщение

http://ipbskins.ru/forum/tags/%E7%E0%E3%F0...9%EB%EE%E2.html

 

вообще тема уже обсуждалась и не раз, есть где-то, вроде, незатегированная похожая тема.

Поделиться сообщением


Ссылка на сообщение

Да видел я это, не нашёл требуемых ответов. Хотя, если поразмыслить, то отрицательный ответ - тоже ответ...

 

Если же сервера разные, то надо будет использовать curl и изменять исходный код. Готового написанного решения нет.
есть в настройках "Upload form action domain". Возможно оно вам поможет, но на удаленном домене должен стоять обработчик, собстно и есть скрипт.

А какой обработчик - хз. Систему не знаю

 

Можно, наверное, присоединить эту тему к той

 

Поставлю тогда так вопрос, где вообще можно прочитать о Upload form action domain или если по-русски Домене скрипта для формы загрузки ? Есть какая-нибудь документация на сей счёт, я честно говоря не представляю где её брать, потому что на wiki.iblink где по идее она есть, там весьма поверхностно на мой взгляд она представлена.

Поделиться сообщением


Ссылка на сообщение
Поставлю тогда так вопрос, где вообще можно прочитать о Upload form action domain или если по-русски Домене скрипта для формы загрузки ?

Я в свое время не нашел. Правда искал не активно.

Меня тоже заинтересовало возможность загрузки изображений в другое место, то поскольку решение не лежало на поверхности, махнул рукой.

Поделиться сообщением


Ссылка на сообщение

а сообщение

На IBR есть для 2.1...
тоже не ответ?

в принципе остается только адаптировать скрипт.

 

доков нету, просто стандартный домен <form action> заменяется на тот, что прописан в настройках.

		if( $this->ipsclass->vars['upload_domain'] )
	{
		$is_reset = 1;
		$original = $this->ipsclass->base_url;

		if( $this->ipsclass->session_type == 'cookie' )
		{
			$this->ipsclass->base_url = $this->ipsclass->vars['upload_domain'] . '/index.' . $this->ipsclass->vars['php_ext'].'?';
		}
		else
		{
			$this->ipsclass->base_url = $this->ipsclass->vars['upload_domain'] . '/index.' . $this->ipsclass->vars['php_ext'].'?s='.$this->ipsclass->session_id.'&';
		}
	}

вот таким образом.

 

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

Поделиться сообщением


Ссылка на сообщение
вот только реализации отображения файлов при поверхностном взгляде я не понял
р

Реализуется через NFS, например, но это если второй сервер не чисто FTP. А если так, то, например, при скачивании аттача, нужно коннектится к нему и забирать файл. Такой вариант, как я уже говорил, есть на IBR для 2.1. идеальным его назвать нельзя, потмоу как картинки, или по крайней мере превью, лучше хранить на сервере, который сможет их быстро отдать. А наиболее часто скачиваемые файлы также хорошо бы уметь быстро отдавать, чтобы не качать их каждый раз с FTP. Такой реализации в паблике нету, так что либо искать написавшего, либо писать самому.

Поделиться сообщением


Ссылка на сообщение

я имел ввиду реализацию встроенную в ipb с доменом загрузки.

 

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

Поделиться сообщением


Ссылка на сообщение

Реализация отображения - в attach.php, функция attach_upload_show() - такая же замена base_url. - не, не то, сорри.

Поделиться сообщением


Ссылка на сообщение

кажется что её вообще нету...

Поделиться сообщением


Ссылка на сообщение

Очень на это похоже. При показе берет из базы директорию-имя, при сохранении в базу пишет те же локальные пути, нигде не проверяя "внешность". Видимо, затычка-недоделка.

 

Соберусь с силами, попробую адаптировать свою фтп-загружалку к 2.3.5.

Поделиться сообщением


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

Есть похожее решение -- [AH23|TASK] Download Remote Images, для хранения у себя.

Вторые выходные хочу его посмотреть, но не успеваю.

 

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

 

Видимо, затычка-недоделка.

Похоже на то.

 

Соберусь с силами, попробую адаптировать свою фтп-загружалку к 2.3.5.

Такая вещь уже используется для IP.Downloads.

Поделиться сообщением


Ссылка на сообщение

Я ее писал 2 года назад, тогда у меня не было файлового архива. Потом сравнил - одно и тоже. Выдрать из архива эту функцию можно, но дорабатывать всё равно надо, файлы иногда приходится удалять после загрузки, они должны удаляться вместе с удалением поста. Этих функций в движке форума нет.

Поделиться сообщением


Ссылка на сообщение
я имел ввиду реализацию встроенную в ipb с доменом загрузки.

 

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

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

 

Очень на это похоже. При показе берет из базы директорию-имя, при сохранении в базу пишет те же локальные пути, нигде не проверяя "внешность". Видимо, затычка-недоделка.

 

Соберусь с силами, попробую адаптировать свою фтп-загружалку к 2.3.5.

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

 

Есть похожее решение -- [AH23|TASK] Download Remote Images, для хранения у себя.

Вторые выходные хочу его посмотреть, но не успеваю.

Так этот мод как раз для другой цели. если пользователь не прикрепляет картинку, а постит через [ img ], то есть вероятность, что когда-нибудь она станет недоступной. Во избежание этого мод копирует её на сервер с форумом и заменяет ссылку с удалённой на локальную.

Поделиться сообщением


Ссылка на сообщение

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

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

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

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

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

Войти

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

Войти сейчас

  • Сейчас на странице   0 пользователей

    Нет пользователей, просматривающих эту страницу.

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