راکت

هاست دانلود در وردپرس

15 پاسخ

سلام به همگی
خسته نباشید
من یه فیچر به سایت وردپرس خودم اضافه کردم ( با کدنویسی )
داستان اینطوریه که کاربر یه سری تصویر باید آپلود کنه
می خوام این تصاویر رو از طریق سایت اصلی آپلود بشن ولی محل ذخیرشون هاست دانلود باشه ، چطوری می تونم این مورد رو هندل کنم ؟
کتابخونه یا چیز دیگه ای هست برای این موضوع ؟
از چه طریقی می تونم تصاویری که آپلود می شن رو چک کنم یه وقت مشکل امنیتی نداشته باشن ؟ برای این مورد هم کتابخانه خاصی هست ؟
مشکل امنیتی منظورم اینه که یه وقت کد مخرب بین عکس ها نفرستند

ثبت پرسش جدید

پاسخ‌ها

15
مهدی نظری
مهدی نظری
@mahdi.nazari

تخصص: توسعه دهنده Front End

سلام دوست من 🖐
امیدوارم حالت خوب و عالی باشی✨

برای اضافه کردن این ویژگی به وب‌سایت وردپرس خودت می‌تونی از کتابخانه‌ها و ابزارهای مختلفی استفاده کنی. اول باید تصاویر آپلود شده توسط کاربران را به هاست دانلود منتقل کنی و سپس اونارو توی دیتابیس ذخیره کنی. در ادامه، می‌تونی از کتابخانه‌ها و روش‌های مختلفی برای افزایش امنیت استفاده کنی. مثال

  1. آپلود تصاویر به هاست دانلود:
    برای این کار، می‌تونی از کتابخانه‌های PHP معمولی یا ابزارهایی مانند move_uploaded_file استفاده کنی تا تصاویر رو به مسیر هاست دانلود انتقال بدی.

    مثال:

    $upload_directory = '/path/to/download/directory/';
    $uploaded_file = $_FILES['file']['tmp_name'];
    $target_file = $upload_directory . $_FILES['file']['name'];
    
    if (move_uploaded_file($uploaded_file, $target_file)) {
       // ذخیره اطلاعات تصویر در دیتابیس
    } else {
       // خطای آپلود تصویر
    }
  2. کنترل امنیتی:
    برای افزایش امنیت و جلوگیری از تزریق کد مخرب به میان عکس‌ها، میتونی از توابع PHP مانند htmlspecialchars و mysqli_real_escape_string برای تمیز کردن داده‌ها استفاده کنی.

    مثال:

    $title = htmlspecialchars($_POST['image_title']);
    $description = htmlspecialchars($_POST['image_description']);
    // استفاده از mysqli_real_escape_string برای جلوگیری از تزریق SQL
    $description = mysqli_real_escape_string($connection, $description);
  3. استفاده از ماژول‌ها و افزونه‌ها:
    برای وردپرس، افزونه‌هایی وجود دارند که به شما این امکان را می‌دهند که تصاویر را آپلود و مدیریت کنید و از نظر امنیتی بهترین روش را اجرا کنید. به عنوان مثال، افزونه‌های مدیریت آپلود فایل و افزونه‌های امنیتی وردپرس می‌توانند به شما کمک کنند.

  4. تصویر سنجی:
    برای بررسی تصاویر برای موارد مخرب، می‌توانید از ابزارهای تصویر سنجی مانند Imagick استفاده کنید تا تصاویر را تحلیل کرده و مطمئن شوید که تصاویر آپلود شده برای امنیت بیشتر مناسب هستند.

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

امیدوارم پاسخم بهت کمک کرده باشه ❤️
موفق و پیروز باشی 🤘🌹

امیرحسین زرنوشه
امیرحسین زرنوشه
@amirzarnooshe2

تخصص: برنامه نویس وب

سلام مهدی جان دمت گرم
یه سوال برام پیش اومد
توی بخش آپلود تصاویر به هاست دانلود:
گفتی که باید تصاویر رو به هاست دانلودت منتقل کنی ؟
میشه راجب این بخش بیشتر بهم توضیح بدی

من که به دایرکتوری هاست دانلود داخل Cpanel سایتم دسترسی ندارم ( این کد ها هم قاعدتا داخل هاست اصلی قرار دارند )
هاست دانلود Cpanel جدا گونه برای خودش داره
ابزار خاصی وجود داره که بخوام این کار انتغال رو باهاش مدیریت کنم ؟ یعنی مثلا یه پوشه داخل وردپرسم ایجاد بشه بعد هرچی اونجا آپلود شد خودش خود کار بره داخل هاست دانلود

شاید پاسخ شما همین‌جا باشد

مهدی نظری
مهدی نظری
@mahdi.nazari

تخصص: توسعه دهنده Front End

خب ببین طبیعتا باید هاست دانلود داشته باشی این به کنار و به هاست اصلیت به چند تا توابع و یه افزونه ای چیزی بهش وصل کنی که هروقت کاربرت چیزی آپلود میکنه بره اونطرف

بنظرم برا حل مشکلت توی این گروه پیام بزار

https://t.me/phpgp
دوستان php کار هستن که سریعتر کمکت کنن 💖

امیرحسین زرنوشه
امیرحسین زرنوشه
@amirzarnooshe2

تخصص: برنامه نویس وب

دمت گرم ❤
ممنون از اینکه وقتی گذاشتی

vahid
vahid
@vahid1379

تخصص: توسعه دهنده وردپرس

سلام ارادت برای اینکار باید به php مسلط باشید
از طریق توابع ftp
php ما میتونیم به سرور متصل بشیم و انواع عملیات مثل آپلود و... رو انجام بدیم

ی مثال میزنم

$ftp_server = "ftp.example.com";
$ftp_conn = ftp_connect($ftp_server) or die("Could not connect to $ftp_server");
$login = ftp_login($ftp_conn, $ftp_username, $ftp_userpass);

// open file for reading
$file = "test.txt";
$fp = fopen($file,"r");

// upload file
if (ftp_fput($ftp_conn, "somefile.txt", $fp, FTP_ASCII))
  {
  echo "Successfully uploaded $file.";
  }
else
  {
  echo "Error uploading $file.";
  }

// close this connection and file handler
ftp_close($ftp_conn);
fclose($fp);

برای وردپرس باید ی پلاگین بنویسید تا اینکارو براتون انجام بده راهنمایی بیشتر در خدمتم

vahid
vahid
@vahid1379

تخصص: توسعه دهنده وردپرس

@mahdi.nazari جان move_uploaded_file برای آپلود در سرور محلی هستش برای سرور ریموت باید از ftp استفاده کنن

مهدی نظری
مهدی نظری
@mahdi.nazari

تخصص: توسعه دهنده Front End

اره قطعا درست میگی من منظورشو اشتباه متوجه شدم اما ftp درستشه قطعا برای آپلود

امیرحسین زرنوشه
امیرحسین زرنوشه
@amirzarnooshe2

تخصص: برنامه نویس وب

@ossvahid ممنون وحید جان دمت گرم
من هنوز توی پروژه به این بخش نرسیدم اما چند روز آینده قطعا درگیر این موصوع می شم
امکانش هست یه راه ارتباطی از خودت برام ارسال کنی ، تا با هم در ارتباط باشیم ؟ ( البته اگر وقتش رو داری ، در حد راهنمایی کوچیک )

امیرحسین زرنوشه
امیرحسین زرنوشه
@amirzarnooshe2

تخصص: برنامه نویس وب

این افزونه کاربرد داره ؟ Upload To FTP
بخوام ازش برای بحث ftp استفاده کنم ؟

امیرحسین زرنوشه
امیرحسین زرنوشه
@amirzarnooshe2

تخصص: برنامه نویس وب

این افزونه کاربرد داره ؟ Upload To FTP
بخوام ازش برای بحث ftp استفاده کنم ؟
@ossvahid

vahid
vahid
@vahid1379

تخصص: توسعه دهنده وردپرس

چیزی که من متوجه شدم میخای کاربر ی سری موارد آپلود کنه و اون ها بره داخل هاست دانلود پس کارت با افزونه های عادی اتصال به ftp راه نمیفته

چیزی که شما مد نظرت هستش بیشتر شبیه سیستم های آپلود فایل هستش کاربر میاد ی فایلی رو آپلود میکنه و اون فایل بجای اینکه بره داخل سرور لوکال میره داخل سرور ریموت (همون هاست دانلود)

باید اختصاصي کدنویسیش کنی

وب دیزاینر
وب دیزاینر
@it1press

با سلام
اگر میخوای کدنویسی کنی که خیلی دردسر داره.
اما با استفاده از افزونه hacklog remote میتونی هاست اصلی رو به هاست دیگه (معمولا دانلود میگن) متصل کنی و تمامی فایلهای مالتی مدیا مثل تصاویر در هاست دوم اپلود بشن .
کار با ین افزونه برای اتصال به هاست دوم هم خیلی راحت هست
کافیه ای پی هاست دوم و مسیر (دایرکتوری) مورد نظر رو مشخص کنی

امیرحسین زرنوشه
امیرحسین زرنوشه
@amirzarnooshe2

تخصص: برنامه نویس وب

@it1press سلام
دمت گرم این رو هم یه تست می کنم
این افزونه این قابلیت رو داره که یه پوشه رو خودم انتخاب کنم و فقط اون انتغال پیدا کنه ؟

وب دیزاینر
وب دیزاینر
@it1press

بله
امکانپذیره.
هر دایرکتوری که میخواهید فایلها در اون اپلود بشن رو در فیلد دوم افزونه میتونید مشخص کنید

امیرحسین زرنوشه
امیرحسین زرنوشه
@amirzarnooshe2

تخصص: برنامه نویس وب

@it1press ممنون دمت گرم
تست می کنم

برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام