پیام Internal Server Error فایل های CGI در دایرکت ادمین

علت مشاهده پیام Internal Server Error فایل های CGI در دایرکت ادمین

اگر پیام Internal Server Error فایل های CGI در دایرکت ادمین را در زمان اجرا شدن اسکریپت های CGI بوسیله آپاچی در کنترل پنل هاست مشاهده کردید میبایست موارد زیر را بررسی کنید. در مرحله اول باید Log قسمت suexec که در مسیر زیر میباشد را مورد بررسی قرار دهید :

 

vi /var/log/httpd/suexec_log

تمامی خطاهای مرتبط با Permission ها و یا همان سطوح دسترسی ها در این فایل ذخیره شده و Log میشوند. فایل میبایست در پوشه cgi-bin و تحت ماکلیت User و گروه مادر باشد و اگر به این صورت نبود، به درستی اجرا نمیشود. سطوح دسترسی و CHMOD مرتبط پوشه ها باید روی 755 باشد و اگر به این صورت نبود اسکریپت CGI برای اجرا شدن با خطا رویرو میشود. تنها پوشه public_html میباشد که امکان کار با سطح دسترسی 75- را بدون مشکل میدهد.

روش ساده برای دیدن خطاهای اسرکیپت CGI اجرا شدن آن از محیط SSH سرور مجازی به صورت زیر میباشد :

cd /home/username/domains/domain.com/public_html/cgi-bin

./script.cgi

برای برطرف کردن این خطا سطح دسترسی ها و Permission ها در هاست دایرکت ادمین کار سختی نیست. در حقیقت کافی میباشد که از اسرکیپت تنظیم دوباره مالکیت ها و سطح دسترسی ها استفاده کنید. برای Set کردن دوباره سطح دسترسی ها به صورت زیر آن را انجام دهید :

cd /usr/local/directadmin/scripts

./set_permissions.sh all

برای Set کردن دوباره مالکیت ها و Ownership ها در هاست لینوکس بر کنترل پنل نیز به صورت زیر عمل کنید :

 

 cd /home

for i in ls; do { chown -R $i:$i $i; }; done;

کم پیش میاید که مالکیت ها در هاست لینوکس دایرکت ادمین بهم ریخنه شود. پس اول سطح دسترسی ها را دوباره مقدار دهی کرده و تنها اگر به مالکیت ها احتیاج داشتید آن را ها از اول مشخص کنید.