ای‌جکس چیست و راه حل های رفع مشکل سئو در AJAXای‌جکس چیست و راه حل های رفع مشکل سئو در AJAX تاریخ انتشار : 30 فروردین، 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 استفاده شود تا خزنده های موتور جستجو وب سایت را بهتر پیدا کنند و سئو سایت بهتر شود.


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

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

سئوی منفی چیست و چقدر نگران کننده است؟
01 اردیبهشت

سئوی منفی چیست و چقدر نگران کننده است؟

بازدید: 2314

سئوی منفی ( Negative SEO ) در طراحی سایت سوالات زیادی را به همراه دارد. به عنوان مثال: سئوی منفی چیست؟ آیای سئوی منفی واقعا وجود دارد؟ اگر چنین است باید نگران چه چیزی بود؟ چگونه باید متوجه شد که کسی قصد حمله سئوی منفی به سایت ما را دارد؟ برای محافظت از سایت چه کاری باید انجام داد؟ هدف از این مقاله روشن شدن مبحث سئوی منفی در طراحی وب سایت و در نتیجه کاهش ترس شما از آن می باشد.سئوی منفی چیست؟سئوی منفی زمانی اتفاق می افتد [...]

چگونه طراح وب سایت شویم؟
29 فروردین

چگونه طراح وب سایت شویم؟

بازدید: 3506

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

بازاریابی اینترنتی با موتورهای جستجو
29 فروردین

بازاریابی اینترنتی با موتورهای جستجو

بازدید: 1942

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

Bootstrap چیست و چه کاربردی دارد؟
01 اردیبهشت

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

بازدید: 6383

 Bootstrap ( بوت استرپ ) چیست ؟Bootstrap ( بوت استرپ ) یکی از قدرتمند ترین و محبوب ترین فریم ورک های HTML ، CSS و Javascript برای توسعه و طراحی سایت بصورت واکنش گرا در ابزارهای نمایش وب در اندازه های مختلف از جمله موبایل، تبلت و کامپیوترهای رومیزی می باشد، که امکان طراحی صفحات وب در کمترین زمان را به شما می دهد. تاریخچه Bootstrap :Bootstrap ( بوت استرپ )  توسط یک طراح و یک توسعه دهنده تویتر ایجاد شده است، و تبدیل به یکی از [...]

اهمیت و دقت رتبه بندی الکسا برای وب سایت
31 فروردین

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

بازدید: 1818

شاید گوشه کنار وب بارها عنوان رتبه الکسا (Alexa) را دیده و مطالبی در این خصوص الکسا خوانده باشید؛ سایتها و سرویس های خاصی نیز در این رابطه در گستره وب شکل گرفته اند که در مجموع تحت عنوان بهینه سازی و افزایش رتبه سایت SEO یا (Search Engine Optimization) فعالیت می کنند، اینکه الکسا چیست، چگونه آمار بازدیدهای یک سایت را به دست می آورد و رتبه بندی آن تا چه میزان اهمیت دارد، مطلبی است که در این مقاله به آن خواهیم پرداخت تا نهایتا به [...]

CIW یا Certified Internet Web چیست؟
01 اردیبهشت

CIW یا Certified Internet Web چیست؟

بازدید: 1904

CIW چیستکلمه CIW مخفف Certified Internet Web است که نام گروهی از طراحان وب بوده که در دهه 1990 این موسسه را تاسیس کردند و به سرعت جایگاه خود را میان شرکت‌های بزرگ پیدا کردند. استقبال از این مدارک به گونه‌ای بوده که این موسسه تا سال 1997 حدود 145000 مدرک را به دانشجویان خود داده است. در ابتدا پایه کار این گروه بر این اصل بنا شده بود که هیچ برنامه خاصی را آموزش نمی‌دادند چون با این کار خود را فقط به یک محصول منحصر می‌کردند. اما [...]