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


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

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

الگوریتم گوگل پاندا در سئو چه نقشی دارد؟
29 فروردین

الگوریتم گوگل پاندا در سئو چه نقشی دارد؟

بازدید: 241

گوگل پاندا (Google Panda) به تغییراتی گفته می شود  که از اواخر اسفند  1389  (فوریه 2011) در الگوریتم نمایش نتایج جستجو در گوگل اعمال شد و همچنان ادامه دارد. این تغییرات با هدف کاهش سایت های رتبه بندی شده یا  کیفیت پایین دنبال می شود و سایت های با کیفیت را در بالای صفحه نمایش نتایج جستجو نشان می دهد. در اثر این تغییرات، سایت هایی که حجم بسیار زیادی آگهی تبلیغاتی در خود جای داده بودند به رده های پایین سقوط کننند و وب [...]

وب چیست و چگونه کار میکند؟
28 فروردین

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

بازدید: 518

وب (WEB)یک سیستم مبتنی بر سرویس دهنده سرویس گیر (Client/Server) بر روی اینترنت است که با استفاده از ابزار فرامتن(HyperText) و پیوند(Link)  دادن اجزای اطلاعات به یکدیگر دسترسی به منابع اطلاعاتی را تسهیل می کند .وب از ابزار فوق رسانه ای (HyperMedia) که شامل فوق متن و چند رسانه ای (MultiMedia) است بهره می گیرد. از طریق وب می توان اطلاعات را ارسال ویا دریافت نمود و متفاوت بودن سیستمهای سخت افزاری و نرم افزاری (سیستم عامل(  مانع ایجاد ارتباط [...]

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

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

بازدید: 335

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

اینفوگرافیک چیست و کاربرد اینفوگرافیک در طراحی سایت چیست؟
31 فروردین

اینفوگرافیک چیست و کاربرد اینفوگرافیک در طراحی سایت چیست؟

بازدید: 350

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

خدمات پاک سئو و اثر خدمات پاک سئو
01 اردیبهشت

خدمات پاک سئو و اثر خدمات پاک سئو

بازدید: 311

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

ویژگی های مثبت و نکات منفی طراحی سایت با دکمه های نامرئی
01 اردیبهشت

ویژگی های مثبت و نکات منفی طراحی سایت با دکمه های نامرئی

بازدید: 478

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