محمد رضا
3 سال پیش توسط محمد رضا مطرح شد
22 پاسخ

مشکل در ابدیت لاراول از 8 به 9

سلام و خسته نباشید خدمت دوستان راکتی
ورژن لاراول من 7 بود و طبق مستندات لاراول و آموزش مهندس موسوی ورژن اون رو به 8 تغییر دادم و هیچ خطایی نداشتم و پروژه کار میکنه.
اما الان میخوام از 8 به 9 تغییر بدم و خطا دارم
ورژن php رو هم عوض کردم قبلش و طبق مستندات فایل composer.json رو تغییر دادم
اما هنگام اجرای دستور composr update خطای زیر رو دریافت میکنم و آبدیت انجام نمیشه.

  Problem 1
    - Conclusion: don't install fruitcake/laravel-cors v1.0.3 (conflict analysis result)
    - Conclusion: don't install fruitcake/laravel-cors v1.0.6 (conflict analysis result)
    - fruitcake/laravel-cors[v1.0.1, ..., v1.0.2] require php ^7.1.3 -> your php version (8.1.2) does not satisfy that
 requirement.
    - illuminate/support[v5.6.0, ..., 5.8.x-dev] require php ^7.1.3 -> your php version (8.1.2) does not satisfy that
requirement.
    - illuminate/support[v6.0.0, ..., v6.19.1] require php ^7.2 -> your php version (8.1.2) does not satisfy that requ
irement.
    - Root composer.json requires fruitcake/laravel-cors ^1.0 -> satisfiable by fruitcake/laravel-cors[v1.0.0, ..., 1.
0.x-dev].
    - Conclusion: don't install laravel/framework v9.0.0-beta.2 (conflict analysis result)
    - Conclusion: don't install laravel/framework v9.0.0-beta.3 (conflict analysis result)
    - Conclusion: don't install laravel/framework v9.0.0-beta.4 (conflict analysis result)
    - Conclusion: don't install laravel/framework v9.0.0-beta.5 (conflict analysis result)
    - Conclusion: don't install laravel/framework v9.0.0 (conflict analysis result)
    - Conclusion: don't install laravel/framework v9.0.1 (conflict analysis result)
    - Conclusion: don't install laravel/framework v9.0.2 (conflict analysis result)
    - Conclusion: don't install laravel/framework v9.1.0 (conflict analysis result)
    - Conclusion: don't install laravel/framework v9.2.0 (conflict analysis result)
    - Conclusion: don't install laravel/framework v9.3.0 (conflict analysis result)
    - Conclusion: don't install laravel/framework v9.3.1 (conflict analysis result)
    - Conclusion: don't install laravel/framework v9.4.0 (conflict analysis result)
    - Conclusion: don't install laravel/framework v9.4.1 (conflict analysis result)
    - Conclusion: don't install laravel/framework v9.5.0 (conflict analysis result)
    - Conclusion: don't install laravel/framework v9.5.1 (conflict analysis result)
    - Conclusion: don't install laravel/framework v9.0.0-beta.1 (conflict analysis result)
    - fruitcake/laravel-cors v1.0.0 requires illuminate/support ^5.5|^6 -> satisfiable by illuminate/support[v5.5.0, .
.., 5.8.x-dev, v6.0.0, ..., 6.x-dev].
    - Only one of these can be installed: illuminate/support[v5.0.0, ..., 5.8.x-dev, v6.0.0, ..., 6.x-dev, v7.0.0, ...
, 7.x-dev, v8.0.0, ..., 8.x-dev, v9.0.0-beta.1, ..., 9.x-dev], laravel/framework[v9.0.0-beta.1, ..., 9.x-dev]. laravel
/framework replaces illuminate/support and thus cannot coexist with it.
    - Root composer.json requires laravel/framework ^9.0 -> satisfiable by laravel/framework[v9.0.0-beta.1, ..., 9.x-d
ev].

Use the option --with-all-dependencies (-W) to allow upgrades, downgrades and removals for packages currently locked t
o specific versions.

ثبت پرسش جدید
محمد رضا
تخصص : Full Stack Developer
@salar.mohammad2013 3 سال پیش مطرح شد
1

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

درمرحله ی اول نیاز هست تا ورژن پکیج زیر رو به شکلی که میبینید در composer تغییر بدید.

"fruitcake/laravel-cors": "^3.0"

بعد از اون طبق سایت خود لاراول در فایل app/Http/Middleware/TrustProxies.php
دو تغییر ایجاد کنید
use Fideloper\Proxy\TrustProxies as Middleware رو حذف کنید
use Illuminate\Http\Middleware\TrustProxies as Middleware. رو به جاش قرار بدید
و تغییر دوم مقدارheader

protected $headers =
    Request::HEADER_X_FORWARDED_FOR |
    Request::HEADER_X_FORWARDED_HOST |
    Request::HEADER_X_FORWARDED_PORT |
    Request::HEADER_X_FORWARDED_PROTO |
    Request::HEADER_X_FORWARDED_AWS_ELB;

مرحله بعد پکیج رو حذف کنید composer remove fideloper/proxy

و تمام
composer update رو بزنید.


رایموند
تخصص : مختصص وردپرس - برنامه نویس لار...
@Raymond 3 سال پیش مطرح شد
0

@salar.mohammad2013
احتمالا این وابستگی برای لاراول ۹ سازگار نیست یا شاید حذف بشه و درآخر ممکنه خود لاراول وابستگی اختصاصی نوشته است.


محمد رضا
تخصص : Full Stack Developer
@salar.mohammad2013 3 سال پیش مطرح شد
1

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

درمرحله ی اول نیاز هست تا ورژن پکیج زیر رو به شکلی که میبینید در composer تغییر بدید.

"fruitcake/laravel-cors": "^3.0"

بعد از اون طبق سایت خود لاراول در فایل app/Http/Middleware/TrustProxies.php
دو تغییر ایجاد کنید
use Fideloper\Proxy\TrustProxies as Middleware رو حذف کنید
use Illuminate\Http\Middleware\TrustProxies as Middleware. رو به جاش قرار بدید
و تغییر دوم مقدارheader

protected $headers =
    Request::HEADER_X_FORWARDED_FOR |
    Request::HEADER_X_FORWARDED_HOST |
    Request::HEADER_X_FORWARDED_PORT |
    Request::HEADER_X_FORWARDED_PROTO |
    Request::HEADER_X_FORWARDED_AWS_ELB;

مرحله بعد پکیج رو حذف کنید composer remove fideloper/proxy

و تمام
composer update رو بزنید.


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

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