با وجود اینکه نگهداری از یک وب سایت وردپرسی کار سختی به نظر نمی رسد ولی وقتی یک سایت که برپایه وردپرس ایجاد شده بزرگ می شود و محتوای زیادی در آن قرار می گیرد یا بازدید زیادی پیدا می کند ممکن است در بخش هایی تیونینگ و بهیه سازی نیاز باشد که یکی از مهمترین آنها Memory Limit در وردپرس است.
شاید به عنوان ادمین سایت گاهی با مشکل memory limit یا محدودیت حافظه در وردپرس برخورد کرده باشید، این مشکل در واقع از وردپرس نیست از زبان برنامه نویسی PHP است که وردپرس بر مبنای آن ایجاد شده و به راحتی قابل رفع است. پس در اینجا طی چند مرحله به نوع مشکل و بهترین روش رفع آن می پردازیم
در واقع PHP یک زبان برنامه نویسی اوپن سورس و چابک سمت سرور است که کدهای وردپرس با آن نوشته شده و برای اینکه صفحات ایجاد شده با وردپرس را نمایش دهد سمت سرور و پشت صحنه اجرا می شود.
خروجی فایل های PHP در سمت کاربر به صورت html به مروگر تحویل می شود تا ما یک صفحه با آیتم های مختلف را در مرورگر کامیپوتر یا تلفن همراه خود ببینیم. و مدت هاست که به عنوان یکی از محبوب ترین زبان های برنامه نویسی تحت وب توسط برنامه نویسان استفاده می شود.
به طور پیش فرض محدودیت حافظه پی اچ پی یا PHP memory limit در وردپرس 32 مگابایت است، که برای بیشتر وب سایت ها این مقدار کافی و مناسب است، خصوصا اگر فایل های ویدئو زیاد یا پلاگین های مشکل دار ندارید این مقدار کاملا مناسب است. زمانی که شما یک بخش سنگین مثل یک افزونه که خاص یا ویدیوی جدید را اجرا می کنید وردپرس ممکن است علاوه بر اینکه این مقدار 32MB را استفاده می کند برای جبران کسری تا 40MB هم به صورت خودکار برداشت کند ولی در صورت نیاز به مقدار بیشتر با خطای Fatal error: Allowed memory size of 32MB bytes exhausted یا خطای مشابه مواجه می شود.
استفاده از نسخه های به روز php علاوه بر اینکه بهره وری بالاتری دارد به دلیل اینکه ساختار مدرن تری دارد با قطعه کد ها بهینه تر برخورد می کند، حافظه و تسک ها را بهتر مدیریت می کند، همچنین امنیت آن بالاتر است.
پلاگین های وردپرس توسط افراد و شرکت های مختلفی نوشته و یا ایجاد می شوند، استفاده از افزونه های زیاد به صورت همزمان یا افزونه هایی که بروز نشده اند یا پلاگین هایی که به دلیل ساختار ضعیف یا حتی نوع کاربردشان مثل افزونه المنتور حافظه زیادی مصرف می کنند می تواند باعث مشکل memory limit شود. پس توصیه می شود تا جای ممکن از پلاگین های غیر ضروری یا کمتر مورد نیاز استفاده نکنید، کمترین تعداد افزونه بهترین پرفورمنس را برای شما ایجاد می کند، همیشه افزونه ها را به روزرسانی کنید، و از افزونه های ناشناس یا افزونه هایی که تعداد کمی از آن نصب شده استفاده نکنید.
اگر در وب سایت وردپرسی خود تعداد زیادی ویدئو آپلود کرده باشید باید بدانید ویدیو یکی از مواردی است که حافظه وردپرس را می بلعد و شما حتما با این مشکل مواجه خواهید شد.
اگر اندازه پیش فرض جوابگوی ما نیست و با خطا مواجه می شویم برای بدست آوردن اندازه متنساب حافظه باید بدانیم چه مقدار حافظه استفاده شده و یک ابزار به صورت افزونه به نام Server IP Memory Usage Display وجود دارد که آن را نمایش می دهد و می توانید بعد از اتمام کار آن را حذف کنید.
همانطور که قبلا گفتیم اندازه پیش فرض حافظه وردپرس 32MB است که در برخی سرویس دهنده ها ممکن است 64MB باشد، ولی می توانید آن را تا 256 یا بیشتر هم افزایش دهید.
قبل از این کار توصیه می شود مواردی که بالاتر به عنوان دلیل حطای memory limit اعلام شد را بررسی کنید و اگر پلاگین غیر ضروری دارید آن را حذف کنید و نسخه php را بروزرسانی کنید یا از سرویس دهنده بخواهید برای شما ارتقا دهد . بعد اگر اطمینان دارید که این تغییر ضروی است به پوشه وب سایت خود از طریق فایل منیجر یا بخش مدیریت فایل که در کنترل پنل وب میزبانی قرار دارد یا از طریق ftp وارد شوید و به یکی از سه روش زیر می توانید تغییر را اعمال کنید:
این فایل در ریشه یا روت سایت وردپرسی شما قرار دارد در حالت ویرایش عبارت memory_limit را جستجو کنید و در ‘memory_limit’, ’32M’ عدد 32 را به یکی از اعداد 64 ، 128 یا 256 و در صورت اطمینان از نیاز به مقدار بیشتر به حداکثر 1024 تغییر دهید، توجه داشته باشید مقدار بیش از حد مشکلات دیگری را در سایت ایجاد خواهد کرد.
مسیر این فایل در روت سایت است. این فایل که نام آن با نقطه آغاز می شود و به همین دلیل در سیستم عامل لینوکس جزو فایل های مخفی است و ممکن است در نرم افزار ftp کلاینت شما نمایش داده نشود، در اینصورت تنظیمات آن را در برنامه اف تی پ کلاینت خود پیدا کنید. در یک خط این فایل این گزینه را اضافه کنید: php_value memory_limit 128M و عدد 128 را به میزان مورد نیاز تغییر دهید و فایل را ذخیره کنید.
در صورتی که سرور مجازی یا اختصاصی داشته باشید تغییر فایل php.ini امکان پذیر است. دستور php –ini را در خط فرمان لینوکس اجرا کنید تا مسیر فایل php.ini نمایش داده شود سپس فایل مورد اشاره را با ویرایگشر مورد علاقه خود از جمله vi یا nano ویرایش کنید و در خط memory_limit = 32M میزان حافظه مورد نظر را وارد کنید.
در بخش افزونه های سایت وردپرس عبارت Memory Limit راجستجو کنید و یکی از پلاگین های مربوط به این کار را انتخاب و نصب کنید توجه داشته باشید استفاده از افزونه یا پلاگین راهکار مناسبی نیست و توصیه می شود کمترین تعداد افزونه را در وردپرس داشته باشید.
هر گونه کپی برداری از این مطلب تنها با درج لینک این صفحه به عنوان منبع از وبلاگ شبکه دی بلامانع است
مطالب مرتبط:
رای همه کاربرانی که با وردپرس آشنا می شوند این سوال بوجود می آید که در بخش تنظیمات یا Settings، تفاوت نشانی وردپرس با نشانی سایت WordPress Address با Site Address در چیست؟
نمای نسخه انگلیسی Settings
نمای فارسی تنظیمات وردپرس
قسمت نشانی وردپرس (URL) مربوط به محل فیزیکی و آدرس پوشه خود وردپرس است که فایل های هسته وردپرس در آن نگهداری می شوند، این موارد شامل همه آیتمهای مرتبط با وردپرس از جمله افزونه یا پلاگین ها، قالب سایت، عکس و فیلم و همه محتوای سایت در این آدرس قرار می گیرد.
به طور پیش فرض در تمام سرویس های وب هاستینگ این پوشه داخل دایرکتوری ریشه یا روت سایت که معمولا public_html نام دارد قرار می گیرد و محتویات وردپرس می تواند در این پوشه باشد که در این صورت مستقیم در root سایت قرار دارد یا اینکه داخل آن پوشه دیگری برای محتویات وردپرس در نظر بگیریم که ما در این بخش از تنظیمات آن نام را می توانیم تغییر دهیم یا اگر وجود نداشت ایجاد کنیم.
به عنوان مثال اگر نام وب سایت شما domain.com بوده و در زمان نصب ورد پرس آدرس محل نصب وردپرس شما به این شکل است: https://domain.com/wordpress و در صورتی که آن را به test تغییر دهیم آدرس آن به این شکل تغییر می کند: https://domain.com/test
نکته: توجه داشته باشید اگر آدرس نشانی وردپرس را تغییر دهید آدرس های دیگر مثل صفحه ورود هم خود به خود تغییر خواهد کرد و مثلا در نشانی جدید test آدرس ورود به این شکل می شود: https://domain.com/test/wp-login.php
نکته: همچنین توجه کنید اگر پوشه شما مثلا wordpress نام داشته و شما در بخش نشانی ورد پرس از طریق تنظیمات نام آن را به چیز دیگری مثل test تغییر دادید در سرور و بخش file manager هم باید پوشه را rename کنید.
این آدرس همان آدرس اینترنتی وب سایت یا Web Site URL است که بازدیدکنندگان سایت برای دیدن سایت آن را در مرورگر وارد می کنند، به طور پیش فرض این بخش در تنظیمات وردپرس خالی است. ولی به عنوان مثال اگر قصد دارید فقط بخش خاصی مثل فروشگاه شما با وردپرس باشد، آدرس آن را به چیزی مثل shop تغییر می دهید و از این آدرس به بعد با ورد پرس نمایش داده می شود : https://domain.com/shop یکی از کاربردهای دیگر آن زمانی است که وردپرس را در سرور سایت قدیمی خود نصب می کنید و تا زمان آماده شدن سایت جدید برای دیدن صفحات و ویرایش آنها، آدرس آن را در یک بخش جدا مثل test یا newsite قرار می دهید.
به طور خلاصه نشانی وردپرس آدرس همان محلی است که همه فایلها و محتویات مرتبط با ودرپرس در آن ذخیره می شود در سوی دیگر نشانی سایت همان آدرس سایت یا URL است که بازدید کننده برای دیدن سایت تایپ می کند یا ازطریق لینک وارد می شود.
تغییر نشانی سایت به هیچ وجه توصیه نمی شود خصوصا اگر وب سایت قدیمی داشته باشید، ممکن است باعث از دست رفتن لینک ها و SEO ونهایتا موقعیت شما در موتورهای جستجو باشد، پس اگر قصد تغییر نشانی سایت را دارید به این موضوع توجه کنید و یا اگر قصد دارید از ابتدا نشانی دیگری داشته باشید توجه کنید که تغییر آن در آینده می تواند برای شما مشکلاتی ایجاد کند پس از همان ابتدا با دقت آدرس درست را انتخاب کنید یا از حالت پیش فرض تغییر ندهید.
طراحی سایت کپی شده از: https://day.ir/blog/web/wordpress-address-vs-site-address/
با اعلام یک محقق در حوزه امنیت سایبری به نام Cyku Hong از شرکت تایوانی Devcore در بهمن ماه 1400 یک آسیب پذیری خطرناک برای یکی از پلاگین های وردپرس که کاربرد آن استفاده برای نمایش آمار سایت است کشف شد.
نوع این آسیب پذیری شدید گزارش شده و شدت آن از 10 عدد 9.8 است .رفع آن با بروزرسانی و راهنمای زیر قابل انجام است: