ای‌جکس چیست و راه حل های رفع مشکل سئو در AJAXای‌جکس چیست و راه حل های رفع مشکل سئو در AJAX تاریخ انتشار : 29 فروردین، 1396

ای‌جکس چیست و راه حل های رفع مشکل سئو در AJAX

مقدمه
حدود سال 2010 شرکت گوگل اعلام نمود برنامه ها و وب سایتهایی که از Ajax می کنند، قابل Crawl هستند. همانگونه که اغلب شما می دانید، موتورهای جستجو کدهای HTML را خیلی سریع ایندکس می نمایند اما نمی توانند محتواهای جاوا اسکریپت و اِی جکس (AJAX ) را درک کنند.هدف از این مقاله معرفی AJAX، بررسی مشکل Crawl محتواهای AJAX و ارائه راه حل های متخلف برای رفع این مشکل می باشد.

ای جکس


ای ‌جکس چیست؟
ای ‌جکس AJAX مخفف کلمات( Asynchronous JavaScript And XML)، مجموعه ‌ای از استانداردها و فناوری‌های وب است که به کمک آنها می‌توان برنامه‌هایی مبتنی بر وب تولید کرد که به آسانی با کاربران تعامل داشته باشند.ای‌جکس یک تکنولوژی نیست؛ بلکه مجموعه‌ایست از تکنولوژی‌هایی که هر یک در جای خود تکنولوژی کامل و موفقی هستند، و اکنون به شکل جدیدی در کنار هم قرار گرفته و ای‌جکس را تشکیل داده‌اند. تکنولوژی‌هایی که در ای‌جکس از آن‌ها استفاده می‌شود عبارت‌اند از:

بازیابی داده‌ها بصورت غیر همروند با استفاده از XMLHttpRequest.و جاوااسکریپت برای سرهمبندی همه چیز با هم.
تبادل و دستکاری داده با استفاده از XML و XSLT.
نمایش استاندارد با استفاده از XHTML و CSS                                                                                                                         نمایش پویایی و تعاملات با استفاده از Document Object Model (DOM).

ای جکس یک شیوه جهت طراحی و توسعه وب‌گاهها بوده که جهت بالا بردن قدرت تعامل Interface سایت با کاربر و بالا بردن کیفیت عملکرد و قابلیتهای سایت مورد استفاده قرار می‌گیرد Ajax.به صورت Client Side و با به کار گیری CSS و JavaScript مورد استفاده قرار می‌گیرد. امروزه در مبحث طراحی صفحات  HTML تکنولوژی Ajax عامل حیات صفحه و ارضاء کاربر در مواجهه با Interface، تلقی می‌شود.
در واقع ای‌جکس ترکیبی از تکنولوژی‌های فوق است و هیچ چیز جدیدی ارائه نمی‌دهد. همه شگفتی ای‌جکس در معماری‌ایست که برای ساخت یک برنامه وب، با استفاده از این تکنولوژی‌ها ارائه می‌دهد.

ای ‌جکس چیست؟

 

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

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

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

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

آن دسته از فعالیت‌های کاربر که باعث یک درخواست HTTP می‌شدند، اکنون با استفاده از جاوااسکریپت موتور ای‌جکس را فراخوانی می‌کنند. در مورد پاسخ به آن دسته از فعالیت‌های کاربر که نیاز به ارسال درخواست به سرور ندارند (مانند اعتبار سنجی‌های ساده داده‌ها، ویرایش داده‌های درون حافظه سیستم کلاینت، و حتی هدایت کاربر به بخش‌های مختلف برنامه در برخی موارد) موتور ای‌جکس خود وارد عمل می‌شود.

اگر موتور ای‌جکس برای پاسخ گویی نیاز به چیزی از سمت سرور داشته باشد، (مثلاً اطلاعاتی را از بانک اطلاعاتی بخواهد، کدهای جدیدی برای رابط کاربر لازم داشته باشد و...) بصورت غیر همروند و معمولاً در قالب XML یک درخواست به سرور ارسال می‌کند. ارسال این درخواست هیچ وقفه‌ای در کار کاربر با برنامه ایجاد نخواهد کرد. همانطور که پیش از این گفته شد، ای‌جکس مجموعه‌ای از چند تکنولوژی است. موتور Ajax از این تکنولوژی‌ها برای انجام وظایف مختلفی که بعهده دارد استفاده می‌کند.


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

به دلیل عدم نیاز به بارگذاری مجدد كل یك صفحه وب، مقدار داده هایی كه لازم است برای تكمیل یك Interaction میان كاربر و سایت مبادله شود، به شدت كاهش می یابد و این به معنی افزایش محسوس سرعت نرم افزارهای تحت وب، سهولت به كارگیری اینترفیس های مبتنی بر ای جكس و كاربرپسندترشدن آن ها می شود. به همین دلیل این روزها اكثر پورتال های بزرگ (مانند یاهو) مشغول طراحی اینترفیس های مبتنی بر Ajax هستند. با این همه مزایای ای جكس به همین موارد ختم نمی شود. فرض كنید وقتی در طول شبانه روز میلیاردها بار فرآیند بارگذاری مجدد صفحات وب تعاملی در شبكه اینترنت تكرار می شود.

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

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


استفاده درست از AJAX در طراحی سایت!؟
یکی از اشتباهات رایج در طراحی سایت استفاده از URL بی معنی برای موتورهای جستجو است که توسط برنامه نویسان ایجاد می شود . بسیاری از مهندسین نرم افزار در استفاده از Ajax هنگام طراحی سایت این اشتباه را انجام می دهند که پارامترها و مشخصات وب سایت ها را در آدرس URL بعد از # قرار می دهند و به سرور ارسال می کنند غافل از آنکه موتورهای جستجو پارامترهای بعد از # را در نظر نگرفته و از آنها چشم پوشی می کند .

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

راه صحیح برای مشکل بالا استفاده از !# خواهد بود آنهم به شرطی که کد آن بتواند پاسخگوی درخواست گوگل باشد، که تنها این کافی نیست و با وجود اینکه راههای مختلفی در طراحی وب سایت برای استفاده از AJAX وجود دارد ولی مهمترین آن این است که با استفاده از ASP,JSP,ASP، NET  و .... کدی بنویسید که مطمئن باشید سرور از طرح خزنده گوگل AJAX پیروی کرده و یک URL قابل فهم برای موتورهای جستجو تولید می شود و سئو سایت بهتر می شود.

استفاده درست از AJAX در طراحی سایت!؟


راه حل های رفع مشکل سئو در AJAX
یکی از پر طرفدارترین روشها برای رفع مشکل خزیدن AJAX ، طرح AJAX خزنده گوگل می باشد.
مشکلات خزیدن AJAX
یکی از مشکلاتی که اکثر برنامه نویسان در کدنویسی سایت خود با اسکریپت های AJAX دارند عدم بررسی صفحات سایت در موتور جستجو و بهینه نبودن آنها برای سئو است.
برای درک و شرح بهتر این مشکل به نحوه عمکرد Crawler موتور جستجوهای یا نحوه خزیدن بر روی صفحات وب می پردازیم:
 1. رباتهای موتورهای جستجو ابتدا سورس صفحه مورد نظر را بررسی می کند.
 2. سپس متا تگ های صفحه را می خوانند.
3.  بعد از بررسی متا تگ ها و یافتن آپشن مورد نظر، در بدنه صفحه یا تگ body به دنبال لینک ها می گردد و لینکهای داخل کد href را در می آورد تا صفحات جدید راCrawl کند.
در اینجا اگر برای صفحه AJAX لینکی در نظر نگرفته باشید و با On Click نمایش دهید موتور جستجو قادر به پیدا کردن چیزی نیست که آن را باز کند، در نتیجه محتوای آن صفحه Crawl و ایندکس نمی شود. از طرفی مشکل اصلی خزیدن AJAX این است که مبتنی بر جاوا اسکریپت کار می کند. جاوا اسکریپت یک زبان برنامه نویسی سرویس گیرنده می باشد و در مروگرهای (فایرفاکس، کروم و غیره) اجرا می شود. مرورگرهای مختلف دارای ویژگی ها و توابع مختلفی هستند در نتیجه جاوا اسکریپت نیاز به منابع اضافی دارد که این برای رباتهای موتورهای جستجو هزینه بر است، در نتیجه روی سئوی سایت تأثیر منفی می گذارد. اگر یک روش خاص باعث افزایش هزینه عملیاتی موتورهای جستجو شود، وب مسترها باید بر روی روشهای با هزینه کمتر کار کنند.

مشکلات خزیدن AJAX


طرح AJAX خزنده گوگل
در طرح AJAX خزنده گوگل URL تمام صفحات دارای محتوای AJAX با کاراکترهای خاص (!#) مشخص می شوند و هنگامی که گوگل یک لینک با AJAX URL ببیند به عنوان مثال
http://example.com/page?query#!stat
به طور اتوماتیک آن را به صورت زیر تفسیر می‌کند.
http://example.com/page?query&_escaped_fragment_=state
برای این منظور برنامه نویسان باید ساختار برنامه نویسی خود را تغییر دهند زیرا هنگامی که گوگل یک درخواست برای این URL می فرستد، سرور باید قادر به بازگشت کدHTML هنگام فراخوانی تابع AJAX باشد. هنگامی که گوگل AJAX URL را ببیند، پس از تفسیر آن محتواهای را Crawl و ایندکس می نماید. در نهایت زمانیکه صفحه ایندکس شده در نتایج موتورهای جستجو قرار گرفت، گوگل URL اصلی را به کاربر نمایش می دهد. در طرح AJAX خزنده گوگل، گوگل بدون اجرای جاوا اسکریپت قادر است محتوای AJAX را Crawl کند. این روش بسیار معمول تر از Hijax است اما نیاز به برنامه نویسی بیشتر دارد و در حال حاضر فقط توسط گوگل پشتیبانی می شوند.

طرح AJAX خزنده گوگل

 

كدام سایت ها از ای جكس استفاده كرده اند؟
دنیای برنامه نویسی وب هنوز درگیر هیجانات مربوط به آشنایی با این پدیده است و در حال بررسی مشكلات تكنیكی و هضم و جذب آن در بافت برنامه های تحت وب می باشد. به همین دلیل میزان استفاده عملی از آن چندان گسترده نیست. اما چون كارایی ای جكس دیگر برای همه ثابت شده است، حركت های بزرگی در سراسر اینترنت به سمت استفاده از این فناوری در جریان است. از جمله اینترفیس نسخه دوم Yahoo Mail كه به نسخه بتا معروف است و فعلا در دسترس كاربران سرویس غیر رایگان یاهو قراردارد، از همین فناوری استفاده می كند كه به زودی اینترفیس جدید در دسترس عموم قرار می گیرد. سرویس Gmail و Google Map نیز از این فناوری ای جكس استفاده می كنند .

كدام سایت ها از ای جكس استفاده كرده اند؟

 

نتیجه گیری :
در طراحی سایت استفاده از پارامترهای بی معنی برای موتورهای جستجو، کاری اشتباه است. استفاده از کدهای جاوا اسکریپت برای گوگل فرندلی کردن سایت مناسب نیست. بهتر است برای طراحی وب سایت از ASP,JSP,ASP.NET استفاده شود تا خزنده های موتور جستجو وب سایت را بهتر پیدا کنند و سئو سایت بهتر شود.


اشتراک گذاری در :

مقالاتی که پیشنهاد می شود بخوانید

افزایش سرعت سایت با mod_pagespeed گوگل برای Apache
01 اردیبهشت

افزایش سرعت سایت با mod_pagespeed گوگل برای Apache

بازدید: 1098

افزایش سرعت سایت با mod_pagespeed گوگل برای Apacheتوسعه دهندگان نرم افزاری شرکت گوگل از دو سال پیش شروع به ساخت ماژول mod_pagespeed برای آپاچی (Apache) کرده‌اند که با استفاده از آن در سرور سایت خود بدون نیاز به هیچ گونه تغییراتی در محتوای سایت خود می‌توانید سرعت سایت‌های خود را تا حد زیادی افزایش دهید و همان طور که می‌دانید یکی از نکات ضروری در مورد سئو و بهینه سازی سایت‌ها نیز همین سرعت پاسخگویی سرور و بارگذاری صفحات [...]

ای‌جکس چیست و راه حل های رفع مشکل سئو در AJAX
29 فروردین

ای‌جکس چیست و راه حل های رفع مشکل سئو در AJAX

بازدید: 1537

مقدمهحدود سال 2010 شرکت گوگل اعلام نمود برنامه ها و وب سایتهایی که از Ajax می کنند، قابل Crawl هستند. همانگونه که اغلب شما می دانید، موتورهای جستجو کدهای HTML را خیلی سریع ایندکس می نمایند اما نمی توانند محتواهای جاوا اسکریپت و اِی جکس (AJAX ) را درک کنند.هدف از این مقاله معرفی AJAX، بررسی مشکل Crawl محتواهای AJAX و ارائه راه حل های متخلف برای رفع این مشکل می باشد.ای ‌جکس چیست؟ای ‌جکس AJAX مخفف کلمات( Asynchronous JavaScript And XML)، [...]

Anchor Text چیست و تاثیر و اهمیت Anchor text در سئو
01 اردیبهشت

Anchor Text چیست و تاثیر و اهمیت Anchor text در سئو

بازدید: 1063

Anchor معنی لنگر را میدهد، در اصطلاح Anchor Text عبارت از متنی نامی میباشد که پیوندی به آن لینک میشود گوگل و تعداد دیگری از موتورهای جستجو، صفحات وب سایت ها را تحت تاثیر مستقیم متن پیوندی یا (Anchor Text ) به آن صفحات در نتایج جستجو نمایش می دهد. این موضوع یعنی اهمیت این متن ها در سئو را میتوان با نگاه كردن به نمونه های فوق العاده ای از صفحات وب سایت ها كه رتبه بالای نتایج جستجو در اختیار دارند درک نمود . Google bombs تقریباً آسان ترین [...]

نکات کلیدی و کاربردی برای طراحی سایت
28 فروردین

نکات کلیدی و کاربردی برای طراحی سایت

بازدید: 1347

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

چگونه یک وب سایت را قبل از تحویل به مشتری تست کنیم؟
01 اردیبهشت

چگونه یک وب سایت را قبل از تحویل به مشتری تست کنیم؟

بازدید: 1126

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

بهینه سازی سایت و سئو تضمینی سایت یا فروشگاه شما
31 فروردین

بهینه سازی سایت و سئو تضمینی سایت یا فروشگاه شما

بازدید: 938

سئو چیست و چگونه انجام می پذیرد؟سئو عبارت است از بهینه سازی وب سایت برای موتورهای جستجوگر که گوگل مهمترین آنهاست و تعریفی که ما برای سئو ارائه می دهیم راهنمایی کاربران به وبسایت هایی که مرتبط ترین موضوع را با کلمه کلیدی مورد جستجو آنها دارد اما چگونه به گوگل بگوییم که سایت ما مرتبط ترین سایت با کلمه کلیدی مورد جستجو می باشد ؟ پاسخ این سوال در استراتژی سئو سایت میباشد که از مهمترین آنها می توان به تولید محتوای [...]