خطای ۵۰۳ یکی از خطاهای رایجی است که در سایت ها بروز میکند و گاها خود به خود رفع می شود، اما علت خطای ۵۰۳ در سایت ها چیست؟
امروز با روش رفع خطای ۵۰۳ آشنا خواهیم شد.
اولین و مهمترین قدم بررسی لاگ های وب سایت است، اگر از دایرکت ادمین یا سی پنل استفاده میکنید ابتدا error_log ها را بررسی کنید، ممکن است علت خطا در error_log ها مشخص شود، اگر توانایی و تجربه کافی در لاگ خوانی ندارید از مدیر سرور خود کمک بگیرید.
در گام دوم debug (یا حالت عیب یابی) سایت را فعال کنید، برای این کار از مدیریت برنامه سایت استفاده کنید، با فعال کردن نمایش خطا یا همان debug mode ممکن است علت خطا را مشاهده کنید.
گاها ممکن است مشکل در پلاگین یا قالب سایت باشد، برای بررسی این موضوع کافی هست تمام پلاگین ها را غیرفعال کنید ( ویا پوشه plugin ها را rename کنید) و قالب سایت را به قالب پیش فرض تغییر دهید.
ممکن است مشکل در سرور یا سیستم cache یا فایروال سرور میزبان سایت باشد، بهتر است از پشتیبانی سرور خود بخواهید موضوع را بررسی کند اما بخاطر داشته باشید خطای های ۵۰X ( مانند ۵۰۰، ۵۰۲، ۵۰۳ و …) همیشه به تنظیمات سرور مرتبط نیست. گاهی نیز با ارتقا نسخه php سایت، خطای ۵۰۳ برطرف خواهد شد.
ممکن است مشکل در فایل .htaccess سایت شما باید باید کدهای این فایل را بررسی و از صحت آن اطمینان حاصل کنید. همچنین اگر به سایت شما نفوذ شده باشد احتمال قرار دادن کدهای مخربی که باعث بروز خطای ۵۰۳ وجود دارد بنابرین باید امنیت سایت خود را نیز بررسی کنید.
یکی از دلایل بسیار رایج اما کمتر شناخته شده خطای ۵۰۳، مشکل در سرویس دهنده اینترنت یا ISP شما می باشد، در برخی از مواقع سیستم cache سرویس دهنده های اینترنتی یا ISP ها باعث بروز خطای ۵۰۳ می شوند که این مشکل با تغییر اینترنت یا استفاده از proxy رفع خواهد شد. همچنین ممکن است تغییر DNS های کارت شبکه سیستم کاربری نیز به رفع مشکل کمک کند.
از دیگر دلایل خطای ۵۰۳ مشکل در ارتباط با خارج کشور می باشد، اگر هاست شما در داخل کشور میزبانی می شود و پلاگین یا سرویسی در سایت شما نیاز به ارتباط با خارج کشور داشته باشد و ارتباط با خارج کشور به علت مشکلات زیرساختی کشور دارای اختلال باشد شما با خطای ۵۰۳ مواجه خواهید شد.
یکی از دغدغه های همیشگی کاربران این است که چگونه میشود از اسپم شدن ایمیل های ارسالی از سرور و سایت جلوگیری کرد. بسیار مهم است ایمیل های ارسالی به کاربران به پوشه spam منتقل نشود، اما آیا راهی وجود دارد که جلوگیری از اسپم شدن ایمیل ها را تضمین کند؟
How to prevent cPanel mails to go into spam folder
باید بدانیم که سرویس دهنده های ایمیل مثل Gamil از مجموعه گسترده ای از قوانین و روال ها برای تشخیص ارسال اسپم استفاده میکنند، مانند اعتبار و پیشینه IP، محتوا و ساختار پیام، SMTP سازگار با RFC، بازخورد کاربر ایمیل و … است.
واقعا هیچ راه تضمین کننده ای برای این مشکل وجود ندارد اما روش هایی را با هم بررسی میکنیم که با انجام آنها احتمال اسپم شدن ایمیل های ارسالی به کمترین میزان برسد.
۱- تنظیم PTR Record
برای IP سرور حتما باید یک PTR تعریف کنیم، بهتر است PTR Record با hostname سرور مشابه باشد، برای تنظیم PTR رکورد باید از طریق دیتاسنتر یا مالک IP اقدام نمایید. برای اطمینان از تنظیم بودن PTR بروی IP سرور از سایت زیر کمک بگیرید:
بسیاری از سرویس دهندگان ایمیل PTR رکورد را به عنوان شاخصی از یک سرور پست الکترونیکی تحت تأیید در نظر می گیرند.
۲- تنظیم SPF و DKIM
سرویس دهنده های ایمیل معمولا از مشخصات غیرواقعی در قسمت From ایمیل استفاده میکنند، سرورهای ایمیل با استفاده از سوابق DNS به نام SPF (چارچوب خط مشی فرستنده) و DKIM (دامنه شناسایی شده توسط DomainKeys) با این امر مبارزه می کنند.
برای فعال سازی SPF و DKIM از طریق Cpanel به بخش Email و قسمت Authentication مراجعه کنید. این تنظیمات امنیتی پایه را فعال می کند، اما بسیاری از کاربران نیاز به تنظیمات اضافی مانند افزودن سرور های ایمیل شرکت، ایجاد hard fail و غیره دارند. ما این کار را با استفاده از ویرایشگر پیشرفته DNS انجام می دهیم.
همیشه لیست ارسال پستی باید از SMTP استفاده کند تا authentication باعث اعتبار ارسال شود، هرگز به sendmail یا توابع نامه php / perl اعتماد نکنید.
در سرورهای اشتراکی تمام ایمیلهای سرور شما از یک IP ارسال میشوند، آدرس دامنه وب سایتها متفاوت است ولی تمام ایمیلها از یک آدرس IP ارسال میشوند.
روش های دیگری نیز میتواند این مشکل را کاهش دهد:
فعال سازی SpamAssassin در WHM برای اعمال روش های کنترل اسپم سختگیرانه را بر روی ایمیلهای خروجی cPanel به طور پیش فرض تنها ایمیل های دریافتی را به عنوان هرزنامه اسکن می کند، با فعال کردن SpamAssassin، اگر یک پست حاوی هر گونه احتمال جاسوسی توسط جیمیل، هاتمیل و غیره باشد، پست الکترونیکی ارسال نخواهد شد.
استفاده از WAF : فایروال وب برنامه های در حال اجرا را از آلودگی وب سایت و آپلود بدافزار جلوگیری میکند. بنابراین اسکریپت های هرزنامه هرگز از طریق وب سایت های آسیب پذیر به سرور نمی رسند.
تنظیم رکورد DMARC : یک هشدار اولیه از هرزنامه احتمالی در سرور می دهد و ما را قادر می سازد تا اقدامات اصلاحی قبل از اینکه IP در لیست سیاه قرار گیرد را انجام دهیم.
محتوای ارسالی/فایل html تشکیل دهندهی ایمیل، استفاده از عنوان نامناسب ایمیل و امثال آن نیز تاثیر فراوانی در این موضوع دارند.(همانطور که در قانون CAN-SPAM آمده است ، خلاف قانون است که شخصی را با عنوان موضوع خود گمراه کنید تا وی را وادار به مشاهده پیام کند)
شما از کلمات Spam Trigger اسنفاده میکنید، مانند، حیرت آور(Amazing)- چک یا حواله(Check or money order) – اینجا کلیک کنید(Click here) و …
طبق قانون CAN-SPAM ACT گمراه کردن افراد با قرار دادن اطلاعات غیرواقعی در فیلد های “از” (from)، “به”(to) ، “پاسخ به شما”(reply-to) خلاف است ماننداستفاده از موارد زیر، ایمیل از سمت رئیس جمهور – ارسال ایمیل از سمت دولت یا در پاسخ به کمک به ریشه کن کردن کرونا و ….
لینکها و پیوست هایی که در این ایمیلها وجود دارند توجه کنید، اگر محتوای ایمیل خطرناک تشخیص داده شود ایمیل spam می شود، مانند وجود Phishing در ایمیل یا پیشنهاد درخواست پول، ترساندن یا تهدید کردن کاربر
در صورتی که پس در سرور WHM در سرویس apache با خطای زیر مواجه شدید.
Failed to get apache configuration: Unable to detect Apache version from binary
Failed to build Apache configuration file (/etc/apache2/conf/httpd.conf.work.699ccf6e)
Failed to get apache configuration: Unable to detect Apache version from binary
ابتدا از طریق ssh با دستور زیر نسخه apache سرور را پیدا کنید.
rpm -qa |grep ea-apache
در این مثال نسخه apache 2.4 در نظر گرفته شده است.
خروجی این دستور را کپی کنید، خروجی مقداری مشابه زیر خواهد بود.
ea-apache24-2.4.34-3.3.1.cpanel.x86_64
سپس با توجه به خروجی دستور اول، دستور زیر را اجرا کنید.
در صورتی که مشکل دریافت ایمیل در Cpanel مواجه هستید یا ایمیل های شما با پیغام زیر یرگشت میخورند.
۵۵۰ The mail server could not deliver mail. The account or domain may not exist
ابتدا IP سرور ایمیل را بررسی کنید که در بلک لیست ها نباشد. از سایت زیر کمک بگیرید.
https://mxtoolbox.com/blacklists.aspx
در صورتی که مشکلی در IP سرور وجود نداشت بررسی کنید آیا رکورد mx در DNS سرور و تنظیمات مربوط به دامنه درست تنظیم شده است. اگر DNS سرور شما بروی سرور cPanel خود قرار دارد از قسمت Edit DNS Zone رکورد mx دامنه سایت مورد نظر را بررسی و از وجود و صحیح بودن آن اطمینان حاصل کنید. برای بررسی صحت رکوردهای دامنه از جمله رکورد mx از سایت زیر کمک بگیرید.
http://intodns.com
گاهی ممکن است تنظیمات درست باشد اما مشکل در دریافت ایمیل وجود داشته باشد، به عنوان مثال گاهی تغییر نام دامنه هاست در cPanel ممکن است باعث مشکل در دریافت ایمیل شود. برای رفع مشکل دستورات زیر استفاده کنید.
Unable to read the User data files for username Directadmin
در صورتی که با خطای بالا مواجه شدید اگر در سرور اطلاعات و دیتای حساس و ضروری ندارید دستورات زیر را اجرا کنید.
userdel -r username
اکانت مورد نظر حذف میشود، میتوانید آن را مجددا ایجاد و یا restorte کنید.
اگر اکانت شما دارای اطلاعا حساسی است یا یوزر داری مشکل admin میباشد دستور زیر را اجرا کنید.
cd /usr/local/directadmin/scripts
./fix_da_user.sh username user domain.com
بجای username نام کاربری و بجای نام دامنه اسم دامنه اکانت مورد نظر را وارد کنید ( برای یوزر admin الزامی برای وارد کردن نام دامنه نیست)
اگر با روش بالا مشکل حل نشد دستور زیر را بررسی کنید.
cd /usr/local/directadmin
./directadmin i
اگر دستور بالا در زمان اجرا با خطاهایی مانند Unable to write ip.list file مواجه شد ما باید فایل user.conf یورز مورد نظر را ویرایش و اصلاح کنید.
برای یوزر admin مسیر بصورت زیر خواهد بود.
/usr/local/directadmin/data/users/admin/user.conf
در نهایت directadmin را restart کنید، اگر directadmin شما start نشد log مربوط به directadmin را بررسی کنید.
در صورتی که اکانت (سایت) شما در دایرکت ادمین بدون علت (مانند تمام شدن پهنای باند) مسدود می شود و مسدود شدن اکانت در دایرکت ادمین مکررا رخ میدهد باید اطمینان حاصل نمایید پهنای باند user و یا اکانت reseller یا مالک این user به اتمام نرسیده باشد. در صورتی که suspend شدن اکانت در دایرکت ادمین بدون علت اتفاق می افتد مسیر زیر را بررسی کنید.
وارد اکانت خود شوید (login کنید)
وارد قسمت domain setup شوید.
در صفحه جدید بروی نام دامنه خود کلیک نمایید.
و تیک Same as Main Account برای گزینه Bandwidth را فعال کنید و تغییرات را ذخیره نمایید.