ارور ۵۰۰ Internal Server Error چیست
برخی اوقات سوالی پش می آید که ارور ۵۰۰ internal server error چیست ؟
یکی دیگر از پیام های خطایی که هنگام مرور وب ممکن است با آن مواجه شویم ارور ۵۰۰ Internal Server Error می باشد.
ارور ۵۰۰ internal server error چیست می تواند دلایل گسترده ای داشته باشد
این مقاله در راستای ادامه پیام های خطا می باشد :
آموزش رفع خطای ۴۰۰ در مرورگر
پیغام خطای ۴۰۱ چیست
پیغام خطای ۴۰۳ forbidden
ارور ۴۰۴ چیست
ارور ۴۰۸ Request Timeout چیست
در ادامه ابتدا به بیان خطای ۵۰۰ internal server error چیست می پردازیم.
سپس به بیان انواع مشکل در رابطه با خطای ۵۰۰ و نحوه رفع آنها اشاره داریم.
در آخر نیز به خلاصه و چکیده ای از کلیات مقاله می پردازیم.
خطای ۵۰۰ Internal Server Error چیست
همان طور که اشاره شد، مواجه شدن با خطای ۵۰۰ می تواند دلایل زیادی داشته باشد.
از رایج ترین عوامل بروز این خطا می توان به موارد زیر اشاره کرد:
۱- ایجاد سزح نادرست دسترسی و Permission بر روی دایرکتوی ها و فایل ها
۲- کدهای نادرست در فایل php.ini یا htaccess.
۳- ownership ها و مالکیت های نادرست در هاست
۴- درخواست های نامعتبر از طرف اسکریپت سایت مورد نظر
و…
بسیاری از کاربران با توجه به نام پیام خطا، فکر می کنند که مشکل از فقط می تواند از سرور باشد.
ولی باید به این نکته توجه داشت که با کانفیگ و پیکربندی مجدد سایت، این مشکل معمولا قابل حل می باشد.
نکته قبل توجه این است که در فایل Error Logs موجود در File Manager هاست ، هنگام مواجه شدن با خطای ۵۰۰ ، اطلاعاتی درمورد عوامل این خطا موجود می باشد.
این اطلاعات شامل تاریخ و جزئیات کامل می باشد.
عوامل بروز خطای Internal Server Error 500
در ادامه سعی بر شناساندن عواملی پیرامون خطای ۵۰۰ Internal Server Error داریم:
- Bad Permission, Writable by Group
خطایی است که توسط سطح دسترسی و Permission بیش از حد مجاز پوشه ها رخ می دهد.
کد این خطا در فایل Error Logs به صورت زیر می باشد:
[Sun Jun 05 12:03:22 2012] [error] [client 66.249.72.82] SoftException in Application.cpp:601: Directory “/home/exampleuser/public_html” is writeable by group
این خط کد بیانگر این است که سطح دسترسی پوشه ها بیش از حد زیاد است.
و مقدار آن باید از ۷۷۷ به ۷۵۵ تغییر کند تا قابل قبول شود.
همین طور مقادیر مجاز برای :
پوشه ها و دایرکتوری ها ۷۵۵
اسکریپت های اجرایی شامل فایل cgi-bin مقدار ۷۵۵
فایل های چند رسانه ای و متنی (مانند HTML) دارای سطح دسترسی ۶۴۴ می باشد.
لازم به ذکر است که سطوح دسترسی را می توان از قسمت File Manager واقع در بخش Files در Cpanel ،
یا سرویس FTP
و یا از طریق chmod در SSH/Bash تغییر داد.
Bad .htaccess, Invalid code, command, or syntax
برخی اوقات نیز کاربران ممکت است تغییرانی را در فایل htaccess. انجام داده و خطوطی را اضافه کنند که به آن اشرافی ندارند.
این کار آنها نیز سبب رخ دادن خطای ۵۰۰ می شود.
در این حالت بهتر است که ابتدای خطوط وارده، علامت # را قرار دهیم تا توضیحات Commentی تبدیل شوند.
مانند مثال زیر:
قطعه کدی از فایل اصلی:
|
DirectoryIndex default.html
AddType application/x–httpd–php5 php
|
قطعه کد ویرایش شده از فایل اصلی به شیوه کامنتی ( Comment ) :
|
DirectoryIndex default.html
<strong>#AddType application/x-httpd-php5 php
|
به دلیل مشکل دار بودن خطوطی که با php_flag آغاز می شوند، بهتر است آنها را نیز کامنتی کنیم :
Other common .htaccess errors
رفع خطای ۵۰۰ Internal Server Error
علاوه بر موارد مذکور، ارور ۵۰۰ می تواند شامل مشکلات زیر نیز باشد :
۱- مشکل FollowSymlinks
۲- مشکل Syntax Not Closed
۳- مشکل ForceType
۴- مشکل php_value
حال در ادامه به شرح و بیان به منظور رفع هرکدام از مشکلات فوق می پردازی.
حل مشکل ۵۰۰ Internal Server Error
۱- مشکل FollowSymlinks
هنگام مواجهه با این مشکل، خطایی مانند زیر نمایش داده می شود :
[Sun Jun ۰۵ ۱۲:۰۷:۱۰ ۲۰۱۱] [alert] [client ۶۶.۲۴۹.۷۲.۸۲] /home1/examplec/public_html/.htaccess: Option FollowSymlinks not allowed here
|
در این هنگام دو راهکار وجود دارد :
۱- حذف خط مربوطه
۲- جایگزینی دستور SymlinksIfOwnerMatches به جای FollowSymlinks
۲- مشکل Syntax Not Closed
هنگام مواجهه با این مشکل، خطایی مانند زیر نمایش داده می شود :
[Sun Jun 05 12:11:38 2011] [alert] [client 66.249.72.82] /home1/examplec/public_html/.htaccess: /home1/examplec/public_html/.htaccess:3: ExampleRule/Module> was not closed.
در این مورد نیز دو رهکار وجود دارد :
۱- حذف خط مربوطه
۲- قرار دادن درست دستور مانند مثال زیر :
<IfModule>ExampleRule</IfModule>
|
نکته : تعداد کمی از خطاها بر اثر دستورات اشتباه در فایل htaccess. رخ می دهد.
معمولا خود پیام های خطا در عیب یابی خطا راهنمایی قابل توجهی می کنند.
حال وقت آن رسیده که سری به خطاهای رخ دهنده در فایل php.ini اشاره کنیم.
Improperly configured php.ini
|
به طور کلی خطاهایی که معمولا در فایل php.ini رخ می دهند به دو دسته تقسیم می شوند:
۱- ForceType
۲- php_value
حال به تشریح آنها می پردازیم
۱- مشکل ForceType
برای رفع این مشکل بدین صورت عمل می کنیم :
زمانی که از فایل های دارای پسوند یا بدون پسوند که نسبت به پسوندهای رایج متفاوت است استفاده می کنیم،
می توان از ForceType در فایل htaccess. استفاده کرد و روش استفاده از آن را در سرور تعیین نمود.
گفتنی است که استفاده از ForceType برای تمامی فایل های موجود در پوشه htacceess. و سرورهای بدون phpsuexec امکان پذیر است.
مثلا زمانی که فایلی با نام item مانند Nucleus برای استفاده از FancyURL موجود باشد، و قصد تعریف آن را در سرور به عنوان فایل php داریم ، می توانید از کد زیر در فایل .htaccess استفاده کرد :
ForceType application/x–httpd–php
|
البته سرور هایی که دارای phpsuexec می باشند، با دستور فوق خطای Internal Server Error نمایش داده می شود ، که برای حل این مشکل از SetHandler به جای ForceType در فایل .htaccess استفاده می کنیم.
مانند :
SetHandler application/x–httpd–php
|
۲- مشکل php_value
به منظور بازنویسی تنظیمات در php.ini در سرور های بدون phpsuexec می توان از php_value در فایل .htaccess استفاده کرد.
در سرورهای دارای phpsuexec استفاده از دستور فوق سبب ایجاد خطای Internal Server Error می شود.
برای رفع این خطا می توان تمام تنظیمات مربوط به php که در فایل php.ini در پوشه htaccess. می باشد را تغییر دهید.
مثلا اگر بخواهید مقدار short_open_tag را off قرار دهید ، از دستور زیر باید استفاده کرد:
short_open_tag? = off
ولی با اسفاده از فایل php.ini به صورت زیر می شود :
حال که آموختیم که چگونه پیام خطای ۵۰۰ در سایت را رفع کنیم،
در ادامه می خواهیم به بررسی و رفع این پیغام خطا در وردپرس بپردازیم :
ارور ۵۰۰ در وردپرس – رفع مشکل Internal Server Error
همان طور که پیشتر دانستیم، ارور ۵۰۰ زمانی رخ می دهد که وب سرور سایت قادر به پردازش و بارگذاری اطلاعات نباشد.
حال در ادامه می خواهیم به موارد اصلی این خطا حوزه وردپرس اشاره کنیم.
اینکه چطور خطای اصلی را نمایش داده و در ادامه آن به بررسی روش های حل مشکل خطای ۵۰۰ در وردپرس بپردازیم.
نمایش خطای اصلی ارور ۵۰۰ Internal Server Error
به منظور نمایش خطای اصلی به جای خطای ۵۰۰ نیاز به تغییر display_error در وب سرور خود داریم.
این مقدار باید on باشد تا خطای اصلی به حای عدد ۵۰۰ نمایش داده شود.
علاوه بر این کار نیازمند فعال سازی دیباگ و اشکال زایی وردپرس نیز هستیم.
لازم به ذکر است که تغییر مقدار display_error نیازمند اجازه مدیر سرور هستیم. یعنی خود مدیر سرور باید این تنظیمات را انجام دهد.
حال اگر به هر دلیلی نتوانیم این مقدار را به on تغییر دهیم،
روشهای حل ارور ۵۰۰ وردپرس
از روش های تجربی استفاده می کنیم که در زیر به چند مورد از آن اشاره داریم.
بررسی فولدر htaccess.
ابدا وارد C panel شده و در پوشه root سایت، فولدر htaccess. را پیدا کرده و با ویرایشگر باز می کنیم.
ابتدا از تمامی کدها، در جایی یک کپی گرفته و سپس تمامی آنها را حذف می کنیم.
حال به صفحه پیشخوان مدیریت وردپرس رفته و از بخش تنظیمات، پیوندهای یکتا را انتخاب می کنیم.
حال گزینه ذخیره تنظیمات را در این صفحه کلیک می کنیم.
اگر پس از انجام این کار سایت بدون مشکل باز شد، پس مشکل درست شده است.
حال تک تک خط کدهای htaccess. را بر می گرداینم تا ببینیم مشکل از کجا بوده است.
غیر فعال سازی افزونههای فعال وردپرس
در هر محیط CMS ی تعدادی پلاگین و افزونه داریم.
هنگام مواجهه با این خطا لازم است که تک تک افزونه های فعال را غیرفعال کنیم تا ببینیم مشکل از کدوم افزونه بوده است.
لازم به ذکر است که زمانی که این روش را انجام دادیم و خطا از بین رفت،
نمی توان به طور حتم آن افزونه را مقصر دانست چرا که می تواند مشکل از هاست نیز باشد.
زیرا برخی افزونه های فضای هاست زیادی اشغال می کنند.
تغییر قالب به پوسته پیش فرض وردپرس
در قسمت پیشخوان وردپرس، به قسمت نمایش رفته و پوسته ها را انتخاب می کنیم.
قالب های پیش فرض مانند ۲۰۲۰ وردپرس را انتخاب می کنیم.
اگر خطا برطرف شد، پس مشکل از کدنویسی قالب شما است.
افزایش حافظه وردپرس
برخورد با این خطا ممکن است به خاطر کمبود فضای حافظه سایت نیز باشد.
برای این منظور در فایل های وردپرس سراغ فایل wp-config.php رفته و آن را با ویرایشگر باز می کنیم.
دستور زیر را در ابتدای کدها قرار می دهیم:
define('WP_MEMORY_LIMIT', '700M');
این کد میزان فضای مصرفی وردپرس رابه ۷۰۰ مگابایت تغییر داده که می تواند برای رفع خطای ۵۰۰ موثر باشد.
درصورت عدم افزایش حافظه وردپرس با دستور بالا، باید به هاست خود اطلاع دهید که از طریق فایل php.ini بتواند max php memory را افزایش دهد.
مشکل فایل های وردپرس
ممکن است فایل های اصلی وردپرس خراب باشند.
برای این منظور فایل های وردپرس را بروزرسانی نمایید.
تماس با هاست
اگر از تمامی مراحل بالا به نتیجه ای نرسیدید، حتما با هاستینگ خود تماس بگیرید و از آنها تقاضای بررسی و رفع مشکل خود کنید.
ارور ۵۰۰ Internal Server Error چیست – خلاصه
ارور ۵۰۰ Internal Server Error مشخص نمی کند که دقیقا مشکل از کجاست.
و نیاز به رفع برخی ارورهای خانواده ۵XX است تا پیام خطای ۵۰۰ رفع شود.
گاهی ممکن است این پیام خطا به دلیل مشکل عدیده ای چون موارد زیر باشد:
مشکلات سیستم
اینترنت کاربر
کوکی و کش مرورگر
و گاهی نیز به خاطر مسائلی همچون :
مشکلات کدنویسی و پلاگین ها، تنظیمات هاست و سرور سبب شوند که با این پیام برخورد کنیم.
گردآورنده : علی کاتوزیان
مطالب مرتبط :
ارور ۵۰۰ Internal Server Error چیست
خطای ۵۰۰ internal server error | ارور ۵۰۰ در کروم | ارور چیست | رفع ارور ۵۰۰ در گوگل | آموزش رفع ارور ۵۰۰ | ارور ۵۰۰ در سی پنل | خطای ۵۰۰ در کروم | کد ۵۰۰ | ارور ۵۰۰ چیست | error 500 | خطاهای وردپرس | پیغام خطای ۵۰۰ | پیغام خطای ۵۰۰ چیست | how do i fix error 500 | خطای ۵۰۰ در مرورگر | how do i fix error 500 in chrome | چگونه خطای ۵۰۰ را برطرف کنیم | ارور ۵۰۰ | ارور ۵۰۰ در سایت | ارور ۵۰۰ در مرورگر | ارور ۵۰۰ چیست | پیغام خطا ۵۰۰ | پیغام خطای ۵۰۰ |
ارور ۵۰۰ Internal Server Error چیست
برای دسترسی سریع به خدمات شرکت ژیوان، می توانید از لینک های زیر استفاده کنید:
ثبت ديدگاه