Quantcast
Channel: آموزش سیستم مدیریت محتوا ها
Viewing all 383 articles
Browse latest View live

چگونه با فایل wp-config.php وردپرس را ایمن کنیم؟

$
0
0

هر سایت وردپرسی شامل یک فایل به نام wp-config.php هست. این فایل مسئول پیکربندی وردپرس هست که یکی از مهمترین فایل‌های وردپرس به حساب میاد. این پرونده حاوی پارامترهای پیکربندی زیادیه که میتونید برای افزایش امنیت وردپرس این فایل رو ویرایش و شخصی سازی کنید. پیش از این در مقاله آموزش مدیریت فایل کانفیگ وردپرس به معرفی ترفندهایی برای استفاده بهتر در وردپرس پرداختم که میتونید ازش استفاده کنید. تو این آموزش هم میخوام به معرفی روش‌هایی که با استفاده از اون میتونید اقدام به افزایش امنیت وردپرس با فایل wp-config.php بکنید بپردازم.

آموزش افزایش امنیت وردپرس با فایل wp-config.php

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

1. تغییر پیشوند جداول در وردپرس

آیا تا به حال شده که وارد phpmyadmin شده و جداول پایگاه داده سایت وردپرسی خودتون رو ببینید؟(برای مشاهده این فایل میتونید وارد هاست خودتون شده و سپس روی گزینه phpmyadmin کلیک کنید تا به دیتابیس دسترسی داشته باشید). به طور پیش فرض وقتی که مراحل نصب وردپرس رو طی می‌کنید و سایت وردپرسی شما بالا میاد، پایگاه داده دارای یازده جدول بوده و هر جدول دارای یک تابع خاصی است. به عنوان نمونه، wp_posts اطلاعات را از پست‌ها، صفحات و منوی ناوبری ذخیره می‌کنه. از اونجایی که توابع هر جدول از پیش تعریف شده، هکر میدونه که چه جزییاتی از سایت شما در هر یک از این جداول قرار داره. به عنوان مثال، اگر قصد داشته باشه از کاربران سایت شما مطلع بشه و استفاده‌ای ببره، کافیه روی جدول ‘wp_users’ تمرکز بکنه.

وردپرس به صورت پیشفرض از پیشوند wp_ برای همه جداول استفاده میکنه. تغییر این به یک پیشوند منحصر به فرد موجب مخفی کردن نام جدول شده و به شما کمک خواهد کرد که سایت وردپرسی خود را امن‌تر کنید. برای انجام این کار کافیه از فایل wp-config شروع کنید. که جزییات کامل برای این تغییرات رو در مقاله آموزش تغییر پیشوند جداول وردپرس توضیح دادم.

2. غیرفعال کردن ویرایشگر قالب و افزونه در وردپرس

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

افزایش امنیت وردپرس با فایل wp-config.php

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

  1. وارد هاست خود شده و به مسیر public_html مراجعه کنید.
  2. فایل wp-config.php را که در ریشه هاست قرار دارد را انتخاب کرده و به صفحه ویرایش فایل مراجعه کنید.
  3. حالا قطعه کد زیر را در بخش define این فایل قرار داده و ذخیره کنید.
// Disallow file edit
define( 'DISALLOW_FILE_EDIT', true );
بعد از قرار دادن کد بالا امکان ویرایش فایل‌های قالب و افزونه از طریق ویرایشگر پیشخوان وردپرس غیرفعال خواهد شد.

3. غیرفعال کردن نصب افزونه توسط کاربران در وردپرس

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

define(‘DISALLOW_FILE_MODS’,true);

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

4. لزوم وارد کردن اطلاعات FTP برای نصب افزونه

یک روش دیگه هم وجود داره که اگر دوست نداشتید از گزینه قبلی استفاده کنید میتونید یک مرحله ایجاد کنید که برای نصب و آپدیت افزونه‌ای اطلاعات اکانت FTP رو درخواست کنید. در این صورت درست مثل حالت تایید دو مرحله‌ای در وردپرس عمل میشه و تا زمانی که اطلاعات اکانت FTP به درستی وارد نشه، کاربر قادر به نصب افزونه یا قالب در وردپرس نخواهد بود. برای این کار کافیه کدهای زیر رو در فایل wp-config.php قرار بدین.

define(‘FS_METHOD’, ‘ftpext’);

اگر هاست یا سرور شما از FTPS هم پشتیبانی میکنه میتونید از کد زیر استفاده کنید.

define(‘FTP_SSL’, true);

یا در صورت پشتیبانی از SFTP هم میتونید از کد زیر استفاده کنید.

define(‘FS_METHOD’, ‘ssh2’);

گاهی اوقات این قابلیت در وردپرس به صورت پیشفرض فعال هست و کاربران از اون به عنوان یک مشکل یاد می‌کنند که در مقاله آموزش نحوه رفع خطای درخواست اطلاعات FTP در وردپرس روش غیرفعال کردن این قابلیت رو توضیح دادم.

5. تغییر کلید امنیتی در وردپرس

تا حالا به این نکته توجه کردید که شما مجبور نیستید هر بار که قصد انجام کاری رو در وردپرس دارید وارد حساب کاربری خودتون در وردپرس بشید؟ به نظر شما این کار چطور انجام میگیره؟ چگونه وردپرس این اعتبار سنجی رو انجام میده و امکان ورود رو برای شما فراهم میکنه؟

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

define(‘AUTH_KEY’, ‘put your unique phrase here’);
define(‘SECURE_AUTH_KEY’, ‘put your unique phrase here’);
define(‘LOGGED_IN_KEY’, ‘put your unique phrase here’);
define(‘NONCE_KEY’, ‘put your unique phrase here’);
define(‘AUTH_SALT’, ‘put your unique phrase here’);
define(‘SECURE_AUTH_SALT’, ‘put your unique phrase here’);
define(‘LOGGED_IN_SALT’, ‘put your unique phrase here’);
define(‘NONCE_SALT’, ‘put your unique phrase here’);

 

برای اینکه کاری کنید این کلیدها به صورت رندوم ایجاد بشن کافیه روی دکمه زیر کلیک کرده و کدهایی که در لینک زیر قرار داره رو جایگزین کدهایی که مشابه همین نمونه بالا در فایل wp-config.php قرار داره بکنید.

دانلود کلیدهای امنیتی وردپرس

6. مخفی کردن فایل wp-config.php در وردپرس

در هر سایت وردپرسی فایل wp-config در یک مکان پیش فرض یعنی مسیر public_html در هاست قرار داره. از این رو تغییر محل فایل میتونه مانع از افتادن فایل در دست هکرها بشه. خوشبختانه، وردپرس به فایل wp-config این اجازه رو میده که با قرار گرفتن در مسیری جدا و خارج از نصب وردپرس هم کار خودش رو به خوبی انجام بده. به عنوان مثال، اگر سایت شما در روت هاست نصب شده و به اصطلاح در مسیر public_html قرار گرفته باشه، فایل پیکربندی به طور پیش فرض در پوشه public_html حضور خواهد داشت. اما شما میتونید wp-config را در خارج از پوشه public_html قرار داده و بدون مشکل همچنان سایت شما کار بکنه. برای این منظور مراحل زیر را دنبال کنید.

  1. ابتدا وارد هاست خود شده و سپس روی گزینه File manager کلیک کنید تا به مسیر مدیریت فایل‌ها در هاست هدایت شوید.
  2. سپس وارد مسیر public_html شده و دنبال فایل wp-config.php بگردید.
  3. روی فایل راست کلیک کرده و گزینه Move را انتخاب کنید.
  4. مسیر مورد نظر برای انتقال فایل را انتخاب کنید و سپس فایل را انتقال دهید.
  5. با کلیک روی دکمه New File در هاست خود یک فایل جدید با نام wp-config.php در مسیر public_html بسازید و کدهای زیر را در آن قرار دهید.
define('ABSPATH', dirname(__FILE__) . '/');
require_once(ABSPATH . '../path/to/wp-config.php');
حالا همونطور که در کد بالا میبینید به جای ../path/to/wp-config.php مسیری که فایل اصلی wp-config.php را به اون منتقل کردید را وارد کرده و فایل را ذخیره کنید.

7. افزایش امنیت فایل wp-config.php

این پیکربندی در مقابل حملات آسیب پذیر هست و ضروریه تا اونو ایمن کنید. یکی از راه‌های انجام این کار این تغییر محل ذخیره فایل wp-config.php هست که در بالا توضیح دادم. اگرچه برخی از توسعه دهندگان ممکنه با این کار مخالفت کنند، اما تعداد زیادی فکر می‌کنند که این کار ایده خوبی هست.

یکی دیگر از اقدامات امنیتی که میتونید انجام بدین محدود کردن مجوز این فایل هست که در آموزش نحوه تغییر سطح دسترسی فایل ها در سی پنل cpanel به نحوه تغییر پرمیژن فایل‌ها در هاست پرداختیم. برای اینکه بتونید فایل wp-config.php رو به این روش ایمن کنید باید مجوز فایل را روی 600 تنظیم کنید تا فقط صاحبان واقعی قادر به ویرایش فایل wp-config.php باشند. برای این کار روی فایل wp-config.php راست کلیک کرده و گزینه Change Permissions رو انتخاب کنید. سپس در پنجره باز شده دقیقا تیک گزینه‌های مورد نظر رو برای Read و Write که در ستون user قرار داره انتخاب کنید تا سطح دسترسی روی 600 قرار بگیره.

افزایش امنیت وردپرس با فایل wp-config.php

و سپس خطوط زیر را در فایل افشززثسس. وارد کنید تا هکرها از بارگذاری فایل wp-config fi به صورت مستقیم از طریق مرورگر سلب شوند. برای این کار روی فایل htaccess. راست کلیک کرده و گزینه Edit رو انتخاب کنید. سپس کدهای زیر را به فایل اضافه کرده و ذخیره کنید.

# protect wpconfig.php 
<files wp-config.php> 
order allow,deny
deny from all 
</files>

در صورتی که فایل htaccess. رو در مسیر public_html هاست سی پنل ندارید باید بدونید که این فایل جزو فایل‌های مخفی هست. برای نمایش این فایل روی دکمه Settings که در بالای صفحه قرار داره کلیک کنید. سپس در پنجره باز شده تیک گزینه show hidden files رو انتخاب کنید و در نهایت روی دکمه save کلیک کنید که فایل‌های مخفی رو هم بتونید ببینید.

8. خطایابی در وردپرس با فایل wp-config.php

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

define('WP_DEBUG_DISPLAY', false);

اگر دیباگ وردپرس به صورت بالا در فایل wp-config.php ذخیره شده باشه مقدار false در کد بالا نشون دهنده غیرفعال بودن اونه و برای فعال کردن اون باید مقدار false را به true تغییر بدین تا کد شما به شکل زیر تغییر بکنه.

define('WP_DEBUG_DISPLAY', true);

بعد از اینکه خطایابی انجام دادین و مطمئن شدید مشکلی وجود نداره مجددا مقدار اونو به false تغییر بدین.

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

با انجام همه این کارها، ما نحوه محافظت از سایت وردپرسی خودمونو با فایل wp-config.php یاد گرفتیم اما این راهکارها تنها بخش کوچکی از کارهایی هستند که با استفاده ازشون میتونید امنیت وردپرس رو ارتقا بدین. چند اقدام دیگر امنیتی که می‌تونید انجام بدین عبارتند از استفاده از یک افزونه امنیتی وردپرس، استفاده از یک گواهینامه SSL وردپرس، استفاده از یک نام کاربری و رمز عبور منحصر به فرد و قوی، اجرای احراز هویت HTTP و احراز هویت دو مرحله‌ای در وردپرس که میتونه در تامین امنیت وردپرس راهکارهای خوبی باشه. اما مهم‌تر از همه این موارد یک مسئله که خیلی اولویت بالایی داره ایجاد بک آپ در وردپرس هست که اگر زمانی با مشکلی امنیتی مواجه شدید که قادر به رفع اون نشدید بتونید با بازگردانی بک‌آپ در وردپرس به سادگی سایت خود را بدون هیچ مشکلی مجددا اجرا کنید.

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

نوشته چگونه با فایل wp-config.php وردپرس را ایمن کنیم؟ اولین بار در پایگاه دانش میزبان‌فا پدیدار شد.


آموزش غیرفعال کردن و بستن سایت وردپرسی

$
0
0

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

پیرو همین موضوع در این مقاله از پایگاه دانش میزبان‌فا قصد دارم به معرفی راهکارهایی برای غیرفعال کردن موقت وردپرس بپردازم که میتونید تا زمان انتقال وردپرس از یک هاست به هاست دیگه یا انتقال کامل سرور از این راهکارها استفاده کنید که داده های جدیدی در این مدت زمان روی سایت شما قرار نگیره که بعدا متوجه از دست رفتن این مسئله شده و دنبال این باشید که به طریقی داده‌ها رو مجددا از سرور قبلی دریافت کنید.

آموزش بستن سایت وردپرس

برای انجام این این کار راه‌های مختلفی وجود داره که ساخت صفحه در دست تعمیر وردپرس یکی از پر استفاده‌ترین این روش‌ها است. اما بدی که این روش داره اینه که اگه سایت شما محتوایی باشه زیاد جالب نیست که برای مدتی محتوا در دسترس کاربران قرار نگیره. بنابراین تو این مورد از سایت‌ها بهتره که قابلیت‌هایی مثل ورود در وردپرس، ارسال دیدگاه در وردپرس و از این دست مسائل رو غیرفعال کرد. پس میتونید از افزونه Remove Dashboard Access استفاده کنید که دسترسی به پیشخوان وردپرس رو برای کاربران غیرفعال خواهد کرد. این افزونه تا به امروز موفق شده بیشتر از 40.000 نصب فعال و کسب امتیاز 4.8 رو از آن خودش بکنه که با استفاده ازش میتونید از امکانات زیر استفاده کنید.

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

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

دانلود افزونه Remove Dashboard Access

بعد از نصب و فعال سازی افزونه مشابه تصویر زیر منویی با عنوان Dashboard Access در بخش تنظیمات وردپرس اضافه میشه که با رفتن به این منو میتونید تنظیمات دسترسی به پیشخوان وردپرس رو به دلخواه خودتون مشخص کنید.

بستن سایت وردپرس و نحوه غیرفعال کردن وردپرس

Dashboard User Access: با استفاده از این بخش میتونید مشخص کنید که چه نقش های کاربری مجاز هستند تا به پیشخوان وردپرس وارد بشن. در این گزینه چهار حالت وجود داره که شامل موارد زیر هست.

  1. Administrators only: فقط مدیران سایت
  2. Editors and Administrators: مدیران سایت و ویرایشگرها
  3. Authors, Editors, and Administrators: مدیران سایت، ویرایشگرها و نویسنده‌ها
  4. Advanced Limit by capability: در صورت انتخاب این گزینه میتونید بر اساس قابلیت‌ها و میزان دسترسی که با نصب و اضافه کردن افزونه‌ها و کدنویسی که در وردپرس دارید وجود داره انتخاب کنید.

Redirect URL: اگر مایل هستید کسانی که مجاز به ورود در وردپرس نیستند رو به آدرس دیگه ریدایرکت کنید کافیه آدرس صفحه رو در این فیلد وارد کنید.

User Profile Access: این گزینه هم امکان دسترسی به صفحه ویرایش پروفایل در وردپرس رو مشخص میکنه که در صورت فعال کردن تیک این گزینه کاربران قادر به ویرایش صفحه پروفایل خودشون نخواهند بود.

Login Message: و در نهایت با استفاده از این فیلد هم میتونید یک پیغام با متن دلخواه وارد کنید تا هر کاربری که مجاز به ورود در وردپرس نبود این پیغام خطا بهش نشون داده بشه.

بستن سایت وردپرس و نحوه غیرفعال کردن وردپرس

بعد از ذخیره کردن تنظیمات وقتی کسانی که مجاز به ورود در وردپرس نیستند قصد ورود به سایت داشته باشند با تصویر بالا مواجه خواهند شد.

نحوه غیرفعال کردن خرید در ووکامرس

حالا ممکنه سایتی که شما دارید با موضوع فروشگاهی باشه که از افزونه ووکامرس در این مورد استفاده بکنید. برای اینکه سفارشاتی که ممکنه در این بازه زمانی انجام بگیره رو غیرفعال کنید هم میتونید از یک افزونه ساده برای این کار استفاده کنید. افزونه Woocommerce Hide Add To Cart Button این امکان رو میده که بتونید دکمه خرید و افزودن محصول به سبد خرید رو در تمامی صفحات سایت و فروشگاه مخفی کنید. در این صورت امکان خرید و سفارش جدید وجود نخواهد داشت. این افزونه هم تا به امروز موفق شده که بیش از 1.000 نصب فعال و کسب امتیاز 3.4 رو ازآن خودش بکنه که با کلیک روی دکمه زیر میتونید دانلود کرده و ازش استفاده کنید.

دانلود افزونه Woocommerce Hide Add To Cart Button

بعد از نصب و فعال سازی این منو به مسیر ووکامرس> پیکربندی> همگانی مراجعه کنید. مشابه تصویر زیر میبینید که گزینه‌ای با نام Show/Hide all Add to Cart Button در صفحه تنظیمات ووکامرس اضافه شده که با فعال کردن این گزینه دکمه خرید ووکامرس از سایت حذف خواهد شد.

بستن سایت وردپرس و نحوه غیرفعال کردن وردپرس

بعد از ذخیره این تغییرات دکمه خرید و افزودن به سبد خرید به صورت کامل از ووکامرس حذف خواهد شد و بعد از اینکه سایت به صورت کامل روی سرور جدید قرار گرفت میتونید مجددا فعالش کنید.

غیرفعال کردن نظرات در وردپرس

موضوع بعدی که ممکنه بیشتر به وجود بیاد ارسال نظرات در وردپرس هست که توسط بازدیدکنندگان انجام میگیره. برای این کار هم میتونید از آموزش بستن قسمت دیدگاه یا نظرات در وردپرس استفاده کرده و امکان ارسال دیدگاه در وردپرس رو غیرفعال کنید. بعد از اینکه سایت رو انتقال دادید کافیه مجددا دیدگاه‌ها رو هم فعال کنید.

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

نوشته آموزش غیرفعال کردن و بستن سایت وردپرسی اولین بار در پایگاه دانش میزبان‌فا پدیدار شد.

آموزش رفع خطای Minify JavaScript در GTmetrix

$
0
0

تو جلسه قبلی از آموزش جامع GTmetrix، به آموزش رفع خطای Minify CSS در gtmetrix پرداختیم که در بیشتر موارد جزو خطاهایی هست که در اکثر تست هایی که برای بررسی سرعت سایت انجام میگیره به وجود میاد و یاد گرفتیم که چطور خطایابی کرده و برطرف کنیم. حالا تو این آموزش هم قصد دارم به نحوه رفع خطای Minify JavaScript در gtmetrix بپردازم که با استفاده از این آموزش میتونید به minify کردن و فشرده سازی فایل‌های JavaScript در وردپرس و یا هر سیستم مدیریت محتوا بپردازید. منظور از Minify JavaScript این هست که صفحات سایت ما که در قالب HTML برای مرورگر نمایش داده میشن و شامل فایل‌ها و کدهای جاوا اسکریپت هستند رو به نحوی بهینه سازی کنیم که در فشرده‌ترین و خلاصه‌ترین حالت ممکن نوشته شده باشند.

اگر با کدنویسی جاوا اسکریپت آشنایی داشته باشید نمونه زیر رو بررسی می‌کنیم که با این کد جاوا اسکریپت میشه دو تاریخ رو با هم بررسی کرد.

var today, someday, text;
today = new Date();
someday = new Date();
someday.setFullYear(2100, 0, 14);
 
if (someday > today) {
    text = "Today is before January 14, 2100.";
} else {
    text = "Today is after January 14, 2100.";
}
document.getElementById("demo").innerHTML = text;

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

var today,someday,text;today=new Date();someday=new Date();someday.setFullYear(2100,0,14);if(someday>today){text="Today is before January 14, 2100.";}else{text="Today is after January 14, 2100.";} document.getElementById("demo").innerHTML=text;

آموزش رفع خطای Minify JavaScript در GTmetrix

خب، تا اینجای کار با ذکر یک مثال توضیح دادم که منظور از Minify کردن در جاوااسکریپت این هست که کدها را به صورت خلاصه بنویسیم و از فضاهای خالی که باعث بیشتر شدن حجم و افزایش مدت زمان خوندن میشه جلوگیری کنیم. گاهی اوقات هم در برخی خطوط توضیحاتی درج میشه که برای کدنویس کاربردی هست که میتونه با این توضیحات مشخص کنه این بخش از کد چه کاری انجام میده، اما برای کسی که نیاز به مشاهده این سند داره کاربردی نداره. این خلاصه نویسی در کدها فقط مختص زبان CSS، جاوااسکریپت یا HTML نیست و در زبان‌های دیگه هم میتونید با بهینه سازی کردنش سرعت لود رو بهتر کنید. حالا در ادامه به معرفی انواع و اقسام روش‌هایی که با استفاده از اون میتونید اقدام به فشرده سازی فایل های JS در سایت کرده و مشکل minify javascript در gtmetrix رو برطرف کنید می‌پردازم.

1. استفاده از سایت GTmetrix

اگر به صفحه تست سرعت سایت در GTmetrix برگردید و عبارت Minify javascript رو با استفاده از کلیدهای ترکیبی CTRL + F جستجو کنید بعد از کلیک روی این گزینه مشابه تصویر زیر میبینید که چه فایل‌هایی بهینه شده نیستند.

رفع خطای Minify JavaScript در GTmetrix و افزایش سرعت سایت

اگه دقت کنید در انتهای آدرس هر فایل CSS یک عبارت Optimized Version قرار داره که با کلیک کردن روی این عبارت میتونید نسخه بهینه شده و فشرده شده همین فایل JS رو دانلود کنید. تنها کاری که باید انجام بدین اینه که بعد از دانلود فایل وارد هاست خود شده و روی گزینه File Manager کلیک کنید. سپس بر اساس آدرس فایل، به مسیری که مربوط به این فایل هست درpublic_html مراجعه کنید و فایل دانلودی را جایگزین فایل JS قبلی بکنید. علاوه بر این میزان فشرده سازی هر فایل هم قرار گرفته که میتونه شما رو در بهینه کردن فایل JS ترغیب بکنه.

2. استفاده از ابزار آنلاین فشرده سازی JS

در این روش میتونید با استفاده از سایت‌های آنلاین که برای فشرده سازی فایل‌های برنامه نویسی ابزاری رو در اختیار شما قرار میده کدهای خودتون رو بهینه سازی کنید. برای این منظور روی دکمه زیر کلیک کنید تا به صفحه سایت مورد نظر هدایت بشید.

minifycode.com

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

رفع خطای Minify JavaScript در GTmetrix و افزایش سرعت سایت

بعد از قرار دادن کدها روی دکمه Minify Javascript که کلیک کنید کدهای شما به صورت فشرده شده تهیه شده و مثل نمونه زیر بهتون نمایش داده میشه که با جایگزینی در فایل JS میتونید فضاهای خالی و کدهای توضیحات و غیرکاربردی رو حذف کنید و هم اینکه از حجم فایل کم کنید.

رفع خطای Minify JavaScript در GTmetrix و افزایش سرعت سایت

3. Minify javascript برای سایت‌های پویا

تو این حالت سایت شما با استفاده از CMS ها و سایت سازها طراحی شده که دیتابیس دارید و باید از افزونه‌های فشرده ساز استفاده کنید. برای این کار هم افزونه‌های مختلفی ساخته شده که هر کدوم قابلیت‌ها و امکانات خاصی رو به شما میده. اما پیشنهاد می‌کنم برای این کار از افزونه‌ای استفاده کنید که امکانات بیشتری در اختیارتون قرار بده که بتونید علاوه بر minify javascript وردپرس قادر باشید که فایل‌های دیگه مثل CSS و HTML رو هم فشرده کنید. تا به امروز چند افزونه در پایگاه دانش میزبان‌فا برای این کار معرفی کردم که میتونید با مراجعه به مقالات آموزش نحوه نصب افزونه wp rocket جهت افزایش سرعت سایت و آموزش فشرده سازی فایل‌ها در وردپرس و افزایش سرعت سایت با این افزونه‌ها آشنا شده و ازشون استفاده کنید.

4. استفاده از CDN

دو روش قبلی به شکلی بودن که میتونستید فایل‌ها رو بهینه کنید. اما یه حالتی هم وجود داره که با استفاده از این حالت علاوه بر اینکه میتونید همین کار فشرده سازی فایل‌های JS رو پیاده سازی کنید، به دلیل استفاده از شبکه توزیع محتوا CDN این امکان رو هم دارید که داده‌ها رو بر روی بستری به کاربران ارائه بدین که بر اساس موقعیت جغرافیایی از نزدیک‌ترین سرور براشون در دسترس بگیره. این کار میتونه باعث افزایش چند برابری سرعت سایت شما هم بشه.

برای این کار میتونید از کلودفلر استفاده کنید. قبل از هر کاری به راهنمای آموزش استفاده از Cloud Flare  مراجعه کنید و DNS های دامنه خودتون رو روی کلودفلر تنظیم کنید. سپس در پنل کاربری کلودفلر مشابه تصویر زیر روی گزینه SPEED کلیک کرده و تیک سه گزینه javascript، css و HTML رو فعال کنید.

رفع خطای Minify JavaScript در GTmetrix و افزایش سرعت سایت

با فعال کردن این گزینه کلیه فایل‌های سایت شما که روی سرورهای کلودفلر قرار دارند فشرده سازی شده و در زمان کوتاه‌تر و با سرعت بیشتری در دسترس خواهند بود.

امیدوارم که این آموزش هم مورد توجه و پسند شما قرار گرفته باشه و با استفاده ازش تونسته باشید اقدام به فشرده سازی فایل‌های JavaScript در وردپرس و یا هر سایت ساز دیگه بکنید و خطای Minify javascript در gtmetrix را رفع کنید. در صورتی که در رابطه با این آموزش سوال یا مشکلی داشتید از بخش دیدگاه‌ها اعلام کنید تا در کوتاه‌ترین زمان ممکن پاسخگوی شما باشم.

نوشته آموزش رفع خطای Minify JavaScript در GTmetrix اولین بار در پایگاه دانش میزبان‌فا پدیدار شد.

آموزش رفع خطای Inline small CSS and JavaScript

$
0
0

در مقاله قبلی از سری آموزش‌های تست سرعت سایت با استفاده از GTmetrix به آموزش رفع خطای Minify JavaScript که هدف از رفع این خطا خلاصه نویسی و کوتاه نویسی کدهای جاوا اسکریپت سایت بود. حالا توی این آموزش هم قصد دارم به نحوه رفع خطای Inline small CSS and JavaScript در جی تی متریکس بپردازم که با استفاده از این مقاله میتونید با انواع راه‌هایی که این امکان رو به شما میده که فایل‌های CSS و JS رو به شکل کوچکتر و بهینه‌تر در بیارید رو معرفی کنم. پس اگر شما هم هنگام تست سرعت سایتتون در جی تی متریکس با این خطا مواجه شدید تا انتهای این آموزش از پایگاه دانش میزبان‌فا همراه ما باشید.

آموزش رفع خطای Inline small CSS and JavaScript

قبل از معرفی روش‌های رفع خطا باید ببینیم که اصلا این Inline small چی هست و قرار هست با انجام این کار چیکار کنیم. اول باید با inline آشنا بشیم. اگر با روش‌های مختلف کدنویسی css در html کار کرده باشید در حالت کلی ما میتونیم از سه روش برای استفاده از این کدها انتخاب کنیم که شامل موارد زیر هستند.

  • Inline: در این روش کدها به صورت درون خطی هستند و دقیقا داخل فایل html که داریم قرار گرفتند.
  • Internal: تو این روش هم کدها در فایل جداگانه با فرمت css. قرار دارند که بعد از فراخوانی کردن داخل سند html لود خواهند شد.
  • External: تو این روش هم کدها در یک منبع خارجی دیگه که جدا از دامنه و هاست ما هست قرار داره و فقط ما از این منابع لودشون می‌کنیم.

استفاده از هر کدوم از روش‌های بالا یک سری مزایا و معایب خاص خودش رو داره و از طرف دیگه میشه گفت که سند html اولویت بندی برای هر کدوم هم خواهد داشت. یعنی به عنوان نمونه اگر شما برای یک کلاس خاصی از قالب بیاین و با استفاده از سه روش گفته شده یک رنگ خاص یا فونت دلخواهی رو انتخاب کنید، داخل سند html اولویت با کد استایلی هست که به صورت Inline مشخص شده باشه. اگر این حالت وجود نداشت در مرحله بعدی حالت Internal و در نهایت حالت External در اولویت خواهد بود. برای فایل‌های JS هم دقیقا همین موضوع اتفاق خواهد افتاد.

حالا وقتی شما سایتی رو باز می‌کنید، مرورگرها در اولین لحظه ورود منابع CSS و JS که به صورت External لود میشن رو مسدود خواهند کرد. چرا که اولویت با لود سورس‌هایی هست که داخل خود هاست و دامنه شما قرار داره، بعد از اینکه سورس‌های داخلی لود شدند، سورس خارجی از حالت مسدود خارج شده و شروع به لود شدن میکنه که در نهایت با تکمیل شدن این مرحله شما ظاهر کامل یک سایت رو میبینید. اتفاق بدی که در این حالت میفته همین مرحله مسدود سازی و رفع مسدودیت هست. چرا که تو این برهه زمانی هرچند خیلی کوتاه، وقفه‌ای در لود سایت میفته و مرورگر همچنان در حال تلاش برای لود کامل سایت هست. همین مسئله باعث افزایش لود سایت میشه که نتیجش کاهش سرعت سایت و بالا رفتن تعداد درخواست HTTP خواهد بود.

رفع مشکل Inline small CSS and JavaScript

حالا با این توضیحات که در بالا نسبت به اولویت بندی روش‌های لود فایل و مسدود شدن سورس‌های خارجی گفته شد، به نظرتون نمیشه این نتیجه رو گرفت که اگه ما بیایم و این کدهای خارجی رو از داخل خود سایت لود کنیم سایت بهینه شده و این خطا هم برطرف خواهد شد؟

رفع خطای Inline small CSS and JavaScript در GTmetrix

جواب مثبت هست. کاری که شما باید بکنید اینه که کدهایی که مربوط به سورس‌های خارجی هست و اکثرا هم به صورت خلاصه و حجم بسیار کمی هستند رو بردارید و داخل خود سایت قرار بدین. برای این حالت هم دو انتخاب دارید. یکیش این هست که مستقیما کد رو داخل صفحات لود کنید و راه دیگه اینه که با ترکیب کردن و قرار دادن داخل فایل css یا js لودشون کنید. برای اینکه بهتر متوجه این موضوع بشید با یک مثال توضیح میدم.

فرض کنید داخل یکی از صفحات سایت فایلی استایل CSS به شکل زیر فراخوانی میشه که در اون کلاس خاصی برای نمایش نوعی محتوا قرار داده شده.

<html>
  <head>
    <link rel="stylesheet" href="https://mizbanfa.net/css/style.css">
  </head>
  <body>
    <div class="mizbanfa-box error">
      Hello, world!
    </div>
  </body>
</html>

حالا همین فایل style.css که تو خط سوم قرار داره با محتوای زیر قرار داده شده است.

.mizbanfa-box {padding:20px 24px;}
.error {background-color:red;}

فایلی با این مقدار کدنویسی باعث میشه که فقط درخواست http اضافه روی سرور یا حتی سرور خارجی ایجاد بکنه و بهتره اینجور کدهایی که خلاصه هستند و حجم زیادی هم ندارند بیایم و در فایل‌های استایل ادغام کنیم. یا اینکه داخل خود بخشی که مربوط به نمایش محتوا هست با قرار دادن بین تگ <style> ازش استفاده کنیم که برای مثال بالا میشه به شکل زیر استفاده کرد.

<html>
  <head>
    <style>
       .mizbanfa-box {padding:20px 24px;}
       .error {background-color:red;}
    </style>
  </head>
  <body>
    <div class="mizbanfa-box error">
      Hello, world!
    </div>
  </body>
</html>

بعد از اینکه این کار رو انجام دادید خطای Inline small CSS and JavaScript در GTmetrix برطرف شده و بخاطر کاهش تعداد درخواست http و قرار گرفتن کدها در مسیر بهتر سرعت لود سایت هم افزایش پیدا خواهد کرد. برای فایل‌های JS هم دقیقا همین اتفاق میفته که بهتره به جای لود فایل از سورس خارجی بیایم و با ترکیب کردن در فایل‌های js خود سایت یا قرار دادن بین جایی که قصد استفاده داریم این مشکل رو برطرف کنیم.

در صورتی که از سیستم مدیریت محتوای وردپرس استفاده می‌کنید با استفاده از مقاله آموزش فشرده سازی فایل‌ها در وردپرس و افزایش سرعت سایت میتونید با افزونه‌ای که معرفی کردم از این قابلیت استفاده کنید.

امیدوارم که این آموزش هم مورد توجه و پسند شما قرار گرفته باشه و با استفاده از این آموزش تونسته باشید خطای Inline small CSS and JavaScript رو در GTmetrix برطرف کرده باشید. در صورتی که سوال یا مشکلی درباره این آموزش داشتید میتونید در بخش دیدگاه‌ها اعلام کنید تا در کوتاه‌ترین زمان ممکن پاسخگوی شما باشم.

نوشته آموزش رفع خطای Inline small CSS and JavaScript اولین بار در پایگاه دانش میزبان‌فا پدیدار شد.

آموزش انتقال سایت وردپرسی از ساب دامین به دامین اصلی

$
0
0

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

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

آموزش انتقال سایت وردپرسی از ساب دامین به دامین اصلی

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

  1. خروجی گرفتن از فایل‌های وردپرس
  2. انتقال فایل‌ها به روت هاست
  3. به‌روزرسانی و تصحیح آدرس دامنه به طوری که کلیه آدرس‌ها که روی ساب دامین بود به دامین اصلی تغییر دهید
  4. انتقال و ریدایرکت کاربران از ساب دامنه به دامنه اصلی(اختیاری)
پیش از انجام هر کاری برای انتقال وردپرس از ساب دامنه به دامنه اصلی اقدام به تهیه نسخه پشتیبان از دیتابیس وردپرس و فایل‌های موجود در هاست خودتون بکنید تا در صورت بروز خطا و مشکل خاصی بتونید سریعا با جایگزین کردن نسخه پشتیبان مشکلات را برطرف کنید.

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

گام اول: خروجی گرفتن و انتقال فایل‌های وردپرس

اولین کاری که باید انجام بدید تهیه یک فایل خروجی از فایل های موجود در file manager هاست است. پس برای تهیه خروجی از فایل‌های وردپرس لازمه ابتدا وارد هاست سی‌پنل یا دایرکت ادمین خودتون شده و یک نسخه خروجی از کلیه فایل‌های وردپرس با فرمت ZIP. تهیه کنید. بنابراین بعد از آدرس سایتتون از عبارت 2222: برای ورود به هاست دایرکت ادمین و از عبارت 2082: برای ورود به هاست سی پنل استفاده کنید. سپس در صفحه ورود به هاست فیلدهای نام کاربری و رمز عبور اطلاعاتی که هنگام خرید هاست در اختیار شما قرار گرفته را وارد کنید. سپس اگر هاست شما سی‌پنل هست مشابه تصویر زیر از بخش Files روی گزینه File Manager کلیک کنید تا به صفحه مدیریت فایل در هاست سی‌پنل هدایت شوید.

نحوه انتقال سایت وردپرسی از ساب دامین به دامین اصلی

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

نحوه انتقال سایت وردپرسی از ساب دامین به دامین اصلی

بعد از کلیک روی گزینه Compress پنجره زیر برای شما نمایش داده میشه که در اون باید ابتدا فرمت فایل خروجی را در حالت ZIP انتخاب کنید و سپس در انتهای پنجره مسیر مورد نظر برای ذخیره فایل به همراه عنوان اون را وارد کنید.

نحوه انتقال سایت وردپرسی از ساب دامین به دامین اصلی

بنابراین فرمت فایل مورد نظر برای خروجی گرفتن را روی zip. قرار داده و سپس فایل خروجی را با نام دلخواه تعیین کنید. در نهایت روی دکمه Compress Files کلیک کرده و منتظر بمونید تا فایل خروجی بسته به میزان حجم داده‌های سایت تهیه بشه.

گام دوم: انتقال فایل‌های وردپرس به روت هاست

حالا بعد از اینکه فایل خروجی شما ایجاد شد روی فایل راست کلیک کرده و گزینه move رو انتخاب کنید. سپس مسیری که باید فایل رو انتقال بدید بهتون نشون داده میشه که با برداشتن اسم پوشه ساب دامنه میتونید اونو به public_html منتقل کنید.

نحوه انتقال سایت وردپرسی از ساب دامین به دامین اصلی

حالا روی فایل راست کلیک کرده و سپس گزینه extract کلیک کنید تا فایل‌ها از حالت فشرده استخراج شوند.

نحوه انتقال سایت وردپرسی از ساب دامین به دامین اصلی

تا اینجا ما فایل‌های وردپرس را به درستی و در مسیر public_html هاست جدید قرار دادیم و در مرحله بعد باید مسیردهی که مربوط به URL های وردپرس هست رو اصلاح کنیم.

گام سوم: به‌روزرسانی آدرس‌های دامنه در دیتابیس وردپرس

توی این مرحله باید لینک‌های سایت را تصحیح کنیم. چرا که کلیه لینک‌های وردپرس روی ساب دامنه قرار داره در صورتی که ما میخوایم همه چیز روی نام دامنه قرار بگیره.

نحوه انتقال سایت وردپرسی از ساب دامین به دامین اصلی

بنابراین وارد phpmyadmin هاست جدید شده و جدول wp-options برای دیتابیس مربوط به وردپرس را انتخاب کنید. البته این امکان وجود داره که به دلیل تغییر پیشوند جداول وردپرس که در حالت عادی روی _wp هستش این بخش با یک نام دیگه برای شما نشون داده بشه که در هر صورت بعد از پیشوند جدول عبارت options قرار خواهد داشت. بسته به نامی که انتخاب کردید به این تیبل مراجعه کرده و سپس در رکوردهای جدول که بهتون نمایش داده میشه رکوردهای siteurl و home را پیدا کنید و نام دامنه‌ی سایتتون رو داخلش جایگزین کنید.

نحوه انتقال سایت وردپرسی از ساب دامین به دامین اصلی

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

نحوه انتقال سایت وردپرسی از ساب دامین به دامین اصلی

بعد از اینکه نام دامنه رو برای سایتتون تنظیم کردین باید لینک‌های داخلی وردپرس رو هم بروزرسانی کنید تا کلیه لینک‌های موجود در سایت بر اساس نام دامنه تنظیم شوند. برای این کار روی نام پایگاه داده ی سایت داخل phpmyadmin کلیک کنید، سپس سربرگ sql رو باز کنین و کد زیر رو داخلش تایپ کنید.

UPDATE wp_posts SET post_content = REPLACE (post_content, 'subdomain.domain.com', 'domain.com/');

به جای subdomain.domain.com در کد بالا نام ساب دامنه و به جای domain.com نام دامنه را در فیلد Run SQL query/queries on database قرار داده و در نهایت روی دکمه Go کلیک کنید و منتظر بمونید تا عملیات به‌روزرسانی انجام بگیرد. بعد از این کار سایت شما با موفقیت در هاست و دامنه لود خواهد شد. حالا باید بررسی کنید و ببینید که آیا وردپرس روی دامنه اصلی به درستی بالا میاد یا خیر. اگر کلیه مراحل را به درستی طی کرده باشید وردپرس به درستی از ساب دامین به دامین اصلی منتقل شده است.

گام چهارم: ریدایرکت 301 وردپرس از ساب دامین به دامنه اصلی

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

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

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

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

نوشته آموزش انتقال سایت وردپرسی از ساب دامین به دامین اصلی اولین بار در پایگاه دانش میزبان‌فا پدیدار شد.

آموزش رفع خطای Enable gzip compression در GTmetrix

$
0
0

الان که در حال مطالعه این محتوا هستید قطعا در سیستم عامل‌های مختلف مثل ویندوز، لینوکس یا اندروید و IOS تجربه استفاده از فایل‌هایی با فرمت ZIP. رو داشتید. یا براتون اتفاق افتاده که موقع دانلود یک فیلم، برنامه، آلبوم موسیقی و هرچیزی از سایت‌های مختلف در بیشتر اوقات فایل‌ها با فرمت zip هستند. شده تا حالا براتون این سوال پیش بیاد که چرا استفاده از این فرمت در سایت‌های دانلودی خیلی مرسوم هست؟ دلیل انجام این کار به خاطر کاهش حجم فایل هست، چرا که وقتی فایلی رو zip میکنید فشرده شده و تا حد قابل توجهی حجم فایل کمتر میشه. این کار هم برای سایت مورد نظر دارای مزیت هست که حجم کمتری از سرور و هاست رو اشغال میکنه و هم برای کاربری که در حال دانلود فایل‌ها هست ترافیک کمتری خواهد برد. استفاده از Gzip در سایت هم درست به همین دلیل هست و باعث کاهش حجم فایل‌ها و افزایش سرعت سایت میشه که توی این اموزش میخوام نحوه رفع خطای Enable gzip compression در GTmetrix رو آموزش بدم.

توی این آموزش از پایگاه دانش میزبان‌فا اول به این موضوع که اصلا Gzip چی هست و آیا لازمه که ازش استفاده کنیم پرداخته و سپس به معرفی راهکارهای مختلف برای فعال سازی gzip در هاست و انواع سرور می‌پردازم.

Gzip چیست؟ و چه کاربردی داره؟

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

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

در فایل‌هایی که مربوط به برنامه نویسی هستند کدها به کاراکترهای خلاصه‌تر و کوتاه‌تر با استفاده از فناوری فشرده سازی حجم صفحات تبدیل خواهند شد. به عنوان نمونه اگر فایل شما حاوی متنی باشه که عبارت MM I ZZZZZ BB A nnn f AAA در اون درج شده باشه که شامل 25 کاراکتر هست، به صورت خلاصه شده تبدیل شده و به شکل 3M I 5Z 2B A 3n f 3A برای مرورگر ارسال خواهد شد که تا 5 کاراکتر(با احتساب فاصله) خلاصه شده است. سپس مرورگر که از قابلیت Gzip پشتیبانی میکنه این موضوع رو درک کرده و کدها را در حالت استاندارد پردازش و در نهایت ساختار یک سایت رو به درستی نمایش خواهد داد.

آنالیز و بررسی فعال بودن Gzip

قبل از اینکه به روش‌های استفاده از gzip بپردازم پیشنهاد می‌کنم برای اینکه واقعا ببینید gzip تا چه میزان در افزایش سرعت سایت وردپرس تاثیرگذار خواهد بود یک بار سایت خودتون را که از gzip استفاده نشده آنالیز و بررسی کنید. برای این منظور به وبسایت checkgzipcompression.com مراجعه کنید و سپس مشابه چیزی که در تصویر زیر مشاهده می‌کنید آدرس کامل سایت خودتون را در فیلد مربوطه وارد کرده و روی آیکون جستجو کلیک کرده و منتظر بمونید تا سایت آنالیز شده و بر اساس افزونه‌های وردپرس و قالبی که از اون استفاده می‌کنید به شما بگه که با استفاده از Gzip تا چه میزان قادر هستید تا حجم صفحات خود را کم کنید.

رفع خطای Enable gzip compression در GTmetrix و فعال سازی gzip

از اونجایی که Gzip بر روی سرورهای هاست میزبان‌فا فعال است در تستی که انجام دادم 28.1 درصد از حجم صفحات من در مجموع کم خواهد شد. اما بر روی هاستی که gzip فعال نباشه تا 70 درصد هم میشه حجم صفحات را کم کنید.

یکی دیگه از روش‌های بررسی هم با استفاده از خود مرورگر هست که میتونید با راست کلیک کردن در صفحه سایت و انتخاب گزینه Inspect Element سورس صفحات رو ببینید. سپس مشابه تصویر زیر روی سربرگ Network کلیک کرده و حالا یک بار سایت رو بدون بستن پنجره Inspect Element رفرش کنید. در صورتی که content-incoding: gzip رو مشاهده کردید نشون دهنده فعال بودن Gzip در سایت هست.

رفع خطای Enable gzip compression در GTmetrix و فعال سازی gzip

از این بخش میتونید میزان فشرده سازی فایل‌ها را به صورت قبل و بعد هم مشاهده کرده و مقایسه کنید. برای این کار هم کافیه روی نمایش به صورت ردیفی کلیک کرده و از ستون Size میزان فشرده سازی برای هر فایل رو ببینید.

رفع خطای Enable gzip compression در GTmetrix و فعال سازی gzip

رفع خطای Enable gzip compression در GTmetrix

برای رفع خطای Enable gzip compression در جی تی متریکس کافیه قابلیت Gzip رو در سایت فعال کنید که در ادامه به معرفی روش‌های فعال سازی gzip در سایت‌ها و وب سرورهای مختلف می‌پردازم.

فعال سازی Gzip در وردپرس

برای این کار میتونید هم با استفاده از افزونه و هم با استفاده از کدنویسی اقدام به فعال کردن Gzip در سایت وردپرسی بکنید. روش‌های مختلفی برای فعال سازی در وردپرس وجود داره که در روش کدنویسی باید کدها رو داخل فایل htaccess. قرار بدین. برای این منظور میتونید از مقاله آموزش نحوه فعال سازی gzip در وردپرس استفاده کنید.

فعال سازی Gzip در سرور آپاچی

برای این منظور بسته به کنترل پنل هاست سی‌پنل و دایرکت ادمین که استفاده می‌کنید ابتدا باید وارد File Manager هاست خود شوید.

رفع خطای Enable gzip compression در GTmetrix و فعال سازی gzip

مشابه تصویر بالا با کلیک روی گزینه File Manager در هاست سی پنل وارد محیط مدیریت فایل‌ها در هاست خواهید شد، حالا به مسیری که وردپرس را در سایت نصب کردید وارد شوید. اگر وردپرس روی دامنه شما نصب شده کافیه به مسیر /public_html/مراجعه کنید و به دنبال فایلی با نام htaccess. بگردید. اما اگر اقدام به نصب وردپرس در ساب دامنه و یا ساب فولدر کردید کافیه تا به مسیر مورد نظر که وردپرس در اون پوشه نصب شده مراجعه کنید و دنبال فایل htaccess. بگردید.

فایل htaccess. جزو فایل‌های مخفی در هاست است که ممکنه در اولین ورودتون به هاست قادر به مشاهده اون نباشید. بنابراین در همین مسیری که قرار دارید روی دکمه Settings که در بالای صفحه در سمت راست قرار داره کلیک کنید تا پنجره زیر برای شما باز شود. سپس تیک گزینه Show Hidden Files را انتخاب کرده و در نهایت روی دکمه Save کلیک کنید تا تنظیمات ذخیره شود.

رفع خطای Enable gzip compression در GTmetrix و فعال سازی gzip

حالا قادر به مشاهده فایل htaccess. هستید و می‌تونید تا با راست کلیک کردن و انتخاب گزینه Edit این فایل را ویرایش کنید و کدهای زیر را در مکان مناسبی از فایل اضافه کنید. پیشنهاد می‌کنم تا کدهای زیر را در انتهای این فایل قرار بدین تا تداخلی با سایر کدها ایجاد نشود.

<IfModule mod_deflate.c>
# Compress HTML, CSS, JavaScript, Text, XML and fonts
AddOutputFilterByType DEFLATE application/javascript
AddOutputFilterByType DEFLATE application/rss+xml
AddOutputFilterByType DEFLATE application/vnd.ms-fontobject
AddOutputFilterByType DEFLATE application/x-font
AddOutputFilterByType DEFLATE application/x-font-opentype
AddOutputFilterByType DEFLATE application/x-font-otf
AddOutputFilterByType DEFLATE application/x-font-truetype
AddOutputFilterByType DEFLATE application/x-font-ttf
AddOutputFilterByType DEFLATE application/x-javascript
AddOutputFilterByType DEFLATE application/xhtml+xml
AddOutputFilterByType DEFLATE application/xml
AddOutputFilterByType DEFLATE font/opentype
AddOutputFilterByType DEFLATE font/otf
AddOutputFilterByType DEFLATE font/ttf
AddOutputFilterByType DEFLATE image/svg+xml
AddOutputFilterByType DEFLATE image/x-icon
AddOutputFilterByType DEFLATE text/css
AddOutputFilterByType DEFLATE text/html
AddOutputFilterByType DEFLATE text/javascript
AddOutputFilterByType DEFLATE text/plain
AddOutputFilterByType DEFLATE text/xml

# Removing browser bugs for older browsers
BrowserMatch ^Mozilla/4 gzip-only-text/html
BrowserMatch ^Mozilla/4\.0[678] no-gzip
BrowserMatch \bMSIE !no-gzip !gzip-only-text/html
Header append Vary User-Agent
</IfModule>

فعال سازی Gzip در جوملا

برای فعال کردن gzip در جوملا بعد از اینکه وارد بخش مدیریت جوملا شدید به مسیر تنظیمات کلی مراجعه کرده و در تب سرور گزینه فشرده سازی Gzip را فعال کرده و تنظیمات را ذخیره کنید.

امیدوارم که این آموزش هم مورد توجه و پسند شما قرار گرفته باشه و با استفاده از اون تونسته باشید تا نسبت به فعال سازی gzip و رفع خطای Enable gzip compression در GTmetrix اقدام کنید. اگر در رابطه با این آموزش سوالی داشتید و یا مشکلی برای شما پیش اومده در بخش دیدگاه‌ها اعلام کنید تا در کوتاه‌ترین زمان ممکن پاسخگوی شما باشم.

نوشته آموزش رفع خطای Enable gzip compression در GTmetrix اولین بار در پایگاه دانش میزبان‌فا پدیدار شد.

آموزش تست سرعت افزونه های وردپرس

$
0
0

یک سایت وردپرسی در حالت عادی امکاناتی رو که یک سایت در موضوع مرتبط با خودش نیاز داره و حتما لازمه که این امکانات رو در سایت فراهم کنیم نداره و برای همین باید با استفاده از کدنویسی و نصب افزونه‌های گوناگون این امکانات رو به سایت اضافه کنیم. همین موضوع باعث میشه که با گذشت زمان نیازهای ما برای داشتن یک سایت حرفه‌ای بیشتر و بیشتر بشه که در نهایت با نصب افزونه‌های مختلف این نیازها رو برطرف می‌کنیم. خب در ظاهر این مسئله خیلی خوبه، چون به راحتی و با کمترین هزینه میتونید امکانات دلخواه رو به سایتتون اضافه کنید. اما درست مثل ماشینی که با گذشت زمان خرج کرد اون بالا میره و قطعات به دنبال هم معیوب میشن، نصب افزونه‌های زیاد در وردپرس هم باعث این میشه که مصرف منابع هاست در وردپرس هم بیشتر و بیشتر بشه. برای همین به این احتیاج پیدا می‌کنید که با تست سرعت افزونه های وردپرس اقدام به تشخیص هر افزونه‌ای که باعث بالا رفتن مصرف رم و cpu وردپرس میشه بکنید.

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

آموزش تست سرعت افزونه های وردپرس

افزونه‌ای که برای بررسی و تشخیص میزان مصرف رم و سی پی یو توسط هر افزونه قصد دارم به شما معرفی کنم با عنوان P3 (Plugin Performance Profiler) در مخزن وردپرس به ثبت رسیده و تاکنون موفق شده بیش از 100.000 نصب فعال و کسب امتیاز 3.7 را ازآن خودش بکنه که با استفاده از این افزونه میتونید به راحتی میزان مصرف منابع رم و cpu رو در هاست مشاهده کرده و اگه از طرف شرکت هاست خودتون با اخطار مصرف بیش از حد منابع مواجه شدید به راحتی مشکلتون رو برطرف کنید. برای استفاده از این افزونه ابتدا روی دکمه زیر کلیک کنید تا به صفحه افزونه در مخزن وردپرس هدایت شده و سپس با استفاده از راهنمای نصب افزونه در وردپرس اقدام به نصب و فعال سازی افزونه در سایت خودتون بکنید.

دانلود افزونه p3 profiler

بعد از نصب و فعال سازی این افزونه مشابه تصویر زیر منویی با نام P3 Plugin Profiler در بخش ابزارها پیشخوان سایت وردپرسی شما اضافه میشه که با رفتن به این منو میتونید میزان مصرف افزونه ها از منابع هاست را آنالیز و بررسی کنید. همونطور که در تصویر میبینید برای بررسی و شروع اسکن وردپرس روی دکمه Start Scan کلیک کنید.

تست سرعت افزونه های وردپرس و تشخیص مصرف رم و cpu وردپرس

بعد از کلیک روی دکمه شروع اسکن پنجره‌ای باز میشه که در اون میتونید مشخص کنید اسکن به صورت خودکار انجام بگیره یا اینکه به صورت دستی انجامش بدین. برای اسکن خودکار روی Auto Scan و برای اسکن دستی روی Manual Scan کلیک کنید.

تست سرعت افزونه های وردپرس و تشخیص مصرف رم و cpu وردپرس

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

تست سرعت افزونه های وردپرس و تشخیص مصرف رم و cpu وردپرس

بعد از اینکه اسکن کامل شد تصویری مشابه بالا نشون داده میشه که با کلیک روی دکمه View Results میتونید به صفحه مشاهده نتایج مراجعه کنید.

تست سرعت افزونه های وردپرس و تشخیص مصرف رم و cpu وردپرس

همونطور که در تصویر میبینید داده‌ها به صورت جدا جدا نمایش داده میشند که شامل موارد زیر هستند.

  • MySQL Queries: نمایش تعداد کوئری‌هایی که در هر بازدید از سایت توسط یک بازدیدکننده اجرا خواهد شد
  • Plugin Impact: نمایش درصد تاثیر افزونه‌ها در سرعت لود سایت و سهمی که افزونه‌ها برای بارگزاری سایت به خود اختصاص داده‌اند
  • Plugin Load Time: نمایش مدت زمانی که تمامی افزونه‌های سایت روی آن تاثیر دارند(بر حسب ثانیه)
  • Total Plugins: تعداد افزونه‌های فعال روی سایت که در لود سایت موثر هستند
  • امکان مشاهده آمار و ارقام بر اساس:
    • تاثیر افزونه‌ها در سرعت و میزان مصرف سایت
    • نمایش خرابی کامل افزونه خاص
    • نمایش نمودار به صورت زمان بندی شده برای افزونه، قالب و هسته وردپرس
    • نمایش نمودار بر اساس کوئری به صورت زمانی
    • نمایش متوسط هر یک از آمار

بعد از اینکه هر یک از این امار را با استفاده از نمودار، متوسط لود و سایر موارد بررسی کردید میتونید بفهمید که کدوم افزونه باعث شده منابع هاست شما بیشتر درگیر بشن. استفاده از تب Detailed Breakdown به شما هر کدوم از افزونه‌هایی که درصد بالایی از مصرف رو به خودشون اختصاص دارند رو نمایش خواهند داد که بعد از شناسایی کردن اونها میتونید به بررسی مشکلات بپردازید و ببینید علت اینکه افزونه مورد نظر باعث شده مصرف cpu در هاست وردپرس بالا بره رو پیدا کرده و رفع کنید.

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

نوشته آموزش تست سرعت افزونه های وردپرس اولین بار در پایگاه دانش میزبان‌فا پدیدار شد.

آموزش رفع خطای Avoid a character set in the meta tag در GTmetrix

$
0
0

یکی دیگه از خطاهایی که ممکنه موقع تست سرعت سایت با GTmetrix باهاش مواجه بشید و البته خیلی کم به چشم میخوره خطای Avoid a character set in the meta tag هست. این خطا همونطور که از اول عبارت با کلمه Avoid نمایش داده میشه به این معنی هست که شما با یک خط قرمز رو به‌رو نیستید و اجباری به این نیست که حتما باید اونو برطرف کنید. اما ترجیح داده میشه که اونو برطرف کنید. پیش از اینکه character set utf8 به وجود بیاد بیشتر سیستم‌عامل‌ها و کامپایلرهای برنامه‌نویسی با سیستم قدیمی ASCII کار می‌کردند. توی این سیستم(سیستم اسکی) هر Character یک بایت یا هشت بیت فضا اشغال می‌کرد. در نتیجه کل کاراکترهای قابل پوشش در این سیستم 256 حرف بود. پس این مقدار برای نگهداری زبان‌های مختلف کافی نبود. این شد که character set به وجود اومد.

در این آموزش از پایگاه دانش میزبان‌فا قصد دارم به معرفی روش‌هایی که با استفاده از اون میتونید نوع character set در سایت رو مشخص کنید بهتون نشون بدم. امروزه بیشتر مرورگرها از این قابلیت به خوبی استفاده می‌کنند. گذشته از این هم در زبان HTML5 حالت پیشفرض روی این مقدار قرار داره که نمیشه گفت خطای Avoid a character set in the meta tag در GTmetrix چیز مرسومی باشه و حتما برای شما در حالت سبز رنگ خواهد بود.

آموزش رفع خطای Avoid a character set in the meta tag

کاری که character set در سایت انجام میده اینه که به عنوان یک استاندارد بین المللی شناخته شده میاد و مواردی که مربوط به تبادل اطلاعات چندزبانه بودن یک سایت هست و از قبل تعریف شده‌اند رو برطرف میکنه. به عبارت دیگه، این استاندارد بین المللی مشخص میکنه که بسته به زبان محتویات سایت چطور باید به کاربران نشون داده بشه که این کار توسط مرورگر شناسایی خواهد شد. این استاندارد بین المللی چند نوع مختلف داره که پر استفاده‌ترین حالت برای UTF-8 هست که حتما در یادگیری زبان HTML با این موضوع آشنا شدید.

<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>

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

رفع خطای Avoid a character set in the meta tag در GTmetrix

وقتی سایتتون رو با جی تی متریکس تست می‌کنید در بیشتر موارد این مورد سبز رنگ هست و مشکلی در اون وجود نخواهد داشت. اما اگر با این گزینه به مشکل برخوردید، برای حل مشکل کاری که باید انجام بدین اینه که متاتگ character set را به شکل درخواست HTTP برای کاربر ارسال کنید. یعنی باید بیایم و با استفاده از زبان سرور و نوع سرور این درخواست رو به صورت header HTTP مشخص کنیم. در این حالت بسته به زبان مورد استفاده و سروری که ازش استفاده می‌کنید میتونید از راهکارهای زیر استفاده کنید.

آموزش رفع خطای Avoid a character set in the meta tag

در زبان php

در صورتی که از زبان php در سایت خودتون استفاده می‌کنید و با خطای Avoid a character set in the meta tag مواجه شدید، میتونید با استفاده از دستور زیر این درخواست رو در header ایجاد بکنید.

header("Content-Type: text/html; charset=utf-8");

سرور Nginx

اگر زبان مورد استفاده در سایت شما چیزی غیر از php هست، مثل asp یا پایتون و… باید قبل از هر کاری ببینید که نوع وب سرور استفاده شده چی هست. اگر وب سرور از نوع Nginx استفاده می‌کنید، با استفاده از کد زیر در بخش config سرور میتونید این درخواست رو ایجاد کنید.

more_set_headers -t 'text/html' 'Content-Type: text/html; charset=utf-8';

سرور آپاچی

اما اگه از وب سرور Apache استفاده می‌کنید باید کد زیر رو در فایل htaccess. وارد کنید.

AddType 'text/html; charset=UTF-8' html

بعد از اینکه بسته به زبان برنامه نویسی و نوع سرور درخواست رو در هدر به صورت http ایجاد کردید، مجددا که سایت رو بررسی کنید خواهید دید که خطا برطرف شده و گزینه Avoid a character set in the meta tag در جی تی متریکس با رنگ سبز نمایش داده خواهد شد.

امیدوارم این آموزش هم مورد توجه و پسند شما قرار گرفته باشه و با استفاده ازش تونسته باشید که خطای Avoid a character set in the meta tag رو در gtmetrix برطرف کنید. در صورتی که سوال یا مشکلی در این رابطه داشتید در بخش دیدگاه‌ها اعلام کنید.

نوشته آموزش رفع خطای Avoid a character set in the meta tag در GTmetrix اولین بار در پایگاه دانش میزبان‌فا پدیدار شد.


آموزش جلوگیری از حملات DDOS در وردپرس

$
0
0

متاسفانه یکی از کثیف‌ترین کارهایی که در اینترنت انجام میگیره و تقریبا میشه گفت راه علاج کاملی براش وجود نداره حملات DDOS در سایت‌ها هست. در این نوع حملات شخص حمله کننده سعی می‌کنه با ارسال درخواست‌های بسیار زیاد و خارج از حد عادی مدام cpu و منابع یک سایت رو درگیر بکنه که در این صورت در لحظات اولیه سایت به کندی کار خواهد کرد. بعد از این هم بخاطر حملات گسترده که روی یک سایت انجام میگیره اگه هاست شما اشتراکی باشه میزبانی هاست شما مجبور میشه موقتا هاست رو ساسپند بکنه. جلوگیری از حملات DDOS در وردپرس مسئله‌ای هست که در وب پارسی کمتر به این موضوع پرداخته شده و توی این مقاله قصد دارم به معرفی کلیه راه‌هایی که میتونید از این حملات جلوگیری کنید بپردازم.

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

DDOS چیست؟ و چگونه کار می‌کند؟

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

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

آموزش جلوگیری از حملات DDOS در وردپرس

 

حالا ماجراهایی که از این به بعد رخ میده رو به صورت عملی که اتفاق افتاده و مرحله به مرحله به این موارد برخورد کردم در ادامه توضیح میدم.

آموزش جلوگیری از حملات DDOS در وردپرس

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

آموزش جلوگیری از حملات DDOS در وردپرس

گام اول: آگاهی از موضوع

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

جلوگیری از حملات ddos در وردپرس و تامین امنیت سایت های وردپرس

همونطور که میبینید شخصی در تلاش برای ورود در سایت بود. چند ماهی به این منوال گذشت و گاها حملات به صورت DDOS ارسال میشد. چون سایت رو به وبسایت uptimerobot متصل کرده بودم در هفته حداقل چند باری با ایمیل گزارش‌ها برام ارسال میشد که نهایتا یک ساعتی در هر بار سایت از دسترس خارج میشد. در تصویر زیر نمونه‌ای از این حالت رو مشاهده می‌کنید. گزینه‌های قرمز رنگ نشون از دسترس خارج شدن دارند.

جلوگیری از حملات ddos در وردپرس و تامین امنیت سایت های وردپرس

گام دوم: به کار بردن روش‌های جلوگیری

تا اینجا از این موضوع مطمئن شده بودم که حملات مربوط به دیداس هستند و حالا باید کارهایی که برای جلوگیری هست رو استفاده می‌کردم. اما برای اینکه برخی کارها از قبل وجود داشتند در اینجا صرفا لیستی از اونها رو براتون ذکر می‌کنم.

  • استفاده از هاست مناسب اولین راهکاری هست که میتونه از حملات جلوگیری بکنه. اگر هاستی داشته باشید که مجهز به سخت افزار برای جلوگیری از حملات DDOS باشه میتونه خیلی تو این راه بهتون کمک بکنه.
  • در برخی موارد حملات مربوط به تلاش برای ورود در سایت هست که میتونید طبق توضیحات که دادم از افزونه برای این کار استفاده کنید.
  • گاهی اوقات هم پیش میاد که فرم‌هایی مثل نظرات سایت رو مورد حمله قرار میدن. تو این حالت عملا فرمی دریافت نمی‌کنید، اما فقط داده‌ها رو درگیر می‌کنند که در این حالت میتونید با استفاده از کپچا وردپرس از این کار جلوگیری کنید. خوبی این کار اینه که امکان استفاده در فرم ورود رو هم دارید.
  • یکی دیگه از روش‌ها استفاده از XML-rpc هست که در تصویر بالا هم دیدید که یکی از تلاش‌ها برای ورود از این طریق بوده که میتونید با استفاده از نحوه غیرفعال کردن xml-rpc وردپرس از این کار جلوگیری کنید.
  • آپدیت هسته وردپرس، افزونه‌های وردپرس و قالب وردپرس
  • استفاده از افزونه‌های امنیتی که در مقاله معرفی بهترین افزونه های امنیتی وردپرس برخی از بهترین‌ها رو معرفی کردم.
  • و…

1. استفاده از کلودفلر

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

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

جلوگیری از حملات ddos در وردپرس و تامین امنیت سایت های وردپرس

با رفتن به بخش Firewall کلودفلر میتونید از 4 سطح امنیتی زیر استفاده کنید.

  • Low: در این حالت سطح امنیتی در پایین‌ترین حد ممکن قرار داره که اگه حمله‌ای با شدت تقریبا پایین ارسال بشه میتونه روی سایت تاثیر بزاره.
  • Medium: در این حالت سطح امنیتی در حالت متوسط هست که از حالت قبلی یکم بیشتر و اگه حملات هم بیشتر بشن میتونه روی سایت تاثیر بزاره.
  • High: در این حالت سطح امنیتی در حالت بالا قرار داره که اگر حملاتی در سطح گسترده ارسال بشه ازشون جلوگیری خواهد کرد.
  • I’m Under ttack: در این حالت سایت شما تحت حمله شدید هست و حملات هم به شکلی هست که در طول روز با فاصله زمانی خیلی کوتاه مدام تکرار خواهد شد. در این حالت کاری که باید انجام بدین اینه که این گزینه رو فعال کنید. توی این حالت وقتی کسی به سایت شما مراجعه بکنه در اولین بازدید با تصویر زیر رو به رو میشه که بعد از 5 ثانیه ریدایرکت شده و میتونه محتوای سایت رو ببینه.

جلوگیری از حملات ddos در وردپرس و تامین امنیت سایت های وردپرس

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

مشکلی که استفاده از حالت Under Attack کلودفلر داره اینه که چون در صفحه‌ای که کاربر ریدایرکت میشه محتوا انگلیسی هست و بیشتر بازدیدکننده‌ها آشنایی با این چیزها رو ندارند، اشتباها فکر می‌کنند که سایت شما خطا میده. برای همین حتی متن رو نخونده صفحه مرورگر رو میبندند. این موضوع میتونه روی نرخ پرش سایت شما تاثیر بدی بزاره. برای همین هر زمان که احساس کردید سایت زیر حملات شدید نیست به حالت High برگردونید تا زیاد بابت این موضوع لطمه به سایتتون وارد نشه.

برای این کار تو همین صفحه Firewall به بخش Access Rules مراجعه کنید و کشورهایی که مد نظرتون هست مثل نمونه زیر انتخاب کنید. بعد که گزینه Challenge رو انتخاب کنید کاربر رو به چالش پر کردن کپچا خواهید کشید. اگه موفق شد که این مرحله رو بگذرونه که گذشته، اما در غیر این صورت تا زمانی که در کلودفلر مشخص می‌کنید بلاک خواهد شد.

جلوگیری از حملات ddos در وردپرس و تامین امنیت سایت های وردپرس

همون طور که تو تصویر میبینید اول نام کشور رو در باکس وارد کنید، اینجا من iran رو وارد کردم که لیست کشورها بر اساس کلماتی که تایپ میکنید نشون داده میشه و در نهایت میتونید انتخابشون کنید. بعدش حالت Challenge رو انتخاب کنید و حالت This Website رو هم کاری نداشته باشید. چون اگه چند سایت تو اکانت کلودفلر داشته باشید این حالت برای اون سایت‌ها هم انتخاب میشه. تو قسمت Add a note هم میتونید یک یادداشت وارد کنید. مثلا مشخص کنید محدود کردن آی‌پی این کشور تو چه تاریخی شروع شده و در نهایت بعد از کلیک روی دکمه Add کشور مورد نظر در لیستی که پایین این بخش قرار داره اضافه خواهد شد. حالا هر کاربری که بخواد با آی‌پی این کشورها وارد سایت وردپرسی شما بشه صفحه زیر بهش نشون داده میشه.

جلوگیری از حملات ddos در وردپرس و تامین امنیت سایت های وردپرس

هر آی پی بلاک شده در وردپرس که توسط کلودفلر به لیست اضافه شده باشه هم در صفحه firewall و در انتهای صفحه مشابه تصویر زیر با نام Firewall Events قابل دسترسی هست که با کلیک روی گزینه Details مقابل هر آی‌پی میتونید اونها رو مدیریت کنید.

جلوگیری از حملات ddos در وردپرس و تامین امنیت سایت های وردپرس

2. محدود کردن آی‌پی کشورها

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

جلوگیری از حملات ddos در وردپرس و تامین امنیت سایت های وردپرس


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

جلوگیری از حملات ddos در وردپرس و تامین امنیت سایت های وردپرس

تعداد کلی که تو قسمت Total Threats درج شده روی 2878 قرار داره که همه اینها مربوط به دیداس نیست. برخی از این حملات برای چالش‌های مرورگر و برخی هم برای چالش‌های انسانی هستند. سایر کشورها هم در بخش Geo قابل مشاهده هستند که در اون میتونید تعداد رو بر اساس بیشترین کشورها و تعداد هر کدوم ببینید.

جلوگیری از حملات ddos در وردپرس و تامین امنیت سایت های وردپرس

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

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

نوشته آموزش جلوگیری از حملات DDOS در وردپرس اولین بار در پایگاه دانش میزبان‌فا پدیدار شد.

آموزش رفع خطای Enable Keep Alive در GTmetrix

$
0
0

یکی از خطاهایی که هنگام تست سرعت سایت با GTmetrix بیشتر به چشم میخوره با نام Enable Keep Alive هست. این قابلیت  مربوط به تعداد درخواست‌ها از سرور برای لود فایل‌ها و داده‌ها از سایت هست. این قابلیت با عنوان keep alive شناخته شده که در این بخش به توضیح اینکه keep alive چیست و چطور میتونیم keep alive را در سایت فعال کنیم خواهم پرداخت. این قابلیت به مرورگر اجازه میدهد تا به صورت همزمان بتواند بیش از یک فایل را از سمت سرور دریافت کند. به عبارت دیگه وقتی آدرس صفحه سایتی رو باز می‌کنید و فایل‌های CSS، جاوا اسکریپت، تصاویر و… شروع به لود شدن می‌کنند تا بعد از لود کامل ظاهر یک سایت و محتویاتش به شما نشون داده بشه، فعال بودن keep alive این امکان رو میده که همه این فایل‌ها به صورت همزمان شروع به لود بکنند. نه اینکه لازم باشه مثلا در یک مرحله فایل‌های css به نوبت لود بشن، در مرحله بعد تصاویر و به همین ترتیب پیش بره تا سایتی کامل بالا بیاد.

در این آموزش از پایگاه دانش میزبان‌فا قصد دارم به نحوه فعال کردن keep alive در سایت بپردازم که با فعال سازی این قابلیت اگر با مشکل Enable Keep Alive در GTmetrix مواجه شده باشید به راحتی و با اضافه کردن یک قطعه کد کوتاه میتونید مشکلتون رو برطرف کنید.

آموزش رفع خطای Enable Keep Alive

وقتی به تب waterfall مراجعه کنید مشابه تصویر زیر داده‌هایی رو میبینید که هر فایلی که در سایت لود میشه رو مشخص کرده که چه مقدار زمان برای لود هر کدوم مورد نیاز هست.

نحوه رفع خطای Enable Keep Alive و افزایش سرعت سایت

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

Keep-Alive چیست؟

در صورت فعال نبودن قابلیت Keep-Alive در سایت فایل‌های CSS، جاوا اسکریپت، html و… به صوت جدا از هم لود خواهند شد. یعنی وقتی شما سایتی رو وارد می‌کنید ابتدا اون صفحه در حالت HTML شروع به دریافت در پس زمینه مرورگر میکنه و بعد آدرس‌هایی که داخل این صفحه html وجود داره و شامل فایل‌های css و js میشه یک به یک بررسی شده و در هر بار که به آدرس یکی از این فایل‌ها برسه یک درخواست برای لود هر کدوم به سرور ارسال خواهد شد. در این صورت اگر چندین فایل وجود داشته باشه و از طرف دیگه به خاطر بازدید همزمان بالا این درخواست‌ها مدام از طرف کاربرها به سرور ارسال بشه، سایت با کندی مواجه میشه. چرا که باید همه این درخواست‌ها تک به تک بررسی شده و پاسخ مناسب بهشون داده بشه. تصویر زیر زمانی رخ میده که این قابلیت فعال نشده باشه.

نحوه رفع خطای Enable Keep Alive و افزایش سرعت سایت

اما وقتی قابلیت Keep-Alive فعال باشه همه فایل‌ها css و js در دو درخواست جدا از هم از سرور خواسته میشه و یکباره شروع به دریافت در یک خط زمانی خواهند کرد. پس در این صورت کاهش تعداد درخواست در سایت ایجاد شده و باعث افزایش سرعت سایت و رفع کندی در سایت خواهد شد. که در تصویر زیر نمونه‌ای از فعال بودن keep alive رو مشاهده می‌کنید.

نحوه رفع خطای Enable Keep Alive و افزایش سرعت سایت

فعال کردن Keep Alive از htaccess.

حالا برای اینکه این قابلیت رو در وردپرس فعال کنید کافیه کد زیر را در انتهای فایل htaccess. هاست خودتون قرار داده و ذخیره کنید تا قابلیت Keep Alive در سایت فعال بشه و همه فایل‌های css، js، تصاویر و… در یک بار درخواست از سرور شروع به دریافت شدن بکنند. برای این منظور وارد هاست خودتون شده و روی گزینه File Manager کلیک کنید.

نحوه رفع خطای Enable Keep Alive و افزایش سرعت سایت

سپس در مسیری که وردپرس نصب شده به دنبال فایل htaccess. بگردید و روی فایل راست کلیک کرده و گزینه Edit رو انتخاب کنید. در نهایت کدهای زیر رو کپی کرده و به انتهای فایل اضافه کنید.

<IfModule mod_headers.c>
Header set Connection keep-alive
</IfModule>

بعد از ذخیره کردن فایل قابلیت keep alive در سایت فعال میشه و باعث میشه که فایل‌های سایت شما به صورت همزمان شروع به دریافت از سمت سرور بکنند که این کار باعث لود سریعتر و افزایش سرعت سایت خواهد شد.

فعال کردن Keep Alive در سرور آپاچی

در صورتی که به سرور دسترسی دارید و از نوع آپاچی است می‌توانید از کد زیر استفاده کنید.

#
# KeepAlive: Whether or not to allow persistent connections (more than
# one request per connection). Set to "Off" to deactivate.
#
KeepAlive On

#
# MaxKeepAliveRequests: The maximum number of requests to allow
# during a persistent connection. Set to 0 to allow an unlimited amount.
# We recommend you leave this number high, for maximum performance.
#
MaxKeepAliveRequests 100

#
# KeepAliveTimeout: Number of seconds to wait for the next request from the
# same client on the same connection.
#
KeepAliveTimeout 100
امیدوارم که این آموزش هم مورد توجه و پسند شما قرار گرفته باشه و با استفاده از اون تونسته باشید اقدام به رفع خطای Enable Keep Alive در جی تی متریکس بکنید. در صورتی که در رابطه با این آموزش سوال یا مشکلی داشتید در بخش دیدگاه‌ها اعلام کنید.

نوشته آموزش رفع خطای Enable Keep Alive در GTmetrix اولین بار در پایگاه دانش میزبان‌فا پدیدار شد.

آموزش رفع خطای Combine images using CSS sprites در GTmetrix

$
0
0

در مقاله قبل از سری آموزش‌های GTmetrix با نحوه رفع خطای Enable Keep Alive آشنا شدیم که اگر دقت کرده باشید به این موضوع پرداخته شد که اگر کاری کنیم درخواست‌ها به صورت همزمان به سرور ارسال شود، سایت با سرعت بیشتری لود خواهد شد. اما صرفا این مسئله نیست و هرچه تعداد درخواست‌ها بیشتر باشد، نه تنها بهتر نخواهد شد، برعکس بدتر هم می‌شود. در این آموزش قصد دارم به نحوه برطرف کردن خطای Combine images using CSS sprites در جی تی متریکس بپردازم.

Combine images using CSS sprites راهکاری است که با استفاده از زبان CSS می توانید بخشی از تصاویر را نمایش داده و بخشی را مخفی کنید. یعنی می‌توان برای کاهش تعداد درخواست HTTP با قرار دادن چند تصویر که ثابت هستند، کاری کرد که فقط یک درخواست به سایت ارسال شود، اما در عین حال بتوانیم بخشی از تصویر را نمایش دهیم. پس اگر شما هم به دنبال برطرف کردن این خطا و افزایش سرعت سایت هستید تا انتها همراه باشید.

آموزش رفع خطای Combine images using CSS sprites

برای اینکه بهتر متوجه بشید Combine images using CSS sprites چیست با یک مثال شروع می‌کنم. یک سایت همچون دیجی کالا را در نظر بگیرید که روزانه چندین هزار بازدید کننده دارد، در فوتر و صفحات محصول این سایت یک سری تصاویر مربوط به شبکه‌های اجتماعی، وضعیت ارسال مرسوله و… وجود دارد که در تمامی صفحات ثابت هستند. هر کاربری که وارد این سایت می‌شود یک درخواست به سرور برای لود این تصاویر ارسال خواهد شد. هر درخواست هم مساوی است با درگیر کردن سرور که اگر در سطح بزرگ بازدید دیجی کالا و از طرفی دیگر تعداد تصاویر ثابتی که در هر بار لود می‌شود این موضوع را بررسی کنید، سرور مدام با درخواست درگیر خواهد بود. این درگیری می‌تواند فاجعه بار باشد و باعث افت شدید سرعت سایت شود.

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

رفع خطای Combine images using CSS sprites در جی تی متریکس

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

روش اول: استفاده از برنامه ویرایشگر

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

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

روش دوم: استفاده از ابزار آنلاین

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

website-performance

رفع خطای Combine images using CSS sprites در جی تی متریکس

همونطور که میبینید ابتدا باید روی دکمه Open کلیک کنید و تک تک تصاویری که میخواین رو در این سایت کنار هم به صورت افقی یا عمودی آپلود کنید. بعد با استفاده از دکمه Setting میتوتید تنظیمات دلخواه خودتون رو که شامل لایه بندی، انتخاب نام پیشوند برای کلاس css، فاصله هر تصویر از هم هست رو انتخاب و شخصی سازی کنید. بعد از اینکه تصاویر و چیدمان اونا نهایی شد روی دکمه Downloads که کلیک کنید پنجره‌ای به شکل زیر بهتون نمایش داده میشه.

رفع خطای Combine images using CSS sprites در جی تی متریکس

حالا همونطور که میبینید چند خروجی در قالب تصویر نهایی png، css، html و مشاهده دمو برای شما قرار داره. ابتدا باید تصویر نهایی رو از ستون png مشاهده و دانلود کنید. سپس اونو تو هاست خودتون آپلود کنید. بعدش با استفاده از ستون CSS کدهایی که ایجاد شده رو به فایل css سایت خودتون اضافه کنید. در نهایت میتونید از ستون HTML هم کدهایی رو که باید توسط اونها تصاویر رو نمایش بدین رو کپی کنید. حالا بعد از انجام این کار به جای اینکه چندین درخواست برای دانلود این چند تصویر کوچیک ارسال بشه و سرور درگیر این مسئله باشه فقط یک بار دانلود میشه و با استفاده از CSS میتونید هر بخش از تصویر رو که خواستید نمایش بدین.

امیدوارم که این آموزش هم مورد توجه و پسند شما قرار گرفته باشه و با استفاده ازش تونسته باشید با نحوه رفع خطای Combine images using CSS sprites در جی تی متریکس آشنا بشید. در صورتی که در رابطه با این مقاله سوال یا مشکلی داشتید در بخش دیدگاه‌ها اعلام کنید.

نوشته آموزش رفع خطای Combine images using CSS sprites در GTmetrix اولین بار در پایگاه دانش میزبان‌فا پدیدار شد.

آموزش رفع خطای Avoid CSS @import در GTmetrix

$
0
0

یکی دیگه از خطاهایی که معمولا ممکنه در هنگام تست سرعت سایت با GTmetrix باهاش مواجه بشید Avoid CSS @import هست. درواقع نمیشه گفت که این پیغام نشانی از خطا داره، بلکه به شما گفته میشه که سعی کنید از ایمپورت کردن یک فایل در فایل‌های دیگه به این شیوه دوری کنید و از روش استاندارد استفاده کنید. در سایت‌های فارسی زبان مجبور هستیم تا از فونت‌های فارسی استفاده کنیم که سایتمون حسابی با تغییر فونت دگرگون بشه. برخی افراد میان و اشتباها داخل همون صفحه HTML فونتی که مد نظرشون هست رو با استفاده از import@ فراخوانی می‌کنند که این کار اشتباه هست.

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

آموزش رفع خطای Avoid CSS @import در GTmetrix

اگر مجموعه‌های آموزش GTmetrix رو در میزبان‌فا دنبال کرده باشید، در آموزش رفع خطای Enable Keep Alive دیدیم که برای اینکه سایت با سرعت بیشتری لود بشه، بهتره کاری کنیم که فایل‌هایی با فرمت یکسان مثل css.، js.، تصاویر و… به صورت همزمان شروع به لود کنند و اینطور نباشه که یکی یکی این فایل‌ها از سرور برای مرورگر ارسال بشن.

آموزش رفع خطای Avoid CSS @import در GTmetrix

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

@import url("site.com/css/style.css")

بنابراین بهتره از این روش دوری کنیم و مستقیما کاری کنیم که فایل‌ها به صورت همزمان و در یک خط شروع به دانلود کردن بکنند. نه اینکه یک فایلی وابسته به فایل‌های دیگه باشه که تا وقتی اون فایل لود نشده شروع به لود شدن نکنه. برای این کار میشه متاتگ‌ها استفاده کرد که برای نمونه مثال قبل میشه از کد زیر استفاده کرد.

<link rel="style.css" href="style.css" type="text/css">

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

امیدوارم که این آموزش هم مورد توجه و پسند شما قرار گرفته باشه و با استفاده ازش تونسته باشید خطای Avoid CSS @import در جی تی متریکس را برطرف کرده و سرعت لود سایت رو بهتر کنید. در صورتی که در رابطه با این آموزش سوال یا مشکلی داشتید در بخش دیدگاه‌ها اعلام کنید.

نوشته آموزش رفع خطای Avoid CSS @import در GTmetrix اولین بار در پایگاه دانش میزبان‌فا پدیدار شد.

آموزش رفع خطای Minimize request size در gtmetrix

$
0
0

در این سری از مجموعه آموزش‌های GTmetrix به نحوه رفع خطای Minimize request size در جی تی متریکس می‌پردازم که اگر با این خطا در هنگام تست سرعت سایت مواجه شدید بتوانید آن را برطرف کنید. همونطور که از نام این خطا مشخص هست نشون دهنده اینه که درخواست‌هایی که برای لود فایل‌های مورد نیاز در سایت ارسال میشه زیاد بوده و همین مسئله باعث درگیر شدن سرور خواهد شد. در یک صفحه وب شما از تصاویر، فایل‌های CSS و فایل‌های جاوا اسکریپت و حتی فونت‌های مختلفی برای زیباتر کردن ظاهر سایت استفاده می‌کنید. برای همین مجبور هستید از چندین فایل برای اینکه انتخاب‌های مختلفی داشته باشید و ظاهر سایت هم در یک حالت خشک نباشه استفاده کنید. پس در این حالت با بیشتر شدن این فایل‌ها مرورگر از سرور مدام درخواست این فایل‌ها رو میکنه که در نهایت باعث کندیسایت خواهد شد.

حالا اگر این حالت برای سایت شما پیش اومده و در GTmetrix با مشکل Minimize request size مواجه شدید، تا انتهای این آموزش از پایگاه دانش میزبان‌فا همراه باشید تا با استفاده از راهکارهای مختلف اقدام به رفع این مشکل بکنیم.

آموزش رفع خطای Minimize request size در جی تی متریکس

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

رفع مشکل Minimize request size با بهینه سازی تصاویر

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

یکی دیگه از کارها هم استفاده از css sprites هست که به کمک اون میتونید به جای استفاده از چند تصویر در صفحات، تصاویر رو با هم ترکیب کرده و سپس با استفاده از CSS هر بخش از این تصویر اصلی رو که نیاز داشتید رو نمایش بدین که در مقاله آموزش رفع خطای Combine images using CSS sprites در GTmetrix به معرفی این روش پرداختم.

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

رفع مشکل با فشرده سازی فایل‌های CSS و JS

بعد از تصاویر در یک سایت، استفاده از فایل‌های css و js سهم بیشتری رو به خودشون اختصاص میدن. برای این فایل‌ها هم میتونید با استفاده از روش‌هایی که برای فشرده سازی و ترکیب کردن این فایل‌ها وجود داره مشکل Minimize request size در حالتی که خطا مربوط به این نوع فایل‌ها بود برطرف کنید. اگر از وردپرس استفاده می‌کنید پیشنهاد می‌کنم با استفاده از آموزش فشرده سازی فایل‌ها در وردپرس این کار رو برای هر دو نوع فایل css و js انجام بدین. یا اینکه از افزونه wp rocket استفاده کنید.

اما اگر از وردپرس استفاده نمی‌کنید میتونید با استفاده از دو مقاله آموزش رفع خطای Minify JavaScript در GTmetrix و آموزش رفع خطای Minify CSS در GTmetrix که در اونها به معرفی ابزار آنلاین برای این کار پرداختم، خطای بالا بودن تعداد درخواست HTTP در سایت رو برطرف کنید.

رفع خطای Minimize request size در gtmetrix با فشرده سازی فایل‌ها

ادغام فایل‌ها برای رفع مشکل

در این روش هم میتونید با Inline کردن کدها تعداد درخواست رو کمتر کنید. این روش رو توی مقاله آموزش رفع خطای Inline small CSS and JavaScript با هم یاد گرفتیم. توی این حالت کاری که باید انجام بدین اینه که با بررسی کدها و صفحات سعی کنید برخی از موارد رو به جای اینکه از یک فایل جدا فراخوانی کنید، با استفاده از Inline کردن چند قطعه کد همین کار رو انجام بدین.

حذف فایل‌های اضافه برای رفع مشکل

این روش راحت‌ترین و بهترین راه برای هست. برای استفاده از این حالت شما باید کلیه فایل‌هایی که در سایت خودتون دارید رو بشناسید و بدونید که هر کدوم مربوط به چه بخشی از سایت هستند. بعد از این مرحله باید بشینید و با ویرایش این فایل‌ها و ترکیب کردنشون برخی از فایل‌ها رو حذف کرده و تعداد درخواست‌هایی که به سرور برای لود این فایل‌ها ارسال میشه رو تا جای ممکن کمتر کنید.

امیدوارم که این آموزش هم مورد توجه و پسند شما قرار گرفته باشه و با استفاده ازش تونسته باشید خطای Minimize request size در gtmetrix رو برطرف کنید. در صورتی که در رابطه با این آموزش سوال یا مشکلی داشتید در بخش دیدگاه‌ها اعلام کنید.

نوشته آموزش رفع خطای Minimize request size در gtmetrix اولین بار در پایگاه دانش میزبان‌فا پدیدار شد.

آموزش رفع خطاهای Minimize Redirects و Avoid URL redirects

$
0
0

در این مقاله از مجموعه آموزش جی تی متریکس قصد دارم به نحوه برطرف کردن خطاهای Avoid landing page redirects و Minimize Redirects و Avoid URL redirects در gtmetrix بپردازم. حتما برای شما هم این اتفاق افتاده که به هر دلیلی مجبور به تغییر آدرس یکی از صفحات سایت شدید و برای اینکه ارزشی که صفحه مورد نظر به دست آورده رو از دست ندین با استفاده از ریدایرکت کردن سعی کردید به گوگل اعلام کنید که اعتبار این صفحه به آدرس جدید منتقل بشه. اما وقتی که شروع به تست سرعت سایت کردید، میبینید که با یکی یا چندتا از این سه خطا در سایت خودتون مواجه شدید. همه این خطاها مربوط به ریدایرکت‌هایی است که در سایت صورت می‌گیرند و اگر به درستی از ریدایرکت استفاده نکنید، یا اینکه تعداد زیادی لینک ریدایرکت شده در سایت خود داشته باشید با مشکل کندی سرعت لود در سایت مواجه خواهید شد.

در این آموزش از پایگاه دانش میزبان‌فا قصد دارم به نحوه برطرف کردن خطاهای Avoid landing page redirects و Minimize Redirects و Avoid URL redirects بپردازم که هر سه این خطا برای رفع کردن یک راهکار رو دارند. پس اگر شما هم با هر کدوم یک از این سه خطا مواجه شدید تا انتهای این مقاله همراه باشید.

Redirect یا تغییر مسیر صفحات وب چیست؟

Redirect یا تغییر مسیر در صفحات وب روشی هست که با استفاده از اون میتونید بازدید کننده‌های یک سایت رو از یک آدرس به آدرس دیگه هدایت کنید. به عنوان نمونه شما صفحه‌ای با نام site.com/first-page دارید و حالا تصمیم گرفتید که کسانی که به این صفحه وارد میشن رو به صفحه site.com/second-page منتقل کنید. این انتقال دادن‌ها به صفحات مختلف در عین حال که از نظر بهینه کردن سایت مفید هستند، میتونن گاها باعث ایجاد مشکل شده و بخاطر زیاد بودن تعداد ریدایرکت‌ها سایت رو با مشکل کندی سرعت مواجه بکنند. که با بررسی سرعت سایت در جی تی متریکس به این مسئله برخورد خواهید کرد.

چرا ریدایرکت باعث ایجاد مشکل میشه؟

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

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

حالا اگر این مسئله رو در سطح کلان و بازدید بالا در نظر بگیریم که ورود موبایل‌های هوشمند باعث تشدیدتر شدن موضوع هم شده، با یک فاجعه در سایتمون دچار خواهیم شد. پس باید برای رفع خطای Avoid landing page redirects و Minimize Redirects و Avoid URL redirects در gtmetrix این تغییر مسیرها رو کنترل کنیم.

چگونه تغییر مسیرها را کنترل کنیم؟

این امکان به استفاده شما و دلیل شما برای ریدایرکت صفحات به یکدیگه بستگی داره. باید کلیه صفحاتی که ریدایرکت میشه رو در سایتتون پیدا کنید. سپس بررسی کنید و ببینید که دلیل این تغییر مسیر چی بوده؟ آیا راه بهتری هست که بدون تغییر مسیر کار خودمون رو انجام بدیم؟ و اینکه آیا تغییر مسیر انجام شده با یک دید درست انجام گرفته؟ یک اشتباه بسیار رایجی که رخ میده در همون حالت استفاده از SSL یا WWW در سایت‌ها است که در ادامه بررسیش می‌کنیم.

فرض کنید زمانی که سایت خودتون رو ساختید از SSL استفاده نکردید و تازه میخواین این کار رو انجام بدین. پس در این صورت دو انتخاب برای ورود به سایت شما به وجود میاد که میتونه به شکل mizbanfa.net یا www.mizbanfa.net باشه. اما حالا که تصمیم به استفاده از SSL گرفتید با در نظر گرفتن اینکه از WWW استفاده می‌کنید یا نه باید این وضعیت رو مشخص کنید که کاربر به HTTPS://WWW.mizbanfa.net منتقل بشه یا اینکه به آدرس HTTPS://mizbanfa.net منتقلش کنید.

اشتباه رایج تو این مسئله اینه که اول میان و کاربر رو به آدرس سایت با https هدایت می‌کنند و بعدش به آدرس سایت با www که همین مسئله باعث میشه چند بار یک کاربر رو ریدایرکت کنید. انتخاب درست اینه که برای یک بار بیاین و مستقیما کاربر رو به HTTPS://www یا همون HTTPS:// منتقل کنید. تنها هدف شما باید این باشه که این تغییر مسیرهای پی در پی رو فقط به یک بار محدود کنید، البته فقط برای زمانی که بهش واقعا نیاز دارید.

رفع خطاهای Minimize Redirects و Avoid URL redirects در Gtmetrix

  • Avoid landing page redirects: اگر با این خطا در جی تی متریکس مواجه شدید به این معنیه که باید از ریدایرکت کردن صفحات فرو دوری کنید.
  • Minimize Redirects: اگر با این خطا مواجه شدید به این معنیه که باید تعداد ریدایرکت هایی که در صفحات سایت دارید رو به حداقل برسونید.
  • Avoid URL redirects: اگر هم با این خطا مواجه شدید باید به صورت کلی از ریدایرکت کردن این آدرس صرف نظر کنید.

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

در این صورت هم ممکنه آدرس‌هایی ریدایرکت شده در GTmetrix به شما نمایش داده بشه که اصلا مربوط به سایت شما نیست و اگر با تعداد بالایی از این دست موارد مواجه شدید سعی کنید از سرویس جایگزین دیگه که این مشکلات رو براتون ایجاد نکنه استفاده کنید.

امیدوارم که این آموزش هم مورد توجه و پسند شما قرار گرفته باشه و با استفاده ازش تونسته باشید اقدام به رفع خطاهای Minimize Redirects و Avoid URL redirects در Gtmetrix بکنید. در صورتی که در رابطه با این آموزش و نحوه برطرف کردن مشکل redirect ها در سایت خودتون سوال یا مشکلی داشتید در بخش دیدگاه‌ها اعلام کنید.

نوشته آموزش رفع خطاهای Minimize Redirects و Avoid URL redirects اولین بار در پایگاه دانش میزبان‌فا پدیدار شد.

رفع خطای Remove query strings from static resources در GTmetrix

$
0
0

یکی دیگه از خطاهایی که زیاد در هنگام تست سرعت سایت باهاش مواجه خواهید شد خطای Remove query strings from static resources در جی تر متریکس هست. این پارامتر برای درخواست‌هایی هست که به صورت query strings ارسال میشه و شامل کاراکتر ? هستند که اگه بخوام به نمونه‌ای از این درخواست‌ها اشاره کنم میشه به آدرس آواتار اشاره کرد که در انتهاش عبارتی مثل ?s=70&d=mm&r=g قرار داره. یا تو انتهای فایل‌های JS و CSS که به صورت مقدار VER نمایش داده خواهد شد. وجود همین Query String ها باعث میشه که در سورس‌هایی که در انتهای آدرسشون علامت سوال قرار داره کش نشن و علاوه بر اون روی شبکه توزیع محتوا CDN و مرورگرهای دیگه هم کش نخواهند شد. پس همین موضوع باعث میشه که نه تنها حجم صفحاتتون بالا میره، بلکه با خطای دیگه Leave Browser Caching  هم مواجه بشید.

در این آموزش از پایگاه دانش میزبان‌فا قصد دارم به نحوه برطرف کردن خطای Remove query strings در جی تی متریکس بپردازم که با استفاده از این آموزش میتونید به سادگی و به روش‌های مختلف این خطا رو از سایت خودتون برطرف کنید.

رفع خطای Remove query strings from static resources

حتما این سوال در ذهنتون نقش بسته که اصلا query strings چیست و چرا باید ازش برای افزایش سرعت سایت استفاده کنیم. همونطور که در بالا اشاره کردم وجود query strings باعث میشه که فایل‌های مورد نظر کش نشده و در هر با بازدید کاربر از سایت از سمت سرور لود بشن. برای همین باعث بالا رفتن سرعت لود سایت و افزایش تعداد درخواست HTTP هم میشه. اما در مقابل وجود query strings هم باعث میشه تا توسعه دهنده‌ها بتونن تغییراتی رو که در فایل‌ها اعمال میکنند رو بدون کش شدن زودتر آپدیت کنند. یعنی وقتی شما قالب وردپرس خریداری میکنید و چند روز بعد آپدیتی براش منتشر میشه، تا زمانی که فایل‌ها به صورت کش شده ذخیره هستند کاربران قبلی که این فایل‌ها براشون کش شده همچنان با ظاهر قبلی سایت براشون بالا میاد.

رفع خطای Remove query strings from static resources در gtmetrix

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

رفع خطای Remove query strings وردپرس

برای رفع مشکل Remove query strings from static resources در وردپرس دو راهکار پیش روی شماست که شامل استفاده از افزونه و استفاده از کدنویسی است. در صورتی که تمایل به استفاده از افزونه دارید، کافیه روی دکمه زیر کلیک کرده و بعد از اینکه وارد صفحه افزونه شدید با استفاده از راهنمای نصب افزونه در وردپرس اقدام به نصب و فعال سازی افزونه در سایت خودتون بکنید. بعد از فعال کردن افزونه نیاز به انجام کار دیگه‌ای ندارید و منو و تنظیمات خاصی هم به سایت شما اضافه نخواهد شد. کافیه فقط افزونه را در حالت فعال شده باقی بگذارید.

دانلود افزونه Remove Query Strings

علاوه بر این اگر از افزونه wp rocket هم استفاده می‌کنید قادر هستید با استفاده از تنظیمات افزونه این قابلیت رو در وردپرس فعال کنید. برای این منظور کافیه از راهنمای آموزش افزونه Wp Rocket استفاده کنید.

اما اگه تمایل به استفاده از افزونه ندارید میتونید با اضافه کردن قطعه کد زیر در فایل فانکشن(functions.php) قالب وردپرس خودتون این قابلیت رو فعال کنید. برای این منظور بعد از اینکه وارد هاست خودتون شدید به منوی File Manager مراجعه کنید. سپس به مسیر public_html/wp-content/themes مراجعه کنید. حالا وارد پوشه قالبی که در سایت فعال هست شده و فایل functions.php را پیدا کنید. در نهایت روی فایل راست کلیک کرده و گزینه Edit رو برای اضافه کردن کدهای زیر در جای مناسبی انتخاب کنید.

function _remove_script_version( $src ){ 
$parts = explode( '?', $src ); 
return $parts[0]; 
} 
add_filter( 'script_loader_src', '_remove_script_version', 15, 1 ); 
add_filter( 'style_loader_src', '_remove_script_version', 15, 1 );

بعد از اینکه فایل رو ذخیره کردید، این قابلیت در وردپرس فعال شده و فایل‌های CSS و JS کش خواهند شد.

رفع خطای Remove query strings جوملا

در صورتی که از جوملا استفاده می‌کنید برای برطرف کردن خطای در جوملا هم میتونید روی دکمه زیر کلیک کرده و پلاگین Joomsef رو در سایت خودتون نصب کنید. بعد از نصب و فعال کردن این افزونه هم امکان حذف کوئری‌های string ار جوملا فراهم شده و فایل‌های JS و CSS کش خواهند شد.

دانلود پلاگین Joomsef

یه راهکار دیگه هم در جوملا وجود داره که با رفتن به تنظیمات کلی(Global Configuration) از قسمت SEO Settings گزینه‌ای وجود با عنوان search engine friendly (SEF) URLs وجود داره که با فعال کردن این گزینه میتونید آدرس‌های سایت رو برای کاربران و موتورهای جستجو بهینه کنید. مثلا آدرس http://example.com/index.php?page=name تبدیل به http://example.com/name می‌شه. اما مشکلی که در این شیوه وجود داره اینه که ممکنه با دوگانگی محتوا در گوگل مواجه بشید که برای برطرف کردن این مشکل کافیه کد زیر رو به فایل robots.txt سایتتون اضافه کنید.

User-agent: *
Disallow: /*?*

با اضافه کردن این کد از ایندکس شدن آدرس‌هایی که دارای کاراکتر علامت سوال هستند جلوگیری خواهد شد.

رفع خطای Remove query strings در php

اما در صورتی که از زبان php و سیستم سایت ساز اختصاصی که با php ساخته شده استفاده می‌کنید میتونید با استفاده از کدهای زیر در این زبان برنامه نویسی مشکل query strings را برطرف کنید.

function remove_querystring_var($url, $key) {
    $url = preg_replace('/(.*)(?|&)' . $key . '=[^&]+?(&)(.*)/i', '$1$2$4', $url . '&');
    $url = substr($url, 0, -1);
    return ($url);
}
امیدوارم که این آموزش هم مورد توجه و پسند شما قرار گرفته باشه و با استفاده از این مقاله تونسته باشید خطای Remove query strings from static resources در جی تی متریکس رو برطرف کنید. در صورتی که در رابطه با این آموزش سوال یا مشکلی داشتید در بخش دیدگاه‌ها اعلام کنید.

نوشته رفع خطای Remove query strings from static resources در GTmetrix اولین بار در پایگاه دانش میزبان‌فا پدیدار شد.


آموزش کار با افزونه امنیتی sucuri security

$
0
0

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

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

افزایش امنیت وردپرس با sucuri security

افزونه امنیتی وردپرس که قصد معرفی اونو دارم با عنوان sucuri security در مخزن وردپرس به ثبت رسیده و تاکنون موفق شده بیش از 400.000 نصب فعال و کسب امتیاز 4.5 را ازآن خودش بکنه که با استفاده از این افزونه میتونید امنیت وردپرس را افزایش داده و از هک شدن سایت جلوگیری کنید. برای استفاده از این افزونه کافیه روی دکمه زیر کلیک کرده و بعد از اینکه به صفحه افزونه sucuri security هدایت شدید افزونه را دانلود و با استفاده از راهنمای نصب افزونه در وردپرس نصب و فعال کنید.

دانلود افزونه sucuri security

بعد از نصب و فعال سازی افزونه مشابه تصویر زیر منویی با نام Sucuri Security در پیشخوان سایت وردپرسی شما اضافه میشه که با کلیک روی این منو به صفحه تنظیمات افزونه برای اسکن امنیتی وردپرس هدایت خواهید شد.

افزایش امنیت در وردپرس با افزونه امنیتی sucuri security

همونطور که در تصویر مشخص شده قبل از هر کاری ذوی دکمه مشکی رنگ Generate API Key که در بالای صفحه قرار داره کلیک کنید تا API مخصوص سایت شما ساخته بشه و با استفاده از اون بتونید سایتتون رو اسکن کنید. بعد از کلیک روی دکمه پنجره زیر نمایش داده میشه که باید در اون تیک گزینه‌های مشخص شده در تصویر رو فعال کرده و در انتها روی دکمه Submit کلیک کنید.

افزایش امنیت در وردپرس با افزونه امنیتی sucuri security

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

افزایش امنیت در وردپرس با افزونه امنیتی sucuri security

حذف فایل‌های مشکوک از وردپرس

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

افزایش امنیت در وردپرس با افزونه امنیتی sucuri security

کافیه با فعال کردن تیک گزینه هر کدوم از فایل(های) مورد نظر رو انتخاب کنید. سپس نیک گزینه I understand that this operation can not be reverted را برای اینکه کاری که در اینجا انجام میدید غیرقابل بازگشت هست فعال کنید و در نهایت از بخش ACTION عملیات مورد نظر را که در سه حالت رفع شده، حذف و ریستور کردن هست انتخاب کرده و روی دکمه Submit برای اجرا کلیک کنید.

یکی دیگه از چیزهایی که معمولا باعث هک وردپرس میشه اینه که کدهایی در هسته وردپرس تزریق میشه و با استفاده از اون هکر سایت رو زیر نظر میگیره. این افزونه قابلیتی برای شما فراهم میکنه که با استفاده ازش میتونید کاری کنید که در بازه‌های زمانی مختلف فایل‌های اصلی وردپرس با فایلی که در هاست شما قرار داره مقایسه شده و اگر کدی اضافه در اونها اضافه بشه بهتون اطلاع داده میشه. برای فعال کردن این قابلیت به منوی settings رفته و از تب scanner به بخش WordPress Integrity Diff Utility رفته و روی دکمه Enable کلیک کنید.

افزایش امنیت در وردپرس با افزونه امنیتی sucuri security

بررسی فعالیت کاربران در وردپرس

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

افزایش امنیت در وردپرس با افزونه امنیتی sucuri security

علاوه بر فعالیت کاربران میتونید آی‌فریم وردپرس، لینک‌ها و اسکریپت‌هایی که به صورت کدنویسی هستند و در سایت اضافه شده باشه رو هم مشاهده کنید.

افزایش امنیت در وردپرس با افزونه امنیتی sucuri security

با رفتن به منوی Last Logins هم میتونید جزییات ورود کاربران در وردپرس رو ببینید. این بخش شامل 4 ستون هست که به ترتیب به صورت زیر هستند.

  • All Users: با رفتن به روی این تب میتونید کلیه کاربران رو بر اساس نقش کاربری به همراه آی‌دی، نام کاربری، آخرین ورود، زمان عضویت و آدرس ip مشاهده کنید که در پیشخوان وردپرس فعالیت داشتند.
  • Admins: با رفتن به این تب میتونید جزییات کاربرانی که نقش کاربری مدیر کل در وردپرس دارند رو ببینید.
  • Logged-in Users: با رفتن به این تب هم میتونید جزییات کاربرانی که در سایت وارد شدن و در حالت لاگین هستند رو ببینید.
  • Failed Logins: از این بخش هم میتونید کاربرانی که قصد ورود به پیشخوان وردپرس داشتند، اما موفق به ورود نشدند رو ببینید.

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

Reverse Proxy وردپرس

قابلیت Reverse Proxy دقیقا برعکس Proxy Server عمل میکنه. یک Proxy Server درخواست‌ها را از شبکه داخلی از کلاینت‌ها دریافت کرده و به سرورهای موجود در اینترنت ارسال میکنه اما در یک Reverse Proxy درخواست‌های کلاینت‌ها از محیط اینترنت دریافت شده و به سرورهای مورد نظر در شبکه داخلی هدایت میشن. Reverse Proxy درخواست‌ها را از سمت بیرون شبکه داخلی دریافت می‌کنن اما Proxy درخواست‌ها رو از سمت داخل شبکه به بیرون شبکه یا اینترنت ارسال میکنه.

حالا این افزونه هم میتونه با استفاده از قابلیت Reverse Proxy Server که پشت شبکه فایروال قرار میگیره و درخواست‌ها را از شبکه اینترنت دریافت کرده و اونها رو به سرورهای موجود در شبکه داخلی ارسال میکنه باعث میشه که کاربران درخواست کننده سرویس از سمت اینترنت از طرف Reverse Proxy سرور احراز هویت بشن. در این صورت میشه از امنیت بهتری در سایت استفاده کرد.

افزایش امنیت در وردپرس با افزونه امنیتی sucuri security

برای فعال سازی این قابلیت در افزونه کافیه به منوی Settings مراجعه کنید و از تب General به قسمت Reverse Proxy وردپرس رفته و روی دکمه Enable کلیک کنید.

شناسایی آدرس IP وردپرس

یکی دیگه از راه‌هایی که میتونید با استفاده از اون گزارش فعالیت‌هایی که در وردپرس انجام میگیره رو پیگیری کنید اینه که بتونید آی‌پی آدرس کاربر رو تشخیص بدین. برای این کار کافیه به قسمت IP Address Discoverer مراجعه کرده و روی دکمه Enable کلیک کنید.

افزایش امنیت در وردپرس با افزونه امنیتی sucuri security

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

غیرفعال کردن ویرایش فایل‌ها در وردپرس

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

برای فعال سازی این قابلیت ها کافیه به منوی settings مراجعه کرده و از بخش Hardening هر کدوم از گزینه‌ها رو که میخواین فعال کنید. این قابلیت‌ها به ترتیب عبارتند از:

  • Website Firewall Protection: محافظت از سایت با استفاده از فایروال(فقط در نسخه پولی افزونه)
  • Verify WordPress Version: تایید کننده نسخه وردپرس
  • Verify PHP Version: تایید کننده نسخه php هاست
  • Remove WordPress Version: حذف نسخه‌ای از وردپرس که از ان استفاده می‌کنید
  • Block PHP Files in Uploads Directory: غیرفعال کردن اجرای فایل‌های php در دایرکتوری آپلود وردپرس
  • Block PHP Files in WP-CONTENT Directory: غیرفعال کردن آپلود فایل php در وردپرس
  • Block PHP Files in WP-INCLUDES Directory: غیرفعال کردن اجرای فایل‌های php در دایرکتوری wp-includes وردپرس
  • Information Leakage: جلوگیری از نشت اطلاعات
  • Default Admin Account: انتخاب اکانت پیش فرض مدیر سایت
  • Plugin and Theme Editor: غیرفعال کردن ویرایشگر قالب و افزونه در پیشخوان وردپرس

افزایش امنیت در وردپرس با افزونه امنیتی sucuri security

تغییر رمز کلیه کاربران در وردپرس

این قابلیت به شما این امکان رو میده که کاری کنید کلیه کاربران در وردپرس رمز خودشون رو تغییر بدن. در صورتی که از این گزینه استفاده کنید، تا زمانی که کاربران رمز خودشون رو عوض نکرده باشند قادر به ورود در سایت نخواهند بود. برای این کار از تب Post-Hack به بخش Reset User Password رفته و بعد از اینکه کاربران مورد نظر رو انتخاب کردید روی دکمه Submit کلیک کنید.

افزایش امنیت در وردپرس با افزونه امنیتی sucuri security

ریست کردن افزونه‌ها در وردپرس

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

افزایش امنیت در وردپرس با افزونه امنیتی sucuri security

برای فعال کردن این قابلیت کافیه به بخش Reset Installed Plugins مراجعه کرده و بعد از انتخاب افزونه‌های مورد نظر روی دکمه Submit کلیک کنید.

اطلاع از تغییرات در وردپرس با ایمیل

اطلاع رسانی از تغییراتی که روی سایت انجام میگیره در این افزونه از بهترین قابلیت‌های اون هست. با استفاده از این قابلیت میتونید مشخص کنید هر کاری که در وردپرس اعم از تغییر تنظیمات، نصب افزونه، تغییرات روی افزونه‌ها و تنظیمات کلی وردپرس، تغییرات در محتوا و… صورت میگیره از طریق ایمیل براتون ارسال بشه. برای این کار به تب Alerts مراجعه کنید و سپس مشابه تصویر زیر و بر اساس توضیحاتی که در ادامه داده میشه اطلاع رسانی رو برای خودتون شخصی سازی کنید.

افزایش امنیت در وردپرس با افزونه امنیتی sucuri security

Alerts Recipient: ابتدا از این بخش آدرس ایمیل‌هایی که مایل هستید گزارش‌ها بهش اضافه بشه رو در فیلد E-MAIL وارد کرده و روی دکمه Submit کلیک کنید.

Alert Subject: از این بخش عنوان ایمیل رو بر اساس فرمت‌هایی که در اختیارتون قرار میده رو انتخاب کنید. این گزینه فقط برای عنوان ایمیلی هست که براتون ارسال خواهد شد.

Alerts Per Hour: چون تغییراتی که روی یک سایت انجام میگیره زیاد هست و روزانه ایمیل‌های زیادی از این طریق دریافت خواهید کرد، از این بخش میتونید مشخص کنید که حداکثر ایمیلی که در هر ساعت ارسال بشه چقدر میتونه باشه. کافیه از قسمت MAXIMUM ALERTS PER HOUR تعداد رو مشخص کنید. این امکان که این گزینه رو روی نامحدود هم قرار بدین وجود داره.

Password Guessing Brute Force Attacks: با استفاده از این بخش میتونید اقدام به آموزش جلوگیری از حملات بروت فورس وردپرس بکنید. اگر حمله بروت فورس به وردپرس انجام بگیره میتونید با تنظیماتی که از بخش CONSIDER BRUTE-FORCE ATTACK AFTER مشخص کردید امکان تلاش برای ورود در وردپرس رو برای مدت زمان دلخواه مسدود کنید.

Security Alerts: این گزینه بخش اصلی اطلاع رسانی رو تشکل میده که میتونید مشخص کنید چه گزارش‌ها و تغییراتی که در سایت انجام میگیره براتون ارسال بشه. این تغییرات شامل موارد زیر هستند.

  • تغییر تنظیمات افزونه‌ها
  • دریافت تنظیمات در قالب HTML
  • ارسال ایمیل با استفاده از فانکشن ایمیل وردپرس
  • جزییات ورود به وردپرس
  • آپدیت وردپرس
  • آپدیت افزونه و قالب وردپرس
  • ثبت نام، ورود، فراموشی رمز و ورود ناموفق کاربران در وردپرس
  • ویرایش نوشته و برگه
  • تغییر تنظیمات وردپرس
  • ویرایش قالب و افزونه
  • تغییر در منو و ابزارک وردپرس
  • و…

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

Post-Type Alerts: با استفاده از این بخش هم میتونید مشخص کنید تغییرات برای چه نوع پست تایپ‌هایی در وردپرس براتون ایمیل بشن. برای انتخاب این گزینه‌ها کافیه روی دکمه Show Post-Type Tables کلیک کنید تا همه انواع پست تایپ وردپرس که شامل نوشته، برگه، محصول، منو، آپلود فایل و… هست رو ببینید. سایر بخش‌های این افزونه هم پولی هستند و یا اینکه مربوط به نمایش اطلاعات سایت هستند که از توضیح این موارد می‌گذریم.

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

نوشته آموزش کار با افزونه امنیتی sucuri security اولین بار در پایگاه دانش میزبان‌فا پدیدار شد.

آیا معیار سنجش سرعت سایت با GTmetrix در هاست ایران درست است؟

$
0
0

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

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

معیار سنجش سرعت سایت با GTmetrix چگونه است؟

این موضوع رو ابتدا با استفاده از امکاناتی که سایت جی تی متریکس در اختیار شما قرار میده مورد بررسی قرا میدم و در مرحله بعد بررسی اینکه معیار امتیازدهی برای تست سرعت سایت در GTmetrix بر چه اساسی هست می‌پردازم. سپس به تفاوت‌ها و تناقض‌هایی که در بررسی سرعت سایت با هاست ایران وجود داره پرداخته و در انتها به معرفی سایت مشابه می پردازم.

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

آیا معیار سنجش سرعت سایت با GTmetrix درست است؟

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

تست سرعت سایت با GTmetrix در واقع مثل یک آزمون کنکور هست. برای هر معیار یک امتیاز درست مثل دروس تخصصی و عمومی در نظر گرفته شده که هرچقدر بتونید دروس تخصصی رو امتیاز بالایی بگیرید تاثیر بیشتری توی امتیاز نهایی خواهد داشت.

معیاری که برای دادن امتیاز نهایی سرعت سایت در جی تی متریکس وجود داره به این شکله که دو معیار زیر به صورت مکمل عمل کرده و مورد بررسی قرار می‌گیرند. در نهایت یک امتیاز نهایی به سایت شما داده میشه. اگه بخوام با مثال ذکر کنم اول فاصله حدودی تا سرور سایت بررسی میشه و بعدش معیارهای چند گانه که برای تست سرعت سایت وجود داره و شامل بهینه بودن تصاویر، پایین بودن تعداد درخواست HTTP و… هستند هر کدوم به صورت جدا بررسی میشن. برای هر کدوم از این معیارها هم یک امتیاز در نظر گرفته میشه و هر کدوم هم در چند حالت سخت بودن درجه بندی شدن. به عنوان نمونه گزینه‌هایی که به صورت avoid هستند امتیاز کمی به شما میدن، چرا که زیاد مهم نیستند و استفاده از اونها توصیه شده است. اما معیاری مثل Remove query strings from static resources از اهمیت بالایی برخوردار بوده و اگه بتونید امتیاز 100 رو براش دریافت کنید قطعا تو امتیاز نهایی تاثیر خیلی زیادی میزاره.

1. فاصله جغرافیایی سرور تست کننده تا سرور سایت

یکی از فاکتورهای سئو سایت لود سایت در مدت زمان کوتاه‌تر برای کاربران سایت هست. یعنی وقتی کاربری از گوگل وارد سایت شما میشه تا لحظه خروجش از سایت متوجه این مسئله هست. اگر خیلی زود سایت رو ترک کنه معیاری به عنوان نرخ پرش براش در نظر گرفته که اگه این معیار روی درصد بالایی قرار گرفته باشه زیاد براتون خوب نیست. حالا چرا نرخ پرش از سایت میتونه بالا باشه؟

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

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

2. بررسی فایل‌ها و بهینه بودن سایت

در دومین مرحله بررسی آماری که GTmetrix به ما میده بررسی فایل‌ها و معیارهایی هست که برای هر کدوم یک میزان سختی و درصدی از 100 تعریف شده که با به دست اومدن میانگین این گزینه‌ها در نهایت امتیاز به سایت شما داده میشه که سایت در چه مدت لود میشه، حجم صفحه چقدر هست، تعداد درخواست‌هایی که برای دریافت فایل از سرور انجام میگیره چندتا است و… که در بخش Performance Score و Page Detailes قابل مشاهده است.

آیا معیار سنجش سرعت سایت با GTmetrix درست است؟

آیا فقط به جی تی متریکس بسنده کنیم؟

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

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


تست سرعت سایت با Wakav

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

تست سرعت سایت با واکاو

سپس مشابه تصویر زیر بعد از اینکه سرور دلخواه برای بررسی سرعت سایت رو انتخاب کردید داخل باکس آدرس سایتتون رو وارد کرده کرده و روی دکمه شروع ارزیابی کلیک کنید. مدتی که منتظر بمونید سایت شما بررسی شده و مشابه اطلاعاتی که در جی تی متریکس به شما داده میشه دریافت می‌کنید.

آیا معیار سنجش سرعت سایت با GTmetrix درست است؟

بررسی سرعت لود سایت

برای اینکه از این موضوع مطلع بشیم یکی از سایت‌هایی که روی سرویس هاست ایران میزبان‌فا قرار داره رو در هر دو ابزار تست می‌کنیم. همونطور که در تصویر زیر میبینید مدت زمانی که طول میکشه این سایت بررسی شده با سرور کانادا به صورت کامل لود بشه روی 6.4 ثانیه قرار داره.

آیا معیار سنجش سرعت سایت با GTmetrix درست است؟

اما وقتی سایت رو با سرویس wakav بررسی می‌کنیم این مدت زمان بخاطر نزدیک بودن سرور تست کننده به سرور سایت خیلی کمتر بوده و یک اختلاف زمانی تقریبا 4 ثانیه‌ای دارد.

آیا معیار سنجش سرعت سایت با GTmetrix درست است؟

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

نوشته آیا معیار سنجش سرعت سایت با GTmetrix در هاست ایران درست است؟ اولین بار در پایگاه دانش میزبان‌فا پدیدار شد.

آموزش رفع خطای Optimize images در GTmetrix

$
0
0

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

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

آموزش رفع خطای Optimize images در جی تی متریکس

همونطور که اشاره کردم بهینه سازی تصاویر یک سایت شامل دو بخش هست که هر کدومشون مربوط به مواردی هستند که در زیر به توضیحشون می‌پردازم.

  • بهینه سازی حجم تصاویر(optimize image): در این بخش باید کاری کنیم که حجم تصاویری که در صفحات سایت استفاده می‌کنیم ضمن اینکه حداکثر کیفیت رو داشته باشند، حداقل حجم ممکن رو داشته باشند. گزینه‌هایی که میتونه روی افزایش حجم تصاویر تاثیر بزاره شامل ALT تصاویر، عنوان تصاویر، جزییات عکس، رزولوشن عکس، اندازه، فرمت فایل و… هستند.
  • بهینه سازی اندازه تصاویر(Serve scaled images): این گزینه هم صرفا مربوط به اندازه و رزولوشن تصاویر هست که هرچی بزرگ‌تر و در سطح بالاتری قرار داشته باشه باعث میشه که حجم تصویر هم بیشتر بشه.

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

رفع خطای Optimize images در GTmetrix و بهینه سازی تصاویر سایت

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

1. استفاده از برنامه‌های ویرایشگر تصاویر

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

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

2. استفاده از انتخاب فرمت درست

بین دو فرمت png. و jpg. که بیشترین میزان فرمت از استفاده تصاویر رو دارند، تصاویری Png. دارای کیفیت بالایی هستند و به همین دلیل حجم این تصاویر هم بالا خواهد بود. اما تصاویری که خروجی به صورت jpg. دارند کیفیت به نسبت کمتری دارند و علاوه بر اون هم میتونید در سه سطح میزان رزولوشن اونها رو مشخص کنید. در صورتی که روی رزولوشن متوسط یا پایین باشند حجم کمتری خواهند داشت.

پس پیشنهاد می‌کنم برای اینکه حجم کمتری داشته باشید از فرمت تصویری استفاده کنید که کمترین حجم ممکن رو ضمن اینکه تاثیر زیادی روی کیفیت تصویر نزاره استفاده کنید.

3. انتخاب اندازه درست

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

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

4. استفاده از ابزار آنلاین

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

5. استفاده از افزونه‌ها و پلاگین‌ها

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

امیدوارم که این آموزش هم مورد توجه و پسند شما قرار گرفته باشه و با استفاده ازش تونسته باشید اقدام به رفع خطای Optimize images در GTmetrix و بهینه سازی تصاویر سایت بکنید. در صورتی که در رابطه با این آموزش سوال یا مشکلی داشتید در بخش دیدگاه‌ها اعلام کنید.

نوشته آموزش رفع خطای Optimize images در GTmetrix اولین بار در پایگاه دانش میزبان‌فا پدیدار شد.

آموزش رفع خطای serve scaled images در GTmetrix

$
0
0

استفاده از تصاویر در وبسایت بخش عمده فایل‌های آپلود شده روی یک سایت رو تشکیل میدن و تاثیر بسیار زیادی روی ایجاد تغییرات ظاهری در سایت دارند. همه ما در سایتامون و در هر نوشته از چند تصویر به خاطر اینکه بتونیم در جستجوی تصاویر گوگل هم بالا بیایم استفاده می‌کنیم. در این بین سعی میشه همیشه از تصاویر با کیفیت و زیبایی استفاده بشه که با خواندن پیام چشمی توسط بازدیدکننده در نگاه اول کاری کنید که محتوای سایت شما رو تا انتها دنبال کنند. اما یک شرط مهمی که برای استفاده از تصاویر در سایت وجود داره متاسفانه نادیده گرفته میشه که اونم چیزی نیست جز بهینه سازی کردن تصاویر سایت از نظر اندازه که در مبحث تست بهینه سازی سایت ازش با نام serve scaled images یاد میبریم. این بهینه سازی از دو جهت مورد بررسی قرار میگیره که بخش اول شامل اندازه تصاویر و بخش دوم شامل حجم تصاویر میشه که در اینجا منظورمون اندازه تصاویر هست.

در این آموزش از پایگاه دانش میزبان‌فا قصد دارم به نحوه رفع خطای serve scaled images در جی تی متریکس بپردازم که در اون به معرفی چندین راهکار مختلف برای اینکه بتونید اندازه تصاویر رو به صورت استاندارد تعیین کنید می‌پردازم. پس اگر شما هم تصاویری که در سایت استفاده می‌کنید در اندازه بزرگ هستند تا انتهای این آموزش با ما همراه باشید تا به موضوع optimize image بپردازیم.

آموزش رفع خطای serve scaled images در GTmetrix

وقتی هنگام تست سرعت سایت با جی تی متریکس به خطای serve scaled images برخورد می‌کنید با تصویری مشابه زیر مواجه خواهید شد. منظور از مشکل serve scaled images اینه که تصاویر در اندازه درست و استانداردی قرار ندارند.

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

وقتی از قالبی استفاده می‌کنید که اندازه استاندارد تصاویر شاخص برای نوشته‌ها روی 350*800 تنظیم شده باید از همین اندازه تو همه نوشته‌ها استفاده کنید تا بر اساس امکانات قالب برای سایر بخش‌ها مثل نوشته‌های مرتبط، نمایش مطالب در سایدبار و… که وجود داره بیاد و از برش تصاویر استفاده بکنه. بنابراین وقتی تصویر رو آپلود می‌کنید وردپرس میاد و از تصویر 350*800 پیکسلی که آپلود می‌کنید در چند اندازه مختلف برش میزنه که هر کدوم برای نمایش نوشته در یک بخش دیگه از سایت هست. به عنوان نمونه برای سایدبار ممکنه از یک تصویر با اندازه 48*110 استفاده بشه. اگه فرض کنیم که تصویر اولیه و اصلی ما که با اندازه 350*800 لوده حجمی برابر با 600 کیلوبایت رو داشته باشه، در این صورت موقع برش خوردن ممکنه به حجم 60 کیلوبایت برسه که این عدد واقعا خیلی خوب هست.

اما برخی قالب‌ها هستند که چنین قابلیتی رو ندارند و از تصاویر تو اندازه مختلف برش نمی‌زنند. اینجاست که با استفاده از CSS اندازه تصاویر تغییر داده میشه و در قالب گفته میشه که برای نمایش آخرین مطالب در سایدبار اندازه تصویر رو با استفاده از CSS مثلا روی 48*110 نمایش بده. اتفاق بد درست در اینجا میفته و درست تصویر اصلی با همون حجم 600 کیلوبایت نمایش داده میشه، در این صورت برای لود هر بار این تصویر 600 kb از ترافیک هاست شما مصرف میشه که اگر در روز فرض کنیم برای 1000 بازدیدکننده این تصویر لود بشه، در این صورت برای این تعداد بازدید باید 600 مگابایت پهنای باند رو از دست بدین، در صورتی که اگه تصویر رو برش بدین و حجمش به 60 کیلوبایت برسه شما برای این تعداد بازدید فقط 60 مگابایت پهنای باند رو در هر روز مصرف خواهید کرد.

روش اول: استفاده از برنامه ویرایشگر عکس(توصیه شده)

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

روش دوم: استفاده از ابزار آنلاین

یکی از سایت‌های آنلاین که با استفاده ازش میتونید اندازه تصاویر خودتون رو تغییر بدین Imageresize هست که امکان آپلود تصویر از کامپیوتر و آپلود از آدرس رو به شما خواهد داد. کافیه روی دکمه زیر کلیک کنید تا به سایت مورد نظر برید.

imageresize

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

روش سوم: برش تصاویر توسط سایت ساز

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

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

نوشته آموزش رفع خطای serve scaled images در GTmetrix اولین بار در پایگاه دانش میزبان‌فا پدیدار شد.

آموزش رفع خطای optimize the order of styles and scripts در GTmetrix

$
0
0

در این سری از آموزش‌های GTmetrix قصد دارم به نحوه برطرف کردن خطای optimize the order of styles and scripts بپردازم. همونطور که از معنی لغوی این خطا که متشکل از کلمات optimize و order هست میشه فهمید که منظور این خطا قرار گیری درست و بهسنه سازی در لود دو فایل css و js هست. یعنی وقتی در بخش head صفحات شما فایل‌های استایل و جاوا اسکریپت لود میشن، طوری باشن که هر دو این فایل‌ها به ترتیب در هر خط لود بشن و طوری نباشه که در خط اول فایل css، در خط بعدی js و در خط بعدی باز هم css قرار داشته باشه. بلکه باید کاری کنیم که کلیه فایل‌های css به ترتیب در چند خط و فایل‌های js هم در چند خط دیگه و به صورت جدا قرار داشته باشند که با ارور order of styles and scripts در جی تی متریکس مواجه نشیم.

رفع خطای optimize the order of styles and scripts

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

پس باید کاری کنیم که کدهای قرار داده شده در سورس صفحات به یک ترتیب باشه و این دو فرمت فایل به صورت نامرتب لود نشوند. برای این کار شما باید فایل header سایت خودتون رو بررسی کنید و لینک‌هایی که برای لود این دو فرمت فایل قرار داره رو جابجا کرده و به شکل مرتب و پشت سر هم قرار بدین. ارور optimize the order of styles and scripts رو میشه بهینه سازی چیدمان فایل‌های css و js ترجمه کرد.

حتی اگه دلیل این تغییر وابستگی بین دو فایل نباشه، بهتره که فایل css رو به خاطر سبک‌تر بودن در اولویت قرار بدیم و کاری کنیم که اول این فرمت فایلی شروع به لود شدن بکنه و ساختمان کاملی از سایت ما در عرض چند ثانیه شکل بگیره. این کار باعث میشه تا بخاطر لود شدن سریع‌تر سایت میزان نرخ پرش رو کاهش بده و صدمه‌ای هم از این بابت به سایت شما وارد نمیشه. چرا که بازدیدکنندگان حوصله اینو ندارن که منتظر بمونن بعد از چند ثانیه یهو محتوای کامل سایت نشون داده بشه.

<head>
 <title> Title </title>

 <style>
  // CSS Code
 </style>
 
 <script type="text/javascript">
  // javascript Code
 </script>

</head>

همونطور که در نمونه کدهای بالا میبینید باید بهینه سازی سایت شما از نظر چیدمان css و js در سایت به این شکل باشه و اول فایل‌های استایل و بعدش هم جاوا اسکریپت رو برای مرورگر کاربران ارسال کنید. اگر از وردپرس استفاده می‌کنید، برای این کار باید فایل header.php رو بررسی کرده و چیدمانی که برای لود این دو فرمت فایل هست رو ویرایش کرده و به صورت مرتب شده قرار بدین.

افزونه Optimize the order of styles and scripts

اما بخاطر اینکه در وردپرس افزونه‌ها هم دارای فایل‌های CSS و JS گوناگون هستند ممکنه نتونید این کار رو به درستی انجام بدین، برای همین یک راهکار ساده که وجود داره اینه که میتونید توسط افزونه کلیه فایل‌هایی که در صفحات سایت لود میشن رو شناسایی کرده و چیدمان دلخواه برای لودشون رو انتخاب کنید. افزونه WP Scripts & Styles Optimizer یکی از این افزونه‌های خوب هستش که تا به امروز موفق شده بیش از 800 نصب فعال و کسب امتیاز 4.7 رو ازآن خودش بکنه که با این افزونه میتونید اقدام به مرتب کردن فایل‌ها در وردپرس بکنید. برای استفاده از این افزونه روی دکمه زیر کلیک کنید و سپس با استفاده از راهنمای نصب افزونه در وردپرس اقدام به نصب و فعال سازی افزونه بکنید.

دانلود افزونه WP Scripts & Styles Optimizer

بعد از نصب و فعال سازی افزونه مشابه تصویر زیر منویی با عنوان WP Scripts & Styles Optimizer اضافه میشه که با رفتن به این صفحه میتونید این فایل‌ها رو شناسایی کرده و ترتیب بندی دلخواه برای هر کدوم رو انتخاب کنید.

رفع خطای Optimize the order of styles and scripts در GTmetrix

امیدوارم این آموزش هم مورد توجه و پسند شما قرار گرفته باشه و با استفاده ازش تونسته باشید اقدام به رفع خطای Optimize the order of styles and scripts در GTmetrix بکنید. در صورتی که برای مرتب کردن فایل‌های استایل و جاوا اسکریپت در این زمینه سوال یا مشکلی داشتید در بخش دیدگاه‌ها اعلام کنید.

نوشته آموزش رفع خطای optimize the order of styles and scripts در GTmetrix اولین بار در پایگاه دانش میزبان‌فا پدیدار شد.

Viewing all 383 articles
Browse latest View live




Latest Images