رفع مشکل آپلود عکس محصولات پرستاشاپ زمانی که exec خاموش است

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

رفع مشکل آپلود عکس محصولات پرستاشاپ

رفع مشکل آپلود عکس محصولات پرستاشاپ با استفاده از فایل images.inc.php :

ابتدا وارد مدیریت هاست خود شوید و سپس به فایل منیجر خود وارد شوید و سپس فایل images.inc.php را در ریشه پرستاشاپ خود ( معمولا public_html ) خود پیدا کنید و ویرایش کنید :

دو خط زیر را پیدا کنید :


finfo_close($finfo);
}

و

foreach ($types AS $type)

سپس تمام کد های زیر را ابتدا کپی کنید و سپس بین این دو خط تمام آنها را جایگزین نمایید :

نکته : قبل از هر ویرایشی از فایل خود پشتیبان تهیه کنید تا در صورت وجود مشکل از آن استفاده نمایید.


elseif (function_exists('mime_content_type'))
$mimeType = mime_content_type($file

['tmp_name']);

elseif (function_exists('exec00'))
{
$mimeType = trim(exec('file -b --mime-type '.escapeshellarg($file['tmp_name'])));
if (!$mimeType) $mimeType = trim(exec('file --mime '.escapeshellarg($file['tmp_name'])));
if (!$mimeType) $mimeType = trim(exec('file -bi '.escapeshellarg($file['tmp_name'])));
}

if (empty($mimeType) OR $mimeType == 'regular file' OR $mimeType == 'text/plain')
$mimeType = $file['type'];

سپس فایل را ذخیره کنید و تست کنید که مشکل شما رفع شد یا خیر

2- درخواست فعال کردن تابع exec را به هاستینگ خود ارسال کنید :

همانطور که قبلا گفتیم تابع exec به دلیل امنیت در سرور مسدود می شود اما می توانید یک درخواست در این مورد به پشتیبانی هاست خود ارسال کنید ، ممکن است آنها این تابع را تنها برای سایت شما باز کنند.

3- سطح دسترسی پوشه آپلود را بررسی کنید :

بررسی کنید که پوشه آپلود پرستاشاپ شما با سطح دسترسی محدود تنظیم نشده است ، برای تست می توانید سطح دسترسی را به 777 تغییر دهید . مسیر /img/p

توجه کنید که سطح دسترسی 777 سطح دسترسی خطرناکی است و در صورتی که با 777 مشکل سایت شما رفع شد از پشتیبانی هاست خود درخواست کنید تا suphp را برای شما فعال کنند تا پرستاشاپ با سطح دسترسی 755 نیز کار کند.

4- از هاست پرستاشاپ استفاده نمایید :

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

درباره نویسنده:

مصطفی جانقربان تخصص : مدیریت سرور های لینوکس و ویندوز - دارای مدارک LPI و هک و امنیت سرور و سایت | کاربر گرامی : برای استفاده از دوره های آموزشی و مقالات نت آرام نیازی به پرداخت هزینه نمی باشد ، تنها در صورت تمایل می توانید مبلغی را به دلخواه ( هرچند ناچیز ) برای کمک به نیازمندان صدقه بدهید.

4 ديدگاه

  1. امیر آبان 6, 1395 در 6:35 ب.ظ- پاسخ دادن

    سلام و خسته نباشید
    بابت روش اول که توضیح دادید من این دو خط رو در فایلی که فرمودید در پرستاشاپ 1.6.0.14 پیدا نکردم فکر میکنم شما ورژن های قدیمی تر گفتین با توجه به تاریخ این پست میشه برای ورژن 1.6.0.14 هم ویرایش این فایل توضیح بدید من نیاز مبرمی به حل این مشکل دارم
    با تشکر

    • مصطفی جانقربان آبان 17, 1395 در 9:18 ق.ظ- پاسخ دادن

      با سلام و عرض ادب
      فکر می کنم دیگر این مشکل در نسخه های جدید وجود نداشته باشد ، گزارشی جدیدی برای ما ارسال نشده است ، در هر صورت اطمینان دارید هنوز مشکل آپلود دارید ؟

      موفق باشید

  2. امیر آبان 24, 1395 در 7:03 ب.ظ- پاسخ دادن

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

ثبت ديدگاه