Herkese merhabalar, forumda arattım ama bulamadım. Benim bilgisayarımda localhostta PHP 8.1 yüklü. Composer ile bir laravel projesi kurdum. Hostinge attım. Hostingte de php 8.1 olarak ayarladım. Ama bana PHP >=8.2 dedi. Localhostumda 8.1 varken çalışırken ve sunucuda da 8.1 varken neden böyle bir talepte bulunmuş olabilir? İlgili projede composer.json dosyasında php için 8.1 demiş ve laravel/framewor bölümünde de 10.10 yazıyor. Laravel sürekli versiyon yükseltiyor ama hostinglerde php aynı hızla yükselmiyor. Bundan sonra composer ile laravel projesi kurduğumda bu sorunu hep yaşayacağım anlamına geliyor, nasıl bir çözüm bulabilirim? İyi çalışmalar
Laravel ve PHP versiyon
- Düzenlendi
laravel şuan 10x sürümünde ve minimum php gereksinimi 8.1 ve 8.2 ilede çalışabilmektedir.
2024 ilk çeyreğinde gelecek olan 11x sürümü ile 8.2 olması planlanmakta.
Size en az 8.2 olmalı diyen her ne ise o laravel değil...
trygaios Aynı problem bendede mevcut. PHP sürümüm 8.1 istese bile sunucuda 8.2 ayarlıyorum ona rağmen Php >= 8.1 diyor banada. Çözümü bulursanız lütfen benimlede paylaşın, ben geçici olarak şöyle bir yöntem uyguladım doğrumu bilmiyorum.
Platform kısmını config altına ekliyorum,
"config": {
"optimize-autoloader": true,
"preferred-install": "dist",
"sort-packages": true,
"allow-plugins": {
"pestphp/pest-plugin": true,
"php-http/discovery": true
},
"platform": {
"php": "8.1.0"
}
},
Sonrasında ise sırasıyla şu komutları çalıştırıyorum:
composer clear-cache
composer self-update
composer update --ignore-platform-reqs
Bir projemi geçici olarak bu şekilde çalıştırdım, bir sorun görünmüyor ama içerisinde sadece laravele bağlı tailwind dosyalarım ve tasarımlarım vardı. Bu konu hakkında bilgili biri net bir çözüm yazarsa çok iyi olur
PHP CLI ile PHP FPM farklı binary kullanıyor olabilir. Komut satırı işlemlerinde cli olan kullanılır; web sunucusundan iletilen istek ise fpm tarafından işlenir.
Ben bir ay önce de localimde composer ile laravel projesi oluşturdum, onu yükledim sorunsuz çalıştırdı. Şimdiki projenin de controller, model view dosyalarını ona taşıyıp öyle çözümledim. Ama composer.json'da 8.1 deyip, hostingde 8.2 istemesi çok garip geliyor. Bundan sonraki projelerde sorunu çözmem gerekiyor. Composer ile eski versiyon yükletirsem sadece noktadan öncekini seçtiriyor, ötesinde benim talebimi ciddiye almıyor.
Yanıt veren herkese çok teşekkür ediyorum.
trygaios 8.2 istemez: https://github.com/laravel/laravel/blob/10.x/composer.json#L8
Siz tam hatayı paylaşın.
Composer detected issues in your platform: Your Composer dependencies require a PHP version ">= 8.2.0". Bu uyarıyı veriyor. composer.json dosyasında 8.1 yazıyor laravel/framework'te de 10.10 yazıyor. Verdiğiniz linkteki gibi aynı. Zaten localhostumda php 8.1 ve burada çalışıyor, hostinge atınca yukarıdaki uyarıyı veriyor. Hostingte de 8. 1 Yanıtınız için teşekkürler
mgsmus Yanıtınız için çok teşekkür ederim. composer.json dosyamı copy past ile ekliyorum.
{
"name": "laravel/laravel",
"type": "project",
"description": "The skeleton application for the Laravel framework.",
"keywords": ["laravel", "framework"],
"license": "MIT",
"require": {
"php": "^8.1",
"guzzlehttp/guzzle": "^7.2",
"laravel/framework": "^10.10",
"laravel/sanctum": "^3.3",
"laravel/tinker": "^2.8"
},
"require-dev": {
"fakerphp/faker": "^1.9.1",
"laravel/pint": "^1.0",
"laravel/sail": "^1.18",
"mockery/mockery": "^1.4.4",
"nunomaduro/collision": "^7.0",
"phpunit/phpunit": "^10.1",
"spatie/laravel-ignition": "^2.0"
},
"autoload": {
"psr-4": {
"App\\": "app/",
"Database\\Factories\\": "database/factories/",
"Database\\Seeders\\": "database/seeders/"
}
},
"autoload-dev": {
"psr-4": {
"Tests\\": "tests/"
}
},
"scripts": {
"post-autoload-dump": [
"Illuminate\\Foundation\\ComposerScripts::postAutoloadDump",
"@php artisan package:discover --ansi"
],
"post-update-cmd": [
"@php artisan vendor:publish --tag=laravel-assets --ansi --force"
],
"post-root-package-install": [
"@php -r \"file_exists('.env') || copy('.env.example', '.env');\""
],
"post-create-project-cmd": [
"@php artisan key:generate --ansi"
]
},
"extra": {
"laravel": {
"dont-discover": []
}
},
"config": {
"optimize-autoloader": true,
"preferred-install": "dist",
"sort-packages": true,
"allow-plugins": {
"pestphp/pest-plugin": true,
"php-http/discovery": true
}
},
"minimum-stability": "stable",
"prefer-stable": true
}
trygaios Merhaba, bu gibi sorunlar yaşamamanız için Laravel framework'e özel olarak optimize ettiğimiz Laravel Hosting hizmetimize göz atabilirsiniz.
Size sağlanan Kontrol panelinde, SSH Terminaline ulaşıp, komut satırını kullanmanız mümkündür.
Sistemi görmek isterseniz 1 aylık ücretsiz paket kullanımı mevcut.
Ayrıca foruma özel %40 indirim kampanyamız da devam etmektedir;
https://laravel.gen.tr/d/8201-laravel-hosting-paketlerinde-foruma-ozel-40-indirim
@trygaios barındırma için @TurkHosting kullanabilirsiniz, önerileri makul.