خطای bash: php: command not found

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

/opt/lampp

 

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

sudo ln -s /opt/lampp/bin/php /usr/bin/php

 

موردی که بعد این بهتر بهش توجه داشته باشین اینه که احتمالا بخاط تست و خطا یا… فایل باینری 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 استفاده کنین.

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

cd ~
nano .profile

//متن زیر رو به انتهای فایل اضافه کنین
PATH="/opt/lampp/bin:$PATH"

 

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

پیروز باشید 🙂

نصب lampp یا xampp در اوبونتو ۱۸

lampp معادل کلمات linux apache mysql php perl هست. و معمولا اینها همیشه در کنار هم هستند و کار میکنن. اما زمپ بسته ای هست که اینهارو یکجا داره و یکجا نصب میکنیم. یعنی نیازی نیست بصورت جداگانه هر کدوم از اونها رو نصب کنین و با یکدیگر کانفیگ کنیم. ابتدا از https://www.apachefriends.org/download.html زمپ با نخسه ای که میخواین رو دانلود کنین. فرضا در پوشه Download ذخیره کردین. (این نوشته در دوتاریخ بروزرسانی شده، کد زیر متناسب با تاریخ اوله و شما اونو با برنامه خودتون وقف بدین – کد تو عکس ها هم برای تاریخ و نسخه جدیدتره). اگر فایل دانلودیتون قابلیت  اجرایی نداشته باشه با دستور زیر قابلیت اجرایی رو به اون اضافه کنین:

cd ~/Downloads
chmod +x xampp-linux-x64-7.2.10-0-installer.run

حالا فایل رو اجرا کنین. برای این کار نیازه کاربر root باشین:

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

مرحله اول نصب زمپ

مرحله دوم نصب زمپ

مرحله سوم نصب زمپ

مرحله چهارم نصب زمپ

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

مرحله پنجم

مرحله ششم نصب زمپ

 نصب زمپ

نصب با موفقیت به پایان رسید. برای اجرای زمپ Finish رو بزنین (اون تیکی هم که تصویر میبینین براتون زمپ رو اجرا میکنه)

استارت زدن زمپ آپاچی و mysql

حالا سرویس هایی که میخواین رو استارت بزنین و شروع به کار کنین.

اگر در این مرحله Apache استارت نخورد و همچنان قرمز موند دلیلش اینه قبلا پورت ۸۰ اشغال شده و اگر از اوبونتو ۱۸ استفاده میکنین احتمالا بخاطر اینه که قبلا apache نصب بوده. شما دستور زیر رو تایپ کنین تا آپاچی حذف بشه:

sudo apt remove apache2

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

/opt/lampp

اگر نیاز به کنترل پنل زمپ داشتین با ترمینال به همین مسیر بیاین و با کاربر روت sudo ./manager-linux-x64.run رو اجرا کنین.

حتما بعد نصب کامل با ترمینال به مسیر /opt/lampp برین و دستور زیر رو بزنین که سطح دستری داخل htdocs در اختیار کاربر معمولی قرار بگیره.

hamidreza@hamidreza-pc:/opt/lampp$ sudo chown -R hamidreza:hamidreza htdocs

اگر نیاز به php بصورت global دارین از اینجا کمک بگیرید

همین! و تمام.

نصب کومپوزر Composer و برطرف کردن خطای php not found یا همون نصب php globaly

نصب کومپوزر در اوبونتو

برای نصب composer کافیه دستور زیر رو در ترمینال وارد کنید:

sudo curl -s https://getcomposer.org/installer | /opt/lampp/bin/php
mv composer.phar /usr/bin/composer

نصب کومپوزر در اوبونتو

پیش نیاز: نصب Xampp زمپ و برطرف کردن خطای PHP Not Found یا همون PHP Globaly یا php-cli دسترسی به php از command line

چطور هنگام بالا آمدن اوبونتو xampp خودکار اجرا شود؟

چطور هنگام بالا آمدن اوبونتو lampp خودکار اجرا شود؟ یا چطور همگام بالا آمدن سیستم لمپ بصورت خودکار اجرا شود؟

برای اینکه هنگام استارت آپ سیستم lampp خودکار start بشه کافیه ترمینال رو باز کنین و دستورات زیر رو تایپ کنین

sudo crontab -e

اگه در این مرحله نوع ویرایشگر رو پرسید همون گزینه ۱ رو انتخاب کنین که ساده ترینشه.

اجرای خودکار زمپ در اوبونتو

در انتهای فایل خط زیر رو اضافه کنین

@reboot /opt/lampp/lampp start

اجرای خودکار زمپ در اوبونتو ویرایش در crontab

Ctrl + X  بزنین  Y و بعد اینتر و تمام…

روز خوش 😉

دور زدن تحریم گیت لب با git proxy

سلام

امروز میخوام راه دور زدن تحریم هایی که به گیت مربوط میشن رو آموزش بدم. وقتی با putty به ssh سرورتون تونل میزنین (از socks استفاده میکنید) برای این کار خیلی ساده به cmd برین و دستورات زیر رو تایپ کنین:

git config --global http.proxy socks5://127.0.0.1:1234
git config --global https.proxy socks5://127.0.0.1:1234

 

بجای ۱۲۳۴ پورتی که برای تونل تعریف کردید استقاده کنین. برای پاک کردن تنظیمات پراکسی هم از دستورات زیر استفاده کنین

git config --global --unset http.proxy
git config --global --unset https.proxy

 

موفق باشید