رفع خطای Specify a cache validator و رفع خطای (Configure entity tags (ETags

رفع خطای Specify a cache validator و ارور (Configure entity tags (ETags
رفع خطای Specify a cache validator

Specify a cache validator و (Configure entity tags (ETags ارورهایی هستند که قصد داریم در این صفحه به آن‌ها بپردازیم. گاهی رفع این خطاها ساده است و گاهی سخت و نیاز به دانش تخصصی است. گاهی چنین ارورهایی نداریم بلکه تشخیص ما اشتباه بوده است و یا به دلیل تداخل های موجود تشخص آن نرم افزار و یا ابزار آنلاین اشتباه بوده است. گاهی رفع چنین اروری در کنترل ما نیست و باید دسترسی های ادمین به هاست خود داشته باشیم. همه این موارد باعث می‌شود حل این مشکل را با کمی چالش روبه‌رو کند.

در ادامه آموزش gtmetrix از مقالات سئو سایت میزفا در خدمت شما هستیم. من پوریا آریافر متخصص سئو نویسنده این مقاله هستم. در جلسه گذشته که درباره رفع خطای Specify a Vary: Accept-Encoding header مقاله‌ای را انتشار دادیم، در این مقاله همان طور که گفتیم قصد داریم درباره مشکل رایج Specify a cache validator و مشکل رایج (Configure entity tags (ETags و اینکه آیا اصلا امکان حل آن در جی تی متریکس وجود دارد یا نه صحبت کنیم، راه حل این مشکل هم مثل برخی از مشکلات gtmetrix ممکن است ساده یا سخت باشد. ما میزفا همراه باشید.

[box type=”info” align=”alignright” class=”” width=””]

نکته ۱: ارور Specify a cache validator مربوط به رفع خطاهای PageSpeed گوگل است و ارور خطای (Configure entity tags (ETags مربوط به بخش YSlow یاهو می‌باشد ولی ما در اینجا درباره Specify a cache صحبت میکنیم و وقتی این مورد حل کنید به احتمال ۹۹ درصد ارور Etags هم حل می‌شود.

نکته ۲: اگر صرفا اطلاعات درباره رفع خطا را می‌خواهید و علاقه به دانش تخصصی ندارید می‌توانید بخش رفع خطا را فقط بخوانید. هر چند اگر کسی صورت مسئله را بداند و وقت بگذارد ۵۰ درصد از مسیر برای حل مشکل را طی کرده است.

[/box] [padding right=”1%” left=”1%”][/padding]

خلاصه‌ای از خطا Specify a cache validator

نام: Specify a cache validator
نوع: سرور
اولویت: زیاد
میزان سختی: راحت
میانگین امتیاز: 92%

specify a cache validator
specify a cache validator

 

 

درباره خطای Specify a cache validator در جی تی متریکس

زمانی که با ارور Specify a cache validator روبه رو می‌شوید نمایان‌گر این موضوع است که تنظیمات کش سرور شما به خوبی تنظیم نشده، حال منظور از اینکه کش وب سرور به خوبی تنظیم نشده است را در ادامه خواهیم گفت.

هر سروری که به خوبی تنظیم شده باشد یک سری محتوای هدر HTTP برای کش کردن فایل‌ها سمت کاربران در جهت بهینه سازی سرعت سایت ارسال می‌کند (اطلاعات بیشتری درباره هدرهای HTTP خواستید مقاله فهرست کدهای HTTP بخوانید، اگر درباره کش هم نیاز به اطلاعات خواستید مقاله کش چیست را بخوانید) این هدرهای کش اصولا دو عمل اصلی را انجام می‌دهند، یکی Cache Validate یعنی معتبرسازی فایل‌های کش و دیگری Cache Length به معنای طول کش یا مقدار زمان کش است. و هر کدام از این موارد نباشند مشکلاتی برای سایت ایجاد می‌کنند. در ادامه این عبارات را تشریح می‌کنیم، پس اگر خیلی متوجه نشدید نیاز به نگرانی نیست.

خطای specify a cache validator در PageSpeed گوگل
خطای specify a cache validator در PageSpeed گوگل

با این حال امیدواریم راهنمای زیر به شما کمک کند:

۱ – کش به زبان ساده باعث می‌شود درخواست‌های اضافه سمت سرور ارسال نشود چرا که هر عکس با فعال بودن عکس برای هر کاربر فقط یک بار درخواست می‌شود.
۲ – کش سمت سرور تنظیم می‌شود و سمت سرور است دستور ارسال می‌شود تا سمت مرورگر کاربر این کش جا بگیرد.
۳ – تنظیمات کش در قالب هدر HTTP ارسال می‌شود. هدر HTTP به صورت کلی یک محتوایی است که قابل دیدن توسط کاربر نیست ولی مرورگر آن را می فهمد.
۴ – از دو هدر HTTP کلی، کش تشکیل می‌شود. اولی Cache Validate و دومی Cache Length و هر کدام از این هدر HTTP نباشند باعث یک نوع خطا می‌شود.

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

Cache Length

گفتیم Cache Length معنای “طول کش” یا “مقدار زمان کش” را می‌دهد حال دو نوع هدر HTTP داریم که Cache Length را در مرورگر کاربر تعیین می‌کند Cache-Control و Expires

این دو هدر تعیین می‌کنند که چه مدت یک فایل باید در مرورگر کاربر نگه داشته شود و اگر این دو هدر تنظیم نشده باشند خطای Leverage browser caching رخ می‌دهد و اگر چنین خطایی را دارید روی اسم آن خطا کلیک کنید. به عبارت دیگر هدر Cache Length هیچ گاه باعث ایجاد ارور Specify a cache validator و ارور (Configure entity tags (ETags نمی‌شود.
حال اگر چنین مشکلی ندارید به شکل خلاصه بدانید که در هدر Cache-Control مدت زمان انقضا مشخص می‌شود به این منظور که یک عدد بر حسب ثانیه برای کش کردن فایل در نظر می‌گیرد ولی در هدر Expires تاریخ زمان انقضا درج می‌شود و یک تاریخ مشخص می‌شود که مثلا تا فعلان تاریخ فایل کش شود. استفاده از هر دو هدر  Expires  و  Cache-Control لازم نیست، ولی حداقل استفاده از یکی در جهت افزایش سرعت سایت لازم و  ضروری است ولی اگر هر دو را اضافه کنید جز محکم‌کاری در جهت کش شدن فایل‌ها کار خاص دیگری نکرده‌اید ولی به شکل کلی هدر Cache-Control نسبت به هدر Expires اولویت بالاتری دارد.  Cache-Control  جدیدتر و معمولا این متد توصیه می‌شود ولی با این حال هنوز برخی سایت‌های آنالیز سرعت مثل Gtmetrix  هدر Expires را چک می‌کنند.

[two_third]
نمونه‌ای از cache contro header
برای مشاهده نمونه‌ای از cache control header کلیک کنید
[/two_third] [one_third_last]
نمونه‌ای از expires header
برای مشاهده نمونه‌ای از expires header کلیک کنید
[/one_third_last]

 

Cache Validate

دو هدر HTTP داریم که Cache Validate را تعیین می‌کند Last-Modified و Etag

این دو هدر تعیین می‌کنند که فایل کش شده برای چه تاریخی و ورژنی است و اگر به خوبی تنظیم نشده باشد خطای Specify a cache validator رخ می‌دهد. به این نکته توجه داشته باشید که شما فقط فایل‌هایی را می‌توانید رفع خطا کنید که در سرور شما باشد پس اگر فایلی در سایت شما از طریق یک سرور دیگری لود می‌شود به علت دسترسی نداشتن به آن سرور و فایل، نمی‌توان کاری انجام داد.

ما قرار هست در این پست درباره هدرهایی که Cache Validate را تعیین می‌کنند صحبت کنیم و همان‌طور که گفتیم این هدرها نشان می‌دهد که فایل کش شده چه ورژنی دارد و اخرین ورژن کش شده برای چه تاریخی است، هر دو هدر Last-Modified و Etag چنین عملی را انجام می‌دهند، به این دو هدر درخواستی اسم دیگری هم دارند و به آن‌ها Conditional requests یا درخواست‌های شرطی هم گفته می‌شود، در ادامه بیشتر در این باره صحبت خواهیم کرد

درخواست شرطی Last-Modified

درخواست last modified header

مقدار Last-Modified یک تاریخ خاصی را نشان می‌دهد، Last-Modified تاریخ آخرین ورژن فایل یا تاریخ اخرین ویرایش یک عکس یا صفحه است، همانند کد زیر:

Last-Modified: Mon, 03 Jan 2011 17:45:57 GMT

زمانی که فایلی یا صفحه‌ای را تغییر و ویرایش دهید، باید این تغییرات نیز سمت کاربر هم اعمال شود تا به درستی سایت کار کند، بنابراین وقتی کاربر دوباره وارد سایت شما می‌شود یک درخواست شرطی توسط هدری مجزا با عنوان If-Modified-Since ارسال می‌کند، مقدار این هدر مجرا از Last-Modified گرفته شده است، هدر If-Modified-Since زمانی که سمت سرور ارسال می‌شود بررسی می‌کند تا ببیند آیا تاریخ سمت سرور به روز شده است یا خیر، و منتظر پاسخ وب سرور می‌شود، اگر پاسخ با کد 200 ارسال شود به معنای جواب مثبت است و تاریخ تغییر کرده است و ولی اگر وب سرور کد 304 یا همان 304 Not Modified را ارسال کند به این معنا است که فایل مورد نظر به روز نشده است و از فایل موجود در کش مرورگر کاربر استفاده شود.

If-Modified-Since: Mon, 03 Jan 2011 17:45:57 GMT

اگر توضیحات قسمت Cache Length را مطالعه کرده باشید اشاره کردیم که  هدر Cache-Control نسبت به هدر Expires اولویت بالاتری دارد و اگر فرض بگیریم وب سرور در پاسخ به درخواست If-Modified-Since کد 200 را ارسال کند سر انجام تاریخ Last-Modified تغییر خواهد کرد و سر انجام باعث می‌شود مقادیر دو هدر Cache-Control و Expires تغییر کند و فایل جدید با اخرین ویرایش موجود در کش کاربر ذخیره شود.

درخواست شرطی Etag

درخواست etag header
درخواست etag header

هدر ETag با اسم کامل Entity Tag به معنای “برچسب هویتی” همانند هدر Last-Modified تغییرات صفحه یا فایل را به مرورگر کاربر اطلاع می‌دهد، با این تفاوت که به جای تاریخ و زمان آخرین ویرایش صفحه یا فایل از محتوای متنی منحصر به فردی برای هر صفحه یا فایل (مثل یک MD5 Hash) برای شناسایی آن صفحه توسط سرور استفاده می‌شود

ETag: "15f0fff99ed5aae4edffdd6496d7131f"

و از طرفی مرورگر کاربر به جای درخواست هدر قبلی If-Modified-Since که در حالت Last-Modified ارسال می‌کرد این بار هدر مجزایی با عنوان If-None-Match که مقدار آن از هدر ETag گرفته شده است به سمت وب سرور ارسال می‌کند و دوباره همانند قبل وب سرور با ارسال کد 200 یا 304 تعیین می‌کند که آیا فایل یا صفحه نیاز به آپدیت شدن در سمت کش کاربر را دارد یا خیر.

If-None-Match: "15f0fff99ed5aae4edffdd6496d7131f"

نکته: در بخش YSlow سایت GTMetrix خطای (Configure entity tags (ETags موجود است که اشاره به نبودن هدر ETags می‌کند که با رفع خطای Specify a cache validator آن هم رفع می‌شود.

نحوه رفع خطای Specify a cache validator

برای رفع این ارور باید هدرهای Last-Modified یا Etag یا هر دو با هم از سمت وب سرور ارسال شود، هدر درخواست Last-Modified به شکل کلی از سمت وب سرورها فعال است و نیازی به تنظیمات دستی آن توسط شما نیست، هدر Etag در وب سرورهای Apache ورژن 2.4 به بالاتر به شکل اتوماتیک فعال است و سمت کاربران این هدر ارسال می‌شود و در وب سرور NGINX از 2016 به بعد به شکل پیش فرض هدر Etag در آن فعال است.

پس شمایی که این خطا را دارید چه کاری باید انجام دهید؟

اول توجه داشته باشید با هاست مناسب از شرکت‌های معتبر، بعید است با مشکل Specify a cache validator روبه‌رو شوید به هر حال با برخورد این خطا به پشتیبانی هاست خود تیکت زده و درخواست دو هدر یا حداقل یک هدر را ارسال کنید، و راه بعدی برای این مشکل رفع خطای Leverage browser caching است، گاهی تنظیمات وب سرور به شکلی است که با رفع ارور Leverage browser caching مشکل موجود در Specify a cache validator هم رفع می‌شود، و اگر دقت کرده باشید اکثر سایت‌های ایرانی برای رفع خطای Specify a cache validator کد مربوط به Leverage browser caching را قرار می‌دهند.

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

خلاصه و پایان

برای بهبود سرعت سایت باید فایل‌ها مثل عکس‌هایی که کاربران نشان می‌دهیم را در سمت مرورگر کاربر کش کنیم، برای کش کردن باید سرور این دستور را ارسال کند. کش به دو هدر HTTP نیاز دارد.
اولی Cache Validate است به معنای معتبرسازی فایل‌های کش و اگر نباشد باعث ایجاد ارور Specify a cache validator می‌شود و دومی Cache Length به معنای طول کش یا مقدار زمان کش است که اگر نباشد باعث ایجاد ارور Leverage browser caching می‌شود.
حال خود Cache Validate دو نوع است یکی Last-Modified و Etag و اگر Last-Modified را انتخاب کنیم و Etag نباشد دوباره یک خطای دیگر رخ می‌دهد و آن ارور (Configure entity tags (ETags است هر چند این مورد دیگر مهم نیست. مهم این است که شما یکی از روش‌های Cache Validate را پیاده سازی کنید.

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

مقاله مربوط به حل مشکل Specify a cache validator به پایان رسید. امیدواریم در این آموزش سئو که باعث بالا بردن سرعت سایت و افزایش رتبه سایت در گوگل می‌شود، کمک شایانی کرده باشیم. این جلسه از دوره آموزش جامع جی تی متریکس که مربوط به رفع ارور Specify a cache validator بود، هم به پایان رسید در جلسه بعد به معرفی رفع خطای Specify image dimensions در PageSpeed گوگل می‌پردازیم. با ما همراه باشید.

فیلم آموزشی افزایش سرعت سایت با gtmetrix
فیلم آموزشی افزایش سرعت سایت با gtmetrix
پوریا آریافر
اولین کسب و کار آنلاین خودم رو در فیسبوک راه‌اندازی کردم، سال ۲۰۱۱ یکی از پرتعامل‌ترین صفحات فارسی با ۸۰ هزار فالور فعال رو داشتم. بعد اینکه فیسبوک خالی از کاربر ایرانی شد وارد دنیای شبکه شدم و در انتهای سال ۲۰۱۲ مدرک MCSE مایکروسافت رو دریافت کردم، در حالی که نمره بالا گرفتم ولی کسی به دلیل به خطر افتادن موقعیت شغلی خودش به عنوان کارآموز منو قبول نمی‌کرد، بعدش با شروع دوران خدمت سربازی، مسئول بهینه سازی یک سایت خبری معتبر شدم و سئو یاد گرفتم. در ابتدای سال ۲۰۱۴ تونستم از رتبه ۱۵۰۰۰ به ۴۰۰ الکسا نزدیک کنم، اون زمان الکسا خیلی مهم بود. وارد دانشگاه شدم، به دلیل عدم علاقه به دانشگاه سعی کردم زودتر تمومش کنم و سه ساله در مقطع کارشناسی IT فارغ التحصیل شدم، توی دانشگاه هر کسی منو میدید یاد سئو میوفتاد، در همون سال آخر دانشگاه بزرگ‌ترین کانال تلگرامی IT با ۴۰ هزار عضو رو داشتم، که به مجتمع فنی فروختم تا بتونم تمرکز رو فقط بر روی عشق خودم یعنی سئو بذارم، وقتی کانال تلگرام فروختم حس پرواز بهم دست داد، هرچند درآمد چندین میلیون ماهانه رو از دست دادم ولی دوباره باید مثل گذشته با پوستی نو یک فصلی نو رو میساختم. در این چندین سال فعالیت‌های سئو به شکل تخصصی بنده در قالب پروژه‌های مختلف و آموزش‌های حضوری و غیرحضوری در دفتر میزفا و دانشگاه علامه طباطبایی تهران صورت ‌گرفته، تجربه بهینه سازی موفقی در بهبود UX و CRO پروژه‌های سئو کسب کردم. در اکثر ابزارهای کاربردی گوگل تسلط کاملی دارم. عاشق کسب تجربه های جدید هستم. راز پیشرفت در هر کاری رو یادگیری و یاددادن می‌دونم و میزفا که در اواخر ۲۰۱۶ راه‌اندازی شد تونست چنین بستر مناسبی رو برام فراهم کنه. همینطور در حال حاضر مدیریت یک تیم ۱۰ نفری از جوانان فعال و پرانگیزه رو در میزفا به عهده دارم. نقد و بازخوردهای سازنده شما، جوهر تلاش‌های مستمر ماست تا یک قدم خودمون بهبود بدیم. منتظریم …
لیست آموزش GTmetrix نسخه جدید

16 نظر

16 پاسخ

  1. سلام Specify a cache validator من 100% بود وقتی افزونه اتو اپتیمایز رو نصب کردم و با اون کار کردم . Specify a cache validator من 61% رسید
    مشکل از کجا هست؟
    سپاس از آموزشتون

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

  2. سلام – ممنون از زحمات شما – یه سوال – در مطلب گفتید :
    —–
    نکته: در بخش YSlow سایت GTMetrix خطای (Configure entity tags (ETags موجود است که اشاره به نبودن هدر ETags می‌کند که با رفع خطای Specify a cache validator آن هم رفع می‌شود.
    —-
    الان من Specify a cache validator سایتم 100% هستش ولی (Configure entity tags (ETags سایتم 0% هستش – ممنون میشم راهنمایی کنید.

    1. سلام مهدی جان. خواهش.
      حتما برای شما از نوع Last-Modified است و etags نیست. هر چند خیلی مهم نیست ولی میتونی بری صفحه رفع خطای Leverage browser caching و اونجا کدهای مختلف تست کنی و بررسی کنی.

  3. Configure entity tags (ETags) الان این خطا رو چجوری رفعش کنم ؟ متوجه نشدم از این مقاله دقیقا !

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

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

      1. صرفا چون مقاله به تفسیر متغییر ها به صورت کامل همراه با مثال نپرداخته است اینگونه برداشت میشود
        در صورتی که بنده تا حدودی با آقای ایمان موافقم چون هدف از این مقالات ، کاربران هدفی میباشند که به دنبال رفع مشکل هستند نه آنهایی که صرفا به دلیل علاقه به اینگونه مطالب و یا معلمان و دانشجویان سئو که مفهوم تئوری را بیشتر ترجیح میدهند ( حداقل در بازه ی زمانی تقریبا نامشخصشان ) .
        بنده تخصص انچنانی در زمینه ی برنامه نویسی ندارم اما میدانم اگر واقعا موضوعی برای مثال مانند کد نویسی در بخشی از طراحی مرا از حرکت نگه دارد قطعا مشکل را برطرف میکنم
        همین مبحث cache control تقریبا سه روز کامل با مرور بیش 500 صفحه ی اینترنتی وقتم را گرفت تا در نهایت توانستم با اضافه کردن etag ، pragma پارامتر هایی دیگر مشکل انقضای فایل ها را برطرف کنم و امتیاز کامل 100 gtmetrix را بدست آورم
        تمامی لینکهای های گوگل را کبود کردم تمامی کد های مختلف برای cache control را در گیت هاب ، استک اور فلو و سایت های دیگر امتحان کردم
        اما در نهایت توانستم با ویرایش کد سالمی بسازم که تمام نیازم رابرطرف کند

        1. سلام. مثال نداره؟ پس عکس ها چی هستند؟ آیا شما کدها رو میبینید؟ اون همه کد یک خطی درج کردیم مثال نیست؟
          ما برای همه نوع کاربر هدف نوشتیم. کاربری که دنبال این هست متخصص سئو بشه که طبیعتا باید همه رو بخونه و کاربری که فقط رفع خطا رو میخواد. هر کاربری میتونه براساس عنوان های داخل مقاله بره اون قسمت مد نظر خودش رو بخونه.
          گاهی در درون متن ها و دقت به مفاهیم میشه راه حل پیدا کرد. متاسفانه اکثر ما به دنبال راه حلی هستیم که شبیه هلو خوردن راحت باشه و البته حاضر هم نیستیم هیچ هزینه ای بکنیم، دنبال یک رفع خطای تخصصی هستیم درحالی که خودمون تخصص نداریم و دوست داریم مقاله ای باشه که دقیقا اختصاصی برای ما نوشته بشه که بدون هیچ فکر کردی کار ما رو انجام بده. اگر بعضی خطاها راحت حل میشن به این معنی نیست که همه خطاها مثل آب خوردن هم حل بشن. هر خطایی برای خودش یک میزان سختی داره.
          درحالی که در دل این مقاله به خوبی به راه حل هم اشاره شده و مثال هم زده شده.
          خوشحالیم مشکل شما حل شده ولی دقت داشته باشید که ۵۰۰ صفحه وقت شما رو نگرفته، بلکه به دانش شما اضافه کرده، دانشی که ارزش هر چیزی رو داره. قدرت انسان های امروزی هم بر پایه همین دانشی هست که شما میگید وقتم رو گرفته. شما اگر حاضر نیستی ۵۰۰ صفحه بخونی پس باید چی کار کنی؟ دو راه داری یا هزینه مالی هست یا هزینه زمانی. شما هزینه زمانی رو انتخاب کردی.
          درضمن نمره ۱۰۰ در gtmetrix به معنی سرعت خوب نیست. خیلی ها هستند که سرعت در gtmetrix قرمزی دارند ولی سرعت خوبی دارند.
          انتظار از شما میره که تجربه خودتون با جزئیات بیشتر در اختیار سایر کاربران قرار بدید تا بقیه بتونن مثل هلو مشکلشون حل کنن و کمتر زحمت به فکر کردن بدن 🙂 ولی آیا انجام میدی؟ یا مثل بقیه دوستان صرفا انتقاد میکنید؟ چون ما که انجام دادیم و روزها وقت گذاشتیم و حاصل اون شده مقاله بالا. انتشار یک مقاله باکیفیت که دارای تجربیات بسیاری باشه ب نظر من شهامت میخواد. چون باید برای نوشتن اون مقاله کلی وقت گذاشته بشه، برای اون وقت هم کلی هزینه شده. آیا شما تا الان چنین کاری کردید؟
          هر چند انتقاد خوبه ولی قضاوت بی اساس نه. قضاوت راحته چون بدون فکر میاد ولی نوشتن مقاله ی که حاصل سال ها تجربه هست کار راحتی نیست. شما به نظر من الان وظیفه دارید تجربیات خودتون رو در مقاله انتشار بدید اگر به حرف های خودتون و ایمان عزیز رو قبول داری.
          سعی کنید با انتشار مقاله به بهبود فضای وب ایران کمک کنید تا اینکه صرفا قضاوت کنیم.
          ممنونم از حضورت.

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

    1. سلام، این مورد ربطی به هاست نداره و باید در سمت کدنویسی حل بشه، بله درست گفتن.

  5. با عرض سلام و خسته نباشید بابت آموزش های عالی تون
    من یک وبلاگ بلاگفا تشکیل دادم تقریبا همه مشکلات سایت gtmetrix رو برطرف کردم فقط مشکل Leverage browser caching را نتونستم حل کنم و خیلی تلاش هم کردم ولی هیچ کدوم عمل نکرد
    ممنون میشم راهنمایی کنین من رو
    آردس وبلاگ:Mostanadd.blogfa.com
    با تشکر

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

      1. ممنون بله حالا فعلا واسه یاد گرفتن کلیات سئو این وبلاگ رو طراحی کردم و یه دلیل دیگش هم این بود که دیدن همه با وردپرس سریع با چندتا افزونه همه سئوشون رو انجام میدن(میدونم این مسئله خیلی خوبه)ولی اینکه ادم خودش از صفر شروع کنه و یادبگیره ارزشش بیشتره.
        ممنون از اینکه پاسخ دادین یه سوال دیگه البته با عرض معذرت
        تو نتایج گوگل این گزینه میاد Your page is not mobile-friendly. میدونم ماله اینکه قالب با گوشی های موبایل تطابق نداره ولی می خواستم ببین کدی هست درستش کنه،من این کد رو زدم ولی درست نشدmeta name=”viewport” content=”width=device width, initial-scale=.3″
        خیلی ببخشیدا یه سوال دیگه
        من robot.txt رو اوایل به اشتباهی فعال کرده بودم که کلا وبلاگم رو هیچ موتوری ایندکس نمیکرد،بعد از چند وقت فهمیدم و کد meta NAME=”ROBOTS” CONTENT=”ALL” / رو تو قالب وبلاگم قرار دادم و با webmaster هم صفحه mostanadd.blogfa.com/robots.txt رو remove کردم الان از کجا باید بفهمم که صفحاتن ایندکس میشه یا نه؟با توجه به اینکه هنوز کد های robot در robot.txt وجود داره
        خیلی معذرت می خوام سوالاتم زیاد شد ولی ممنون میشم جواب بدین

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

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد.

حداکثر حجم فایل برای آپلود: 1 مگابایت. فایل‌های مجاز برای آپلود: عکس, ویس, ویدیو, ورد یا پی دی اف, فایل متنی, زیپ. شما می‌تونید برای بهتر پرسیدن سوالتون، عکس یا ویس یا حتی فیلم در بخش نظرات میزفا آپلود کنید. برای ضبط ویس می‌تونید از خود واتس آپ استفاده کنید و بعد اینجا آپلود کنید و برای ارسال عکس هم کافی هست اسکرین شات بگیرید. Drop file here

با موفقیت ثبت شد، میزفا از شما برای عضویت در خبرنامه هفتگی تشکر میکند.

عضویت در خبرنامه هفتگی برای دریافت:

  • فیلم و مقاله رایگان سئو
  • آموزش‌های UX ، GA و GTM
  • مقاله های تخصصی ASP.NET Core
  • اطلاع رسانی از محصولات
فیلم آموزشی asp.net core 2
ترک میزفا خوب نیست!
معرفی جامع‌ترین ابزار سئو در ایران
بالای ۱۰ هزار عضو
PHZpZGVvIHdpZHRoPSI2MDAiIGhlaWdodD0iMzUwIiBwb3N0ZXI9Imh0dHBzOi8vbWl6ZmEuY29tL2Jsb2cvd3AtY29udGVudC91cGxvYWRzLzIwMjMvMDUvcG9zdGVyLW1pemZhLXRvb2xzLXZpZGVvLW1pbi5wbmciIGNvbnRyb2xzIHByZWxvYWQ9Im5vbmUiPiANCiAgIDxzb3VyY2Ugc3JjPSJodHRwczovL21pemZhLmNvbS9ibG9nL3dwLWNvbnRlbnQvdXBsb2Fkcy8yMDIzLzA1L21pemZhX3Rvb2xzXzcyMHAubXA0IiB0eXBlPSJ2aWRlby9tcDQiPg0KPC92aWRlbz4=