Веб-разработка: Как я могу позволить пользователю загружать файлы непосредственно на мой CDN (Cachefly)?

РЕДАКТИРОВАНИЕ: MethodBase является, вероятно, лучшим способом просто получить метод, Вы находитесь в (в противоположность целой стопке вызова). Я был бы все еще обеспокоен встраиванием как бы то ни было.

можно использовать StackTrace в рамках метода:

StackTrace st = new StackTrace(true);

И взгляд на кадры:

// The first frame will be the method you want (However, see caution below)
st.GetFrames();

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

[MethodImpl(MethodImplOptions.NoInlining)]
5
задан Tim 15 October 2009 в 20:27
поделиться

5 ответов

Я думаю, что в случае CDN ... сначала нужно получить файлы на сервере ur, а затем использовать API CDN для загрузки в их «ведро». Я не думаю, что вы можете загружать прямо в CDN, если нет способа сопоставить его как каталог на вашем сервере.

5
ответ дан 14 December 2019 в 01:11
поделиться
  • Перемещение / загрузка файла в службу или на сервер, не имеющий прямого доступа, обычно выполняется с помощью API поставщика
  • . Перемещение / загрузка файла на сервер, «принадлежащий» самостоятельно можно сделать с помощью расширений PHP + FTP (для получения дополнительной информации: pear.php.net или pecl.php.ne t)
  • Перемещение / загрузка файла в сервер, «принадлежащий» вам и являющийся одним из многих в кластере, обычно выполняется путем временной загрузки файла на 1 сервер, а затем .sh, .bash или любого другого вызываемого файла, который активирует дальнейшие процессы передачи на другой сервер.
2
ответ дан 14 December 2019 в 01:11
поделиться

Я не думаю, что можно напрямую загружать на другой сервер, но я могу ошибаться. У меня была аналогичная проблема, и я использовал возможности PHP FTP ( http://us3.php.net/manual/en/book.ftp.php ). Я по-прежнему использовал свой сервер в качестве посредника, то есть я загружал файлы на свой сервер, затем FTP передавал их на целевой сервер, а затем удалил файл со своего сервера.

1
ответ дан 14 December 2019 в 01:11
поделиться

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

Если CDN имеет выход в Интернет, вы можете перенаправить запрос на этот сервер и отправьте управление обратно в форму веб-сервера после загрузки файла. Хотя, вероятно, лучше выполнять передачу файлов в бэкенде и держать пользователя подключенным к веб-серверу.

1
ответ дан 14 December 2019 в 01:11
поделиться

Конечно.

Где-то в вашем коде есть переменная "$ target_directory", которую необходимо установить. Это не будет называться так, но в зависимости от того, как настроена ваша функция, она должна быть где-то там-где-то-. Просто используйте абсолютный путь для каталога, в который вы хотите поместить файлы. Кроме того, убедитесь, что каталог имеет CHMOD с номером 777, чтобы его можно было записать.

Опубликуйте свой код, и я могу помочь больше.

0
ответ дан 14 December 2019 в 01:11
поделиться