رتبه موضوع:
  • 0 رای - 0 میانگین
  • 1
  • 2
  • 3
  • 4
  • 5
هدر کردن فایل روی سرور دیگه برای دانلود
#1
سلام.
چطور میشه فایلی رو که رو یه رور دیگه قرار داره رو هدر کنیم برای دانلود؟
پسوندشم rar
پاسخ
تشکر شده توسط:
#2
فکر نمیکنم بشه به این راحتیا. باید منتقل کنید به سرور خودتون.
پاسخ
تشکر شده توسط:
#3
والا الان رو سرور خودم میخوام یه فایل mp3 رو با هدر بفرستم برا دانلود اما حدود 15 ثانیه طول میکشه تا اماده بشه برا دانلود.سرور مجازیم گرفتم که سرعت کار بره بالا اما این وقفه رو نمیدونم چجوری حل کنم.
پاسخ
تشکر شده توسط:
#4
با چه کدی میفرستین؟ باید تکه تکه بخونید و ارسال کنید.
پاسخ
تشکر شده توسط:
#5
از این کد استافده میکنه ادرس فایلو میدم هدر کنه
<?php
header('Content-type: audio/mp3');
header('Content-Disposition: attachment; filename='.$filename);
readfile($file);

پاسخ
تشکر شده توسط:
#6
خوب این کد رو بجاش بگذارین:
<?php
header('Content-type: audio/mp3');
header('Content-Disposition: attachment; filename='.$filename);
if($fp = fopen($file, 'r')) {
    while(!feof($fp)) {
        echo fread($fp, 4096);
    }
    fclose($fp);
}

توضیح: کد شما داره فرضاً 5 مگابایت رو یکجا میاره توی RAM و خوندن این مقدار از دیسک و منتقل کردن به RAM بطور کامل هم خودش زمانبره. دقت کنید که وقتی شما فایل رو توی سیستمتون باز میکنید تا پخش بشه هم یکجا توی RAM نمیاد.
پاسخ
تشکر شده توسط: php , saeed
#7
با این کد شما میگه
File not found
ولی با اون کد قبلی فایلو پیدا میکنه و میفرسته واسه دانلود.
پاسخ
تشکر شده توسط:
#8
ببخشید کد رو اصلاح کردم. توی fopen نگفته بودم برای چه حالتی باید باز کنه. پارامتر دوم رو اضافه کردم.
پاسخ
تشکر شده توسط:
#9
ممنونم ولی بازم حدود 6 ثانیه طول میکشه تا یه فایل 5 مگی رو اماده کنه.
چیکار کنم برا افزایش سرعت؟
از سرور مجازیم استفاده میکنم.
پاسخ
تشکر شده توسط:
#10
هدر Content-Length رو هم ست کنید. باید با filesize حجم فایل رو بگیرین و بعنوان مقدارش بگذارین. شاید مشکل از موارد دیگه باشه و تقصیر از این اسکریپت نباشه. با دستور microtime قبل و بعد از خوندن فایل زمان رو بگیرین ببینید داخل این فایل مشکل وجود داره یا نه. اگه زمانها نزدیک به هم بود، احتمالاً سرور شما توی فراخوانی فایل کند عمل میکنه و خود فایل داره به شیوه مناسب جواب میده.
پاسخ
تشکر شده توسط:
#11
اقای شهرکی برای فایل rar کانتنت تایپشو تغییر دادم اما جواب نداد.چیز دیگشم باید تغییر داد؟
پاسخ
تشکر شده توسط:




کاربران در حال بازدید این موضوع: 1 مهمان