⏳ افزایش قیمت‌ | آخرین فرصت خرید دوره‌های برنامه‌نویسی با قیمت سال قبل با => ۶۵٪ تخفیف

مشاهده دوره‌ها
نیما نجفدری
6 روز پیش توسط نیما نجفدری مطرح شد
1 پاسخ

ارور در اجرای phpstm

Symfony\Component\Process\Exception\RuntimeException

The provided cwd "D:\نیما\یدک میرزا 5 اردیبهشت 1403\laravel\public" does not exist.

at vendor\symfony\process\Process.php:344
340▕ }
341▕ }
342▕
343▕ if (!is_dir($this->cwd)) {
➜ 344▕ throw new RuntimeException(sprintf('The provided cwd "%s" does not exist.', $this->cwd));
345▕ }
346▕
347▕ $process = @proc_open($commandline, $descriptors, $this->processPipes->pipes, $this->cwd, $envPairs, $this->options);
348▕

1 vendor\laravel\framework\src\Illuminate\Foundation\Console\ServeCommand.php:154
Symfony\Component\Process\Process::start(Object(Closure))

2 vendor\laravel\framework\src\Illuminate\Foundation\Console\ServeCommand.php:93
Illuminate\Foundation\Console\ServeCommand::startProcess()


ثبت پرسش جدید
دانیال جناب
تخصص : دانشجو
@yet4no 3 روز پیش مطرح شد
0

این اروری که گرفتی دقیــقاً یعنی چی؟

این خطا می‌گه:

The provided cwd "D:\نیما\یدک میرزا 5 اردیبهشت 1403\laravel\public" does not exist.

یعنی:

پوشه‌ای که لاراول داره سعی می‌کنه ازش پروژه رو اجرا کنه، اصلاً وجود نداره.

به زبان ساده‌تر:

D:\نیما\یدک میرزا 5 اردیبهشت 1403\laravel\public

یا پاک شده
یا جابه‌جا شده
یا اسمش عوض شده
یا کاراکترهای خاص توی مسیر باعث مشکل شده
یا داری از CMD/Terminal در مسیر اشتباه php artisan serve می‌زنی.


چرا اتفاق افتاده؟ (۴ دلیل رایج)

۱) مسیر پروژه رو تغییر دادی، ولی از ترمینال داری دستور رو تو مسیر قبلی می‌زنی.

۲) فولدر public حذف شده یا اسمش تغییر کرده.

۳) داری پروژه رو از مسیری اجرا می‌کنی که کاراکترهای غیرانگلیسی داره
مثل این مسیر:

D:\نیما\یدک میرزا...

بعضی وقت‌ها PHP یا Symfony با اینا اذیت می‌شن.

۴) پروژه رو جابه‌جا کردی ولی vendor قبلی هنوز مسیر قبلی رو کش کرده.


راه‌حل قطعی

به ترتیب این ۴ کار رو انجام بده:

۱) اول وارد مسیر درست پروژه شو

تو CMD یا PowerShell یا Git Bash اینو بزن:

cd "D:\نیما\یدک میرزا 5 اردیبهشت 1403\laravel"

بعد تست کن:

dir

ببین فولدرهای app, routes, public, vendor رو می‌بینی یا نه.


۲) اگر public وجود نداره

باید یک بار لاراول رو دوباره نصب یا public رو برگردونی.


۳) اگر مسیر فارسی داری (نیما، یدک میرزا و...)

بهترین کار اینه:

پروژه رو ببر داخل یک مسیر انگلیسی مثل:

D:\projects\yekmirza

یا:

C:\laravel\project1

بعد دستور رو بزن:

php artisan serve

در ۹۰٪ موارد مشکل همین فارسی بودن مسیرهاست.


۴) اگر vendor مشکل داره

فولدر vendor رو حذف کن و دوباره نصب کن:

composer install

بعد:

php artisan serve

جمع‌بندی خیلی کوتاه

لاراول می‌گه:
«آدرس public که گفتی وجود نداره.»

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


برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام