خطای bash: php: command not found

بعد نصب زمپ و احتمالا نصب کومپوزر هنگامی که دستور php رو در کمند لاین تایپ میکنین حتما با خطای bash: php: command not found روبرو میشین. دلیلش هم اینه php  در زیر شاخه زمپ نصب شده و برای استفاده global باید اونو در فولدر باینری سیستم لینک کنین. چطوری؟ لمپ بصورت پیشفرض در آدرس زیر نصب میشه

 

و تمامی متعلقاتشم در همین پوشه هست. کافیه دستور زیر رو تایپ کنیم تا لینک میانبر ایجاد بشه

 

موردی که بعد این بهتر بهش توجه داشته باشین اینه که احتمالا بخاط تست و خطا یا… فایل باینری php  در مسیر های دیگه ای هم نصب شده. برای اینکه ببینیم php که توسط xampp نصب شده در کدوم مسیره به آدرس http://localhost/dashboard/phpinfo.php برین و «Loaded Configuration File » مسیر فایل php.ini رو نشون میده که تو سیستم من /opt/lampp/etc/php.ini هست و  فایل باینریه php در مسی /opt/lampp/bin/php هست (چون متن rtl بود / جلوی php اوند)

همین موضوع که از یک فایل باینتری دیگه ایتفاده کرده بودم باعث شد هنگام اجرای دستور php artisan  با خطای «PHP Warning: PHP Startup: Unable to load dynamic library » مواجه بشم که به اشتباه رفتم فایل php.ini همون باینتری رو ویرایش کردم و سیمیکالون جلوی extension=php_mbstring.dll رو برداشتم و این اشتباه دوم بود چرا که فایل های dll مختص ویندوز هست و نه لینوکس. در لینوکس شما باید متعلقات php  رو بصورت sudo apt-get install php-mbstring نصب کنین و برای غیر فعال کردنش از دستور sudo phpdismod mbstring و فعال کردن دوباره دستور sudo phpenmod mbstring استفاده کنین.

بروز رسانی: امان از این حافظه! فراموش کردم قبلا این کارو انجام داده بودم و از اونجایی که دوباره اوبونتو نصبیدم مجبور شدم دوباره این کارو انجام بدم و یادم نبود… دنبال راه حل گشتم و راه دیگه ای پیدا کردم. راه حل دوم:

 

بروز رسانی: روش اول global هست و راحتتر در همه یوزر ها خصوصا  root میتونید باهاش کار کنید.

پیروز باشید 🙂

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

یازده − 9 =