مرکز آموزش

رفع خطای Access to the path 'C:\domain.com\Plugins\bin\Nop.Plugin.DiscountRules.CustomerRoles.dll' is denied در Nop Commerce

  • رفع خطای Nop.Plugin.DiscountRules.CustomerRoles, رفع خطای Nop.Plugin.DiscountRules.CustomerRoles.dll' is denied, رفع مشکل Application startup exception: System.Exception: Plugin
  • 19

پلاگین های فروشگاه ساز Nop Commerce معمولا در مسیر Plugins/bin ذخیره می شوند. اما اگر دسترسی به آن ها مشکل داشته باشد، معمولا ضمن درج نام پلاگین با خطای زیر به عنوان نمونه مواجه می شوید:

Application startup exception: System.Exception: Plugin 'Must be assigned to customer role'. Access to the path 'C:\domain.com\Plugins\bin\Nop.Plugin.DiscountRules.CustomerRoles.dll' is denied.
Access to the path 'C:\domain.com\Plugins\bin\Nop.Plugin.DiscountRules.CustomerRoles.dll' is denied.

 

دلیل خطا

ساختار ناپ کامرس به گونه ای طراحی شده که معمولا فایل های dll و سیستمی مربوط به پلاگین ها را به جای دسترسی مستقیم در مسیری موقتی کپی کرده و اصطلاحا از فضای Shadow Copy فراخوانی می کند. حال ممکن است گاهی اوقات آنچه که در Shadow Copy می باشد با آنچه که در مسیر اصلی پلاگین ها وجود دارد تناقض داشته باشد. مثلا فایل مورد نیاز در Shadow Copy نباشد. این به آن معناست که در حین اجرای پردازه مرتبط با فایل ذکر شده در متن خطا، وبسایت دچار Crash شده و بخش Shadow Copy به درستی فرایند خود را تکمیل نکرده است. همچنین ممکن است دسترسی لازم جهت دسترسی به فایل ذکر شده در متن خطا وجود نداشته باشد. بنابراین باید سطوح دسترسی فولدر Plugins و موارد بالادستی را تصحیح کنید و در صورت لزوم Application Pool را برای بازسازی فرایند Shadow Copy اصطلاحا Restart کنید.

 

نحوه رفع خطا

برای تصحیح سطوح دسترسی، مراحل زیر را طی کنید:

1- به پنل پلسک لاگین کنید.

2- در بین گزینه های موجود، File manager را انتخاب و به مسیر بارگذاری اطلاعات وبسایت (احتمالا httpdocs) مراجعه کنید.

3- پوشه Plugins را یافته و در ستون آخر گزینه Change Permissions را برگزینید.

4- اطمینان حاصل کنید سه کاربر Administrators، System و Application Pool Group از دسترسی سطح کامل (Full Control) برخوردار هستند.

معمولا ممکن است کاربر Application Pool Group دسترسی Full Control نداشته باشد، بنابراین باید دسترسی مذکور را برای آن تنظیم کنید.

5- پس از تنظیم Full Control برای هر 3 کاربر، گزینه Replace permission entries on all child objects with the entries displayed here را نیز فعال و سپس با کلیک بر روی دکمه Apply/OK، تغییرات را اعمال کنید.

کار تمام شد. انتظار می رود با تصحیح سطوح دسترسی مشکل رفع شود. اگر مشکل رفع نشد به نکاتی که در ادامه ذکر شده است توجه فرمایید.

 

در صورت تداوم مشکل یک مرتبه وبسایت را Restart کرده و سپس از وجود فایل ذکر شده در متن خطا در مسیر Plugins/bin، اطمینان حاصل کنید. همچنین به عنوان راهکار بعدی از پشتیبانی هاست یا سرور بخواهید تا یک بار Application Pool وبسایت شما را Restart کنند.
اگر با طی مراحل فوق هنوز مشکل پابرجا بود، بایستی کاری کنیم که ناپ کامرس مجبور شود فایل‌های Shadow Copy را بازسازی کند. بنابراین به پوشه Plugins مراجعه و پوشه bin را به bin-old تغییر نام دهید. سپس یک پوشه جدید با نام bin ایجاد کنید و در نهایت یک بار دیگر وبسایت و Application Pool را Restart کنید و به آدرس وبسایت مراجعه کنید. با این اقدام فایل‌های Shadow Copy دوباره بازسازی شده و به طور خودکار در مسیر bin قرار خواهند گرفت و فعالیت وبسایت بدون مشکل از سر گرفته می‌شود.

تمامی حقوق مادی و معنوی این مطلب متعلق به HiSupport است.
کپی برداری از مطالب تنها با ذکر منبع و لینک به وبسایت HiSupport بلامانع است.


آیا این آموزش به شما کمک کرد؟