طراحی سایتهاست

انتقال فایل بین 2 هاست بدون دانلود و آپلود + با استفاده از PHP


آموزش هاست و سرور

انتقال فایل بین ۲ هاست بدون دانلود و آپلود (با PHP و Cron Job)

آیا می‌خواهید فایل‌های حجیم را سریع به هاست جدید منتقل کنید؟

انتقال فایل بین دو هاست زمانی که حجم فایل بالا باشد (مثلاً بسته‌های نصبی داپلیکیتور)، می‌تواند بسیار زمان‌بر و هزینه‌بر باشد. در چنین شرایطی، دانلود فایل روی سیستم شخصی و آپلود مجدد آن اصلاً راهکار منطقی و مناسبی نیست. در این آموزش تخصصی از وبینیو، روش‌های انتقال فایل مستقیم (سرور به سرور) را بررسی می‌کنیم. حتی ترفندی را به شما آموزش می‌دهیم که بدون متصل بودن دامنه به هاست جدید، عملیات انتقال را در کمتر از چند دقیقه انجام دهید!

۱. انتقال فایل بین دو هاست با استفاده از کد PHP

در این روش از تابع copy() در زبان PHP استفاده می‌شود. دقت داشته باشید که برای اجرای این کد، نسخه PHP هاست باید بالاتر از 5 باشد و برای دسترسی راحت به فایل، دامنه شما باید به هاست جدید متصل باشد.

مرحله اول: ایجاد فایل در هاست جدید

  1. وارد هاست جدید شوید و در پوشه‌ای که قصد دارید فایل در آن ذخیره شود (معمولاً public_html)، یک فایل PHP جدید ایجاد کنید.
  2. نام فایل را copy.php بگذارید تا مشخص باشد که این فایل مسئول انتقال است.
  3. روی فایل copy.php راست‌کلیک کرده و گزینه Edit را انتخاب نمایید.
  4. کد زیر را کپی کرده و درون آن قرار دهید:
<?php
// برای جلوگیری از قطع شدن عملیات در فایل‌های حجیم
set_time_limit(0);

// پارامتر اول مسیر فایل مبدا و پارامتر دوم نام فایل جدید است
if(copy('https://www.old-site.com/file.zip', 'new-file.zip')) {
    echo "انتقال با موفقیت انجام شد!";
} else {
    echo "خطا در انتقال!";
}
?>

ایجاد فایل copy php در سی پنل

📌 نکته مهم: در کد بالا، به جای آدرس لینک اول، آدرس مستقیم فایل در هاست قدیم را وارد کنید و در بخش دوم، نامی که می‌خواهید فایل با آن در هاست جدید ذخیره شود را بنویسید.

مرحله دوم: اجرای فایل

کافی است مرورگر خود را باز کنید و آدرس فایلی که ساختید را فراخوانی کنید. (مثلاً https://yourdomain.com/copy.php). مرورگر در حالت لودینگ می‌ماند تا انتقال به پایان برسد. به هیچ وجه صفحه را نبندید تا پیام موفقیت‌آمیز بودن آن نمایش داده شود.

۲. انتقال مستقیم با Cron Job (راهکار زمان قطع بودن دامنه!)

گاهی اوقات شما هاست جدیدی خریده‌اید اما دامنه هنوز به آن متصل نیست یا DNSها تغییر نکرده‌اند. همچنین در برخی هاستینگ‌ها (مثل نت افراز) دسترسی مستقیم به ترمینال (SSH) مسدود است. در این شرایط، بهترین، پایدارترین و سریع‌ترین راهکار استفاده از ابزار کرون جاب (Cron Jobs) است.

💡 چرا این روش فوق‌العاده است؟ چون دستور مستقیماً توسط هسته لینوکس سرور اجرا می‌شود، درگیر قطعی اینترنت شما یا محدودیت زمانی کدهای PHP نمی‌شود و برای فایل‌های چند گیگابایتی عالی عمل می‌کند.
  1. وارد پنل هاست خود (سی پنل یا دایرکت ادمین) شوید و به بخش Cron Jobs (کرون جاب‌ها) بروید.
  2. یک کرون جاب جدید ایجاد کنید و زمان اجرای آن را روی هر ۱ دقیقه (قرار دادن ستاره * در تمامی فیلدها) تنظیم کنید.
  3. در کادر Command (دستور)، باید از دستور wget استفاده کنید. کد زیر یک نمونه استاندارد است:
/usr/bin/wget -q -O /home/username/domains/yourdomain.com/public_html/backup.zip https://old-site.com/backup.zip

راهنمای کد بالا: به جای username نام کاربری ورود به هاست جدید خود، و به جای yourdomain.com نام دامنه‌ای که به عنوان دامنه اصلی در هاست ثبت کرده‌اید را بنویسید. آدرس اینترنتی انتهای کد نیز لینک دانلود فایل در سرور قدیم شما است.

⚠️ هشدار بسیار حیاتی (حتماً بخوانید):
پس از ذخیره کردن این دستور در کرون جاب، فقط ۱ دقیقه صبر کنید تا فرآیند دانلود شروع شود. سپس بلافاصله آن کرون جاب را از لیست حذف کنید! نگران نباشید، دانلود قطع نمی‌شود، بلکه حذف کردن آن باعث می‌شود سرور در دقیقه بعدی مجدداً فایل را از صفر دانلود نکند و باعث خرابی فایل زیپ شما نشود. پس از چند دقیقه به File Manager بروید، خواهید دید فایل دانلود شده است.

۳. ترفند طلایی برای حرفه‌ای‌ها: گول زدن سیستم با فایل Hosts

اگر طراح سایت، برنامه‌نویس یا سئوکار هستید، یک ترفند فوق‌العاده برای زمانی که می‌خواهید بسته‌های نصبی (مثل Duplicator) را پیش از ست شدن DNSها روی سرور جدید نصب کنید وجود دارد. شما می‌توانید به ویندوز خود دستور دهید که دامنه را موقتاً از روی IP هاست جدید بخواند:

  • نرم‌افزار Notepad را در ویندوز به صورت Run as administrator باز کنید.
  • از طریق منوی File و Open، فایل hosts را در مسیر C:\Windows\System32\drivers\etc باز کنید.
  • در خط آخر، IP هاست جدید (مثبت ۸۹.۴۲.۴۴.۹۴) و سپس با یک فاصله نام دامنه سایتتان را بنویسید و فایل را ذخیره کنید. (مثال: 89.42.44.94 yourdomain.ir)

کار تمام است! حالا اگر آدرس سایت یا فایل‌های نصب (مثل installer.php) را در مرورگر تایپ کنید، مستقیماً از هاست جدید باز می‌شوند و می‌توانید سایت خود را نصب کنید. فراموش نکنید پس از اتمام کار، این خط را از فایل پاک کنید تا سیستم به حالت عادی برگردد.

جمع‌بندی نهایی

با استفاده از این سه روش حرفه‌ای، می‌توانید فایل‌های حجیم و گیگابایتی را بین دو هاست بدون نیاز به دانلود روی سیستم خود جابه‌جا کنید. این کار نه تنها زمان انتقال را به چند ثانیه یا دقیقه کاهش می‌دهد، بلکه هزینه‌های ترافیک اینترنت شما را نیز به صفر می‌رساند.

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


پیج اینستاگرام احسان قسیمی

طراحی سایت در مشهد

احسان قسیمی

احسان قسیمی – بنیان‌گذار آژانس دیجیتال مارکتینگ وبینیو احسان قسیمی یک مشاور، مدرس و کارآفرین در حوزه بازاریابی دیجیتال است. او بنیان‌گذار وبینیو، یک آژانس حرفه‌ای در ایران است که در زمینه‌های طراحی سایت، سئو، گوگل ادز و مشاوره کسب‌وکار فعالیت می‌کند. با بیش از یک دهه تجربه تخصصی، او تاکنون به ده‌ها کسب‌وکار در ایران و بازارهای بین‌المللی (ترکیه، امارات و آمریکا) کمک کرده است تا با استفاده از وب‌سایت‌های کاربرمحور، استراتژی‌های سئو و کمپین‌های تبلیغاتی هوشمند به رشد پایدار، افزایش فروش و برندسازی قدرتمند برسند. احسان قسیمی به عنوان عضو سازمان نظام صنفی رایانه‌ای خراسان رضوی ( مشاهده پروفایل در سازمان نصر ) اعتقاد دارد آینده بازاریابی دیجیتال در ترکیب هوشمندانهٔ تکنولوژی و تحلیل انسانی نهفته است؛ به همین دلیل، تمرکز حرفه‌ای او بر هوش مصنوعی، استراتژی دیجیتال و برندینگ است تا به برندها کمک کند در بازار پررقابت امروز بیشتر و بهتر دیده شوند.

نوشته های مشابه

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *