زمانی که سایت شما از دسترس خارج میشود، تشخیص محل وقوع مشکل، بسیار مهم است. نقاط اتصال بسیاری بین یک مرورگر و سرور اصلی آن وبسایت وجود دارند. ایجاد مشکل در هر نقطه از این زنجیره پیچیده (اینترنت)، میتواند از دستیابی افراد به یک وب سایت جلوگیری کند. ممکن است از دسترس خارج شدن وب سایت، زمانی رخ دهد که وب سایت یا سرور هیچ مشکلی نداشته باشند.
تصویر(1)
جهت یافتن مشکل، باید مسیر دسترسی به سایت مورد بازبینی قرار گیرد.
آیا اجزای شبکه اینترنت محل حضور شما عملکرد درستی دارند؟
اولین قدم، بررسی وجود مشکل احتمالی در شبکه محلی است. جهت این مورد، میتوانید موارد زیر را بررسی کنید:
- آیا کامپیوتر یا دستگاه موبایل به اینترنت متصل است؟
- از صحت عملکرد مودم خود اطمینان دارید؟
- دستگاه شما و مرورگر آن عملکرد صحیحی دارند؟
- می توانید سایتهای دیگر را با مرورگر خود مشاهده کنید؟
- آیا امکان مشاهده سایت از طریق مرورگر دیگری در همان سیستم وجود دارد؟
- کش مرورگر را پاک کرده اید؟ وجود کش موجب لود سریعتر وبسایت در بازدید مجدد خواهد شد. از این رو مرورگرها اقدام به ذخیرهسازی دادههای سایتها نموده و از آنها در نمایش مجدد سایت استفاده میکنند. ممکن است اطلاعات سایت در زمانی که دچار مشکل بوده، کش شده باشد. لذا حذف کش روش خوبی خواهد بود.
- آیا میتوانید توسط دستگاههای دیگر، سایت را مشاهده کنید؟ اگر سایت در سیستم دسکتاپ دیده نشود، میتوان از گوشی موبایل، لود سایت را بررسی نمود و بالعکس.
- آیا صرفا شما قادر به مشاهده سایت نیستید؟ ابزارهای آنلاین قدرتمندی مانند mihanmonitor.com وجود دارند که امکان بررسی دسترسی به سایت از مکانهای مختلف جغرافیایی را فراهم میسازند.
شروع خطایابی از دسترس خارج شدن وب سایت: مودم اینترنت
اگر تمامی ابزارهای کامپیوتر یا موبایل عملکرد درستی دارند و سایت در دسترس نیست، باید اینترنت خود را بررسی نمایید. آیا چراغ مربوط به اینترنت روشن می باشد؟ رنگ آن تغییر وضعیت نداشته است؟ شرکتهای ارائه دهنده اینترنت یا همان ISPها، همواره در تلاش هستند تا ارتباطات اینترنتی را برقرار نگه دارند اما گاهی مشکلاتی رخ میدهد. این مشکلات میتوانند کوتاه مدت یا بسیار طولانی باشند. اختلالات اینترنتی میتوانند به یک ناحیه، شهر، استان یا حتی کل کشور مرتبط شوند.
درک ساختار ارائه اینترنت، به شما در روند تشخیص خطاها کمک خواهد بود. در ایران، اینترنت بین المللی توسط "شرکت ارتباطات زیرساخت" به شرکتهای Fixed Communication Provider یا FCP و همچنین اپراتورهای موبایل ارائه میشود. البته تلاش هایی در جریان است تا با افزایش Internet exchange point ها یا به اختصار IXP ها در کشور، این انحصار کاهش یابد. اینترنت از طریق FCP ها (همان ISP های موجود) و اپراتورهای موبایل به کاربران و دیتاسنترها ارائه میشود. دیتاسنترها میزبان سرویسهای اینترنتی و وب سایتها هستند.
تصویر(2)
به عنوان مثال اگر اختلالی در شرکت ارتباطات زیرساخت رخ دهد، تمامی بخشهای زیرمجموعه تحت تاثیر قرار خواهند گرفت. در این حالت معمولا اختلال در محدوده جغرافیایی گسترده ای رخ میدهد. البته در برخی مواقع، ISP ها میتوانند قبل از وقوع مشکل، مشترکین خود را از این اختلال آگاه سازند. اگر دلیل از دسترس خارج شدن وب سایت، اختلال در اتصال بین مودم و شرکت ISP باشد، رفع آن نیز بر عهده همان ISP خواهد بود. در صورتی که این اختلال و قطعی اینترنت برای منطقه وسیعی رخ داده باشد، صرفا باید تا پایان تعمیرات و برقرار مجدد ارتباط، صبر نمایید. جهت بررسی دقیقتر میتوان از طریق CMD و دستور ping، وضعیت دسترسی به دامنه را بررسی نمود.
تصویر(3)
در تصویر فوق، پینگ از دامنه example.com دارای 4 نتیجه صحیح میباشد و IP را نمایش میدهد اما پینگ ساب دامنه sub.example.com با مشکل روبرو شده است. در این حالت، IP ساب دامنه هنوز از سوی سیستم قابل تشخیص نخواهد بود. اگر ساب دامنه به تازگی ایجاد شده باشد، باید چند ساعت صبر نموده و سپس مجددا پینگ آن را بررسی نمایید. اگر از CDN استفاده کرده اید و ساب دامنه مستقیما در هاست ایجاد شده است، باید رکورد ساب دامنه را در CDN ایجاد نموده و IP هاست را برای آن تنظیم کنید. جهت آشنایی بیشتر با ping و معنای نتایج آن، میتوانید مقاله "نحوه عملکرد پینگ در سیستم عاملهای مختلف" را مطالعه نمایید.
اگر قطعی سراسری رخ داده باشد، معمولا نمی توان سایتهای معتبر مانند google.com را نیز مشاهده نمود. جهت بررسی، از google.com پینگ تهیه و با نتایج سایت خود، مقایسه نمایید. اگر صرفا دامنه شما فاقد پینگ بوده و این مورد به صورت ناگهانی رخ داده است، امکان بلاک شدن IP شما توسط فایروالهای سرور وجود دارد. در این حالت، پیشنهاد میشود مشکل را از طریق ارسال تیکت پشتیبانی با شرکت هاستینگ خود در میان بگذارید تا رفع انسداد صورت گیرد.
تصویر(4)
وقتی آدرس سایت در مرورگر وارد میشود، ابتدا فایل hosts و سپس DNS هایی که به تازگی در سیستم شما ذخیره شدهاند مورد بررسی قرار میگیرند. اگر اطلاعات DNS و IP آن دامنه موجود باشد، درخواست مستقیما به سرور مربوطه ارسال میشود. می توان جهت اتصال مستقیم دامنه به یک IP، فایل hosts را اصلاح و IP موردنظر را برای آن تنظیم نمود. بدین منظور، در سیستم عامل ویندوز لازم است به مسیر زیر مراجعه شود:
C:\Windows\System32\drivers\etc
فایل hosts را توسط نرم افزار notepad باز کرده و سپس مانند تصویر زیر با قرار دادن IP و دامنه در آن، فایل را ذخیره نمایید:
تصویر(5)
اما این تغییرات میتواند موجب ایجاد خطا شود. به خصوص اگر سرور و IP آن سایت تغییر کند. اگر بنا بر دلایلی IP را مستقیما در فایل hosts تنظیم کردهاید، در این شرایط حتما آن را غیرفعال نمایید. جهت مشاهده لیستی از نتایج DNS موجود در سیستم عامل ویندوز، میتوان دستور زیر را در CMD اجرا کرد:
ipconfig /displaydns
نتیجه آن شبیه به تصویر زیر خواهد بود:
تصویر(6)
اگر IP نمایش داده شده برای example.com اشتباه بود، جهت پاکسازی این لیست میتوان دستور زیر را اجرا نمود:
ipconfig /flushdns
مرحله بعدی، بررسی DNS سروری میباشد که سیستم شما از طریق آن به اطلاعات DNS و IP سرور میزبان دامنه، دست یافته است. جهت بررسی این موضوع میتوان عبارت nslookup را در CMD اجرا کرد یا طبق آموزش "پاک کردن کش شدن دی ان اس" عمل نمود. دستور nslookup به صورت زیر قابل اجرا است:
nslookup example.com
حال باید نتایج به دست آمده از DNS پیش فرض سیستم را با سایر DNS سرورها مقایسه نمود. برای مثال، میتوان به DNS سرورهای زیر اشاره کرد:
- DNS سرورهای گوگل: 8.8.8.8 و 8.8.4.4
- DNS سرور کلودفلر: 1.1.1.1
- DNS سرور یاندکس: 77.88.8.8
نحوه انجام این تست نیز به صورت زیر است:
nslookup example.com 8.8.8.8
به جای آدرس 8.8.8.8 می توان از DNS سرورهای دیگری نیز استفاده کرد.
تصویر(7)
اگر مشکل از سمت DNS سرور بود، میتوان آن را با سایر DNS سرورهای رایگان موجود در اینترنت، جایگزین نمود. در صورتی که مشکل پا برجا بود، باید وضعیت پورتهای ارتباطی را بررسی کرد. در زمان لود سایت تحت پروتکل http، به صورت پیشفرض از پورت 80 و در زمان لود سایت تحت پروتکل https از پورت 443 استفاده میشود. جهت بررسی باز بودن این پورتها در سیستم عامل ویندوز، میتوان از دستور telnet در CMD استفاده کرد. جهت اجرای این دستور، ابتدا عبارت telnet و سپس با یک فاصله، نام دامنه و پورت را وارد نمایید و آن را اجرا کنید.
مانند مثال زیر:
telnet example.com 443
تصویر(8)
در تصویر فوق امکان برقراری ارتباط با پورت 443 وجود ندارد. اگر telnet فعال نبود، ابتدا وارد Control panel ویندوز شده و سپس گزینه turn windows features on or off را از بخش programs and feature انتخاب کنید. در پنجره باز شده telnet client را فعال نمایید. دستور بعدی که میتواند در تشخیص محل وقوع خطا بسیار کارآمد باشد، tracert است. این دستور میتواند مسیر طی شده از سیستم مورد نظر تا سرور میزبان دامنه را نمایان سازد:
tracert -d example.com
عبارت d- موجب می گردد تا به جای hostname مقدار IP هر کدام از hop ها نمایش داده شود.
تصویر(9)
از طریق نتایج tracert میتوان میزان تاخیر و محل وقوع آن را مشاهده نمود. در برخی موارد، نتیجه "Request timed out" نمایش داده می شود. اگر در نتایج بعدی یا نهایتا در انتهای مسیر، IP مربوط به سرور میزبان مشاهده گردد، یعنی مشکل وجود ندارد. این مورد معمولا زمانی رخ میدهد که IP خصوصی بوده یا ICMP (پروتکل کنترل دستورات اینترنت) آن دستگاه مسدود باشد. اگر پس از " Request timed out" هیچ IP دیگری تا انتهای مسیر مشاهده نشود، به معنای وجود یک مشکل در مسیر است.
همانند تصویر زیر:
تصویر(10)
اگر مشکلی در پورت و تست tracert وجود نداشت و صرفا سایت در مرورگر لود نشد، میتوان توسط دستور curl در CMD، دسترسی به سایت را بدون مرورگر بررسی کرد. این دستور تنظیمات متعددی دارد که میتوان قبل از نام دامنه آنها را درج نمود تا نتایج دلخواه را نمایش دهد. برای نمونه، کد زیر همزمان با بررسی ریدایرکت ها، کد وضعیت HTTP دامنه را نیز مشخص می نماید:
curl -LIS example.com
البته اطلاعات ارزشمند دیگری نیز بر اساس خطاهای احتمالی، نمایش داده میشود. در تست انجام شده، مطابق تصویر زیر، دامنه به https ریدایرکت شده و سپس عدم وجود SSL فعال، مانع از فراخوانی اطلاعات بیشتر شده است:
تصویر(11)
بررسیهای ذکر شده جهت یافتن محل وقوع و رفع مشکل ارتباطی است اما اگر مشکل از یک ISP باشد، باید تا رفع مشکل ISP صبوری نمود.
داشتن یک ISP ثانویه
اگر اختلال در سطح ISP رخ دهد، داشتن ISP ثانویه میتواند نجات بخش باشد:
- اگر اینترنت کابلی قطع شده است، میتوان اینترنت ISP موبایل را توسط hotspot یا usb با سایر دستگاهها به اشتراک گذاشته و لود سایت را بررسی کرد.
- شاید مشکل اینترنت، محدود به محل حضور شما باشد. میتوانید از دوستان خود در شهرهای دیگر بخواهید تا دسترسی به سایت را بررسی کنند.
- برای کسب و کاری که مبتنی بر اینترنت است، تهیه اینترنت از یک ISP ثانویه باید در اولویت باشد. بدین ترتیب میتواند در صورتی که سرویسدهنده پیش فرض دچار قطعی شود، سریعا اینترنت خود را به ISP پشتیبان تغییر دهد.
تصویر(12)
اما ممکن است مشکل از خود سایت یا دامنه آن باشد.
ثبت کننده دامنه و DNS ها
وجود مشکل در دامنه یا تنظیمات DNS ها، میتواند دلیل از دسترس خارج شدن وب سایت باشد. رکوردهای Domain Name Server یا DNS، امکان ترجمه آدرس URL به آدرس IP سرور میزبان را فراهم میسازند. اگر مشکلی مرتبط با ثبت کننده دامنه یا رکوردهای DNS رخ دهد، سایت از دسترس خارج میشود.
تصویر(13)
جهت بررسی وضعیت دامنههای ir، میتوان وارد پنل کاربری وب سایت nic.ir شد و جزئیات مربوط به دامنه را بررسی نمود. جهت بررسی وضعیت دامنههای بین المللی نیز میتوان از مراجعی مانند lookup.icann.org استفاده کرد. اگر در وضعیت دامنههای بینالمللی مواردی مانند clienthold و serverHold مشاهده شد، لازم است تا با پنل دامنه مکاتبه و مراتب رفع انسداد دامنه پیگیری شود.
اگر مشکلی در whois دامنه وجود نداشت باید وضعیت DNS ها بررسی گردد. سایتهای زیر از بهترین مراجع بررسی وضعیت DNS های تنظیم شده روی دامنه هستند. همچنین این ابزارها امکان بررسی رکوردهای موجود در هاست و سرور میزبان را نیز فراهم میسازند:
- ns-lookup.io
- intodns.com
وجود خطا در اطلاعات سایتهای مذکور، میتواند نشانه ای از مشکلات احتمالی هاست یا سرور باشد که منجر به از دسترس خارج شدن وب سایت می شود.
شرکت میزبان وب سایت
هر وب سایت در یک سرور میزبانی میشود. اگر سرور به هر دلیلی دچار اختلال گردد، منجر به از دسترس خارج شدن وب سایت های میزبانی شده در آن می شود. برخی موارد ممکن است صرفا کمبود منابع در سرور رخ دهد یا اختلالی برای نرم افزارهای نصب شده در آن به وجود آید. از شایع ترین مشکلات، می توان به توقف نرم افزار دیتابیس و لود بالای CPU اشاره کرد. در این حالت، سایت به صورت کامل از دسترس خارج نمی شود اما بخش های مختلف آن دچار اختلال میشوند.
- باید شرکت میزبان سایت خود را بشناسید و راه ارسال درخواست پشتیبانی به آنها را بدانید.
- روی یک شرکت هاستینگ با کیفیت و دارای پشتیبانی قدرتمند، سرمایه گذاری کنید. میهن وب هاست از بهترین برندها و با کیفیت ترین قطعات برای راه اندازی سرورها استفاده میکند. همچنین وجود تیم مانیتورینگ و پشتیبانی قدرتمند که 24 ساعته و 7 روز هفته از طریق تیکت و تلفن پاسخگو هستند، موجب آسودگی خیال شما خواهد شد.
زمانی که خود وبسایت دچار اختلال شود:
اگر مراحل فوق را طی نموده اید و اختلالی در آنها دیده نشده است، مشکل میتواند از خود وب سایت باشد.
هنگام اجرای بروزرسانیها، همواره احتمال بروز مشکل وجود دارد. ممکن است عملکرد سایت مختل شود یا به صورت کامل از دسترس خارج گردد.
- قبل از انجام بروزرسانی، حتما اقدام به تهیه نسخه پشتیبان نمایید. در صورت وجود نسخه پشتیبان، از دسترس خارج شدن وب سایت باعث نگرانی نخواهد شد و سریعا میتوان آن را به حالت قبل بازگرداند.
- بعد از انجام بروزرسانی، سایت خود را به دقت بررسی کرده و از عدم وجود مشکل جدید، اطمینان حاصل نمایید.
- نحوه بازگردانی بکاپ را بیاموزید. در میهن وب هاست، برای سرویسهای cPanel میتوانید تیکت پشتیبانی ارسال نمایید. در DirectAdmin نیز میتوانید با استفاده از آموزش "بازگردانی بک آپ در دایرکت ادمین"، بکاپ را بازگردانی کنید.
اگر قصد اعمال تغییرات در محتوا و فایلهای CSS، JavaScript و php را دارید، حتما از نرم افزار جانبی دیگری مانند Visual Studio Code کمک بگیرید. اگر از ویرایشگر پیش فرض قالبهای وردپرس برای تغییر کدها استفاده شود، در صورت بروز مشکل، ممکن است دیگر امکان ورود به پنل مدیریت و اصلاح کد اشتباه را نداشته باشید.
پر شدن فضای هاست نیز به صورت مستقیم در لود صحیح سایت تاثیر دارد. تنظیم کرون تهیه بکاپ و ذخیره آن در همان هاست، میتواند به سرعت فضا را اشغال کرده و در روند کاری وبسایت اختلال ایجاد نماید. جهت بررسی فضای اشغال شده، میتوانید از آموزش "کجای هاست سی پنلی من فضا را اشغال کرده است" استفاده نمایید.
از دلایل دیگر از دسترس خارج شدن وب سایت، هک و آلوده شدن آن به ویروس می باشد. تشخیص این مورد گاها آسان است. مانند زمانی که ریدایرکتهای ناخواسته رخ میدهد. در مواقعی نیز تشخیص هک شدن سایت بسیار دشوار خواهد بود. مانند زمانی که سایت با کندی و خطاهای مقطعی روبرو میگردد. برای وردپرس افزونههای امنیتی بسیار زیادی وجود دارد که میتوانند جهت تشخیص و رفع آلودگی ویروسی و جلوگیری از نفوذ به سایت استفاده شوند. لیستی از بهترین افزونههای امنیتی وردپرس را میتوانید در مقاله "معرفی بهترین افزونههای امنیتی وردپرس" مشاهده نمایید.
جمع بندی
در دسترس بودن سایت، نیاز به تلاشی بی وقفه، صرف هزینه و کار فنی بسیار زیادی دارد. وقتی سایتی از دسترس خارج میشود در واقع یک کسب و کار دچار مشکل شده است. هنگام بروز مشکل، یافتن محل وقوع آن، رفع خطا و در دسترس قرار گرفتن، از اولویتهای هر کسب و کاری خواهد بود. راهکارهای ارائه شده، میتوانند تا حد زیادی در تشخیص به موقع و رفع مشکل از دسترس خارج شدن وب سایت، کارساز باشند. به یاد داشته باشید که همواره از کسب و کار آنلاین خود بکاپ تهیه نموده و صحت بکاپگیری را نیز مورد بازبینی قرار دهید.