رفع خطای posix_getpwuid
Fix posix_getpwuid error
در این پست آموزشی قصد داریم نحوه ی برطرف کردن یکی از خطاهای کشنده با نام posix_getpwuid را آموزش دهیم. اگر از استفاده کنندگان سیستم مدیریت محتوای وردپرس هستید، به شما کاربران گرامی پیشنهاد می کنیم تا پایان این نوشته همراه ما باشید.
ابتدا به بررسی مفهوم خطای کشنده می پردازیم و سپس نحوه ی رفع خطای posix_getpwuid را بیان می کنیم .
Fatal Error یا خطای کشنده خطایی است که باعث می شود بدون هیچ هشدار و صرفه جویی در حالت برنامه، برنامه خاتمه یابد. بروز یک خطای مهلک، برنامه فعلی در حال اجرا را لغو می کند و ممکن است باعث شود کاربر هرگونه تغییر ذخیره نشده در برنامه را از دست بدهد. تعیین دلایل دقیق خطاهای کشنده بسیار دشوار است.
وقتی برنامه ای می خواهد به داده یا کد نامعتبر دسترسی پیدا کند، اقدام غیرقانونی انجام شود یا شرط نامحدود برآورده شود، خطای مهلک رخ می دهد. برنامه خاموش می شود و کاربر را به سیستم عامل بازمی گرداند.
سیستم عامل گزارش اطلاعات مربوط به خطا را برای کاربر نگه می دارد تا جزئیات را مشاهده کرده و علل احتمالی Fatal Error را تعیین کند.
شرایطی که به دلیل نقص سخت افزار، اشکالات برنامه، خطاهای خواندن یا سایر ناهنجاری ها، پردازش را متوقف می کند، باعث ایجاد Fatal Error می شود. در صورت بروز خطای مهلک، به طور کلی نمی توانید آن را بازیابی کنید، زیرا سیستم عامل با شرایطی روبرو شده است که نمی تواند آن را برطرف کند.
به طور معمول، برنامه های غیر استاندارد و دارای باگ، باعث ایجاد خطاهای مهلک می شوند و کامپیوتر قفل می شود. در بیشتر موارد، تمام داده هایی که تغییر داده اید و هنوز در دیسک ذخیره نشده اند از بین می روند.
خطای posix_getpwuid چیست ؟
یکی از خطاهایی که به دلیل غیرفعال بودن فانکشن در سرور، در سایت نمایش داده می شود خطای posix_getpwuid است. در واقع هنگام نصب یا حذف افزونه ها یا قالب ها، یا حتی بروزرسانی موارد موجود در سایت وردپرسی خود،ممکن است با این پیام روبه رو شوید:
1 |
Message: Call to undefined function Okta\posix_getpwuid() |
لازم به ذکر است بگوییم رسما این خطا سایت مپ را از کار انداخته و سایت را در موتورهای جستجوگر ازبین می برد.
برای رفع این خطا سه حالت وجود دارد:
1- از طریق کد نویسی در فایل فانکشن
کد زیر را را در فایل فانکشن قالب قرار دهید
1 |
$disabled_functions = ini_get('disable_functions'); echo "disable_functions = $disabled_functions\n\n"; $disabled_functions = explode(",", $disabled_functions); foreach( $disabled_functions as $function ) { $function = trim($function); printf( "function_exists('%s') => %s\n", $function, ( function_exists($function) ? 'true' : 'false' ) ); } |
نوشتن قطعه کد گفته شده در بالا، تنها برای حذف خطا است و در عمل مشکلی را رفع نمی کند. (اصلا توصیه نمی شود )
2- تماس با میزبان هاست
برخی از توابع PHP میتوانند برای اهداف مخرب استفاده بشوند. بسیاری از شرکت های ارائه دهنده ی هاست، برای افزایش امنیت به طور پیش فرض این توابع را غیرفعال می کنند.
اگر قصد دارید مشکل سایت شما از ریشه حل شود، کافیست به مدیر سرور خود بگوید در فایل php.ini فانکشن posix_getpwuid را در قسمت disable_functions حذف نماید.
3- با وارد شدن به WHM
WHM کوتاه شده ی عبارت Web Host Manager و به معنای مدیریت میزبانی وب است. WHM یک برنامه قدرتمند است که اجازه دسترسی مدیران ارشد و میانی به هاستینگ و مدیریت آن را صادر می کند.
بریا رفع خطای …باید مراحل زیر را طی کنید:
- ورود به WHM
- به دایرکتوریHome->Software->MultiPHP INI Editor مراجعه کنید.
- انتخاب کردن تب Editor Mode
- از لیست drop-down گزینه PHP version را انتخاب کنید.
- در پنجره configuration باید disable_functions را جستجو کنید.
فاکشن posix_getpwuid را اضافه کرده و تغییرات را ذخیره کنید.
توجه: برای آشنایی شما کابران عزیز سایت پنگاش، فهرستی از توابع مخرب PHP که می توانند مشکل ساز واقع شوند را معرفی می کنیم. در صورت مشاهده ی خطا برای هر کدام از این توابع، کافیست یکی از مراحل گفته شده در بالا را امتحان کنید .
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 |
apache_child_terminate apache_get_modules apache_note apache_setenv define_syslog_variables disk_free_space disk_total_space diskfreespace dl escapeshellarg escapeshellcmd exec extract get_cfg_var get_current_user getcwd getenv getlastmo getmygid getmyinode getmypid getmyuid ini_restore ini_set passthru pcntl_alarm pcntl_exec pcntl_fork pcntl_get_last_error pcntl_getpriority pcntl_setpriority pcntl_signal pcntl_signal_dispatch pcntl_sigprocmask pcntl_sigtimedwait pcntl_sigwaitinfo pcntl_strerrorp pcntl_wait pcntl_waitpid pcntl_wexitstatus pcntl_wifexited pcntl_wifsignaled pcntl_wifstopped pcntl_wstopsig pcntl_wtermsig php_uname phpinfo popen posix_getlogin posix_getpwuid posix_kill posix_mkfifo posix_setpgid posix_setsid posix_setuid posix_ttyname posix_uname posixc proc_close proc_get_status proc_nice proc_open proc_terminate ps_aux putenv readlink runkit_function_rename shell_exec show_source symlink syslog system |
رفع خطای posix_getpwuid
شما کاربران عزیز می توانید برای استفاده ی بیش تر از خدمات سایت پنگاش هم اکنون در ناحیه کاربری ثبت نام کنید تا علاوه بر استفاده از پست های آموزشی رایگان بتوانید به محصولات فروشگاه و تخفیف های فوق العاده پنگاش دسترسی داشته باشید.
- مطلب بعدی : اقدامات ضروری جهت افزایش امنیت وردپرس »
- مطلب قبلی : « رفع خطای Deceptive site ahead
برچسب ها
توجه

اگر با این مشکل آشنا هستید خودتان انجام دهید ولی اگر نمی دانید که این کار را چطور انجام دهید می توانید هم اکنون در ناحیه کاربری ثبت نام کرده و اطلاعات سایت را تیکت کنید تا با اندک هزینه ای کار شما را انجام دهیم . اگر خواستید می توانید برای مشاوره با شماره های ۰۹۱۷۹۰۵۹۳۵۰ و یا ۰۹۳۹۸۶۹۵۲۳۸ با ما در ارتباط باشید.