-
June 20th, 2019, 09:06
#1
آموزش انتقال فایل از هاست به هاست
برای انتقال فایلهای با حجم بالا از یک سرور به سرور دیگر زحمات زیادی لازمه و بسیار طاقت فرسا نیز هست، چون یک بار باید فایل رو دانلود کنید و سپس همون فایل رو آپلود کنید روی سروری که میخواهید. حالا فرض کنید حجم فایل شما بالای 200 مگابایت هست و شما با اینترنت 128 کیلو بیت به اینترنت وصل شده باشید …!!!! فکر میکنم لازم نیست دیگه بقیه ماجرا رو توضیح بدم. یه روش خوب برای راحتتر شدن این کار وجود داره و اون استفاده از یک کد PHP برای دانلود فایل از روی هاست دیگر (Remote File) هست. تابع نوشته شده در زیر برای اینکار مناسب هست و این کار رو برای شما انجام میده:
- 1 function download_remote($url, $save_path) {
- 2 set_time_limit (0);
- 3 $f = fopen($save_path, 'w+');
- 4 $handle = fopen($url, "rb");
- 5 while (!feof($handle)) {
- 6 $contents = fread($handle, 8192);
- 7 fwrite($f, $contents);
- 8 }
- 9 fclose($handle);
- 10 fclose($f);
- 11 }
در این متد 8192 بایت معادل 8 کیلو بایت در یک زمان خوانده میشود نه کل فایل، چون اگر کل فایل در یک بار خوانده شود احتمالا خارج از حافظه تعیین شده در تنظیمات PHP خواهد بود. به عبارت دیگر کل فایل منتقل خواهد شد ولی هنگام انتقال در بخشهای 8 کیلو بایتی منتقل میشود.
مثال نحوه ی استفاده از تابع:
- 1 if (isset($_POST['submit'])) {
- 2 $url = $_POST['url'];
- 3 $file_name = basename($url);
- 4 $save_path = $file_name;
- 5 download_remote($url, $save_path);
- 6 }
- 7 ?>
- 8 <form action="" method="post">
- 9 <label>file address:</label><input type="text" name="url"/>
- 10 <p>example: https://daskhat.ir/sitemap.xml.gz</p>
- 11 <input type="submit" name="submit" value="Download"/>
- 12 </form>
در کد بالا فایل از آدرس “https://daskhat.ir/sitemap.xml.gz” دانلود و در همسایگی فایل remote_download.php (فایل مربوط به کدهای بالا) ذخیره خواهد شد.
توجه
دوستان این مطلب رو خودم تهییه نکردم و منبع داره
-
تعداد تشکر ها ازshayantl به دلیل پست مفید
-
June 20th, 2019 09:06
# ADS
-
August 29th, 2019, 10:31
#2
پاسخ : آموزش انتقال فایل از هاست به هاست
با سلام
چرا فایل ها رو از طریق rsync و یا از طریق sftp انتقال نمیدین ؟
https://hostdoc.ir/
-
تعداد تشکر ها از arttheft به دلیل پست مفید
-
August 29th, 2019, 12:34
#3
پاسخ : آموزش انتقال فایل از هاست به هاست
از sftp استفاده کنید اگر هر دو سرور به روت دسترسی دارید / بنظرم بهترین روش هست و ساده ترین
-
-
September 5th, 2019, 13:47
#4
عضو انجمن
پاسخ : آموزش انتقال فایل از هاست به هاست
اسکریپت انتقال فایل از هاست به هاست دیگر با استفاده از دانلود
https://rokaweb.ir/%D8%A7%D9%86%D8%A...7%D8%B3%D8%AA/
انتقال فایل از هاست به هاست دیگر با استفاده از آپلود در FTP
https://rokaweb.ir/%d8%a7%d9%86%d8%a...d9%84-ftp-php/
-
تعداد تشکر ها از AMIB به دلیل پست مفید