PDA

توجه ! این یک نسخه آرشیو شده میباشد و در این حالت شما عکسی را مشاهده نمیکنید برای مشاهده کامل متن و عکسها بر روی لینک مقابل کلیک کنید : مخفی کردن حجم فایل هنگام دانلود آن



zarat
March 26th, 2015, 11:39
با سلام خدمت دوستان انجمن

حتما دیدین که بعضی سایت ها وقتی ازشون فایل دانلود میکنید ( چه با دانلود منیجر و چه با دانلودر مروگر ) زمان مشخصی برای دانلود و حجم کلی فایل رو نمیگه.
منم میخوام کاری کنم که وقتی از سایتم چیزی دانلود میشه حجم کلیش مشخص نشه .
منبع های خارجی زیادی هم دیدم و مطالعه کردم و اتفاق نظر روی جلوگیری ارسال Content-lengh در هدر Http بود . اما متاسفانه هرکاری کردم درست نشد و به نتیجه نرسیدم.
ممنون میشم اگه منو راهنمایی کنین.
باتشکر

- - - Updated - - -

up

- - - Updated - - -

up

Amir Mohammad 99
March 26th, 2015, 19:39
لطفا نمونه ای بدید تا کمکتون کنیم
من تا حالا به همچین مشکلی برنخوردم مگر اینکه فایل تو سرور نباشه و حذف شده باشه ( دانلود نشه )
موفق باشید

Rayka
March 26th, 2015, 22:07
سلام این کار معمولا مشکل ساز میشه چون فایل در زمان دانلود stream میشه که در اکثر موارد قابلیت resume از بین میره و با نت ایران جالب نیست
فکر نمیکنم اسکریپت/ ماژول / .... برای این مورد وجود داشته باشه و احتمال زیاد باید نوشته بشه


لطفا نمونه ای بدید تا کمکتون کنیم
من تا حالا به همچین مشکلی برنخوردم مگر اینکه فایل تو سرور نباشه و حذف شده باشه ( دانلود نشه )
موفق باشید
از onedrive دو تا فایل انتخاب کنید و بزارید برای دانلود فایل در زمان دانلود zip میشه و به شما حجم و زمان داده نمیشه

http://www.webhostingtalk.ir/attachment.php?attachmentid=25655&stc=1

zarat
March 27th, 2015, 16:41
فکر نمیکنم اسکریپت/ ماژول / .... برای این مورد وجود داشته باشه و احتمال زیاد باید نوشته بشه
اسکریپتش هست و جواب میده اما باید لینک رو دستی به اسکریپت وارد کنین تا زمان دانلود و حجم فایل رو نامشخص کنه .
من میخوام روی تمامی لینک های سایتم این کار رو انجام بدم .

Rayka
March 27th, 2015, 18:40
خوب الان احساس نمی کنید که اگر اون اسکریپت بدید 1 نفر برای شما یه سری تغییرات بده زود تر به نتیجه می رسید.
فقط باید ببینید اسکریپت بهینه هستش یا خیر چون ممکنه با افزایش کانکشن ها کارای بیاد پایین و یا منابع بی دلیل در گیر کنه

delta
March 29th, 2015, 14:53
این کار باعث نارضایتی مشتری و کاربراتون میشه..چون وقتی کسی نمیدونه چه قدر دیگه مونده فایل دانلود بشه بیخیالش میشه

zarat
March 29th, 2015, 22:57
این کار باعث نارضایتی مشتری و کاربراتون میشه..چون وقتی کسی نمیدونه چه قدر دیگه مونده فایل دانلود بشه بیخیالش میشه

بله متوجه هستم خودم هم زیاد مایل نیستم این کار رو انجام بدم . ولی وقتی استاد گیر بده دیگه نمیشه کاریش کرد . نمیدونم اینهمه پروژه و داستان چرا به این یکی گیر داده :)
گفتن کاری کنید موقع دانلود ، زمانش و حجم کلی فایل مشخص نشه . هر چی هم سرچ کردم مطلب خوبی در این مورد پیدا نکردم .

JeyServer
March 30th, 2015, 20:26
اسکریپتش هست و جواب میده اما باید لینک رو دستی به اسکریپت وارد کنین تا زمان دانلود و حجم فایل رو نامشخص کنه .
من میخوام روی تمامی لینک های سایتم این کار رو انجام بدم .

سلام
بله مثل همیشه دوستان با جواب هاشون گل کاشتند!
ببینید وب سرور ها از استاندارد RFC 2616 مقدار Content-Length رو برای مرورگر ارسال میکنند و شما نیاز به حذف این مقدار دارید.
روش این کار با توجه به سطح نیاز شما و سطح دسترسیتون متفاوته.
اگر دسترسی به root سرور دارید و میتونید تنظیمات وب سرور رو تغییر بدید:
وب سرور انجین ایکس: http://wiki.nginx.org/HttpHeadersMoreModule#more_clear_input_headers
وب سرور آپاچی: http://codeblow.com/questions/how-you-can-disable-this-content-length-response-header-with-apache/
اما اگر دسترسی به مدیریت سرور ندارید باید تمامی درخواست های دانلود رو به یک فایل اسکریپت مثلا php یا cgi ارجاع بدید(rewrite)
من اینجا یک مثال php میزنم که کد اصلی در http://php.net/manual/en/function.readfile.php قابل مشاهده هست:
کد اصلی:
http://paste.ubuntu.com/10707505/
کد صحیح شده:
http://paste.ubuntu.com/10707507/