laravel oyle ftpye attın hadi başlıyoruz dediğinde başlayacak bir framework değil.
Evvela yaptığın yöntem önerilmeyen bir yöntem ve riskli.Nedir peki risk..
Sen şimdi statü gereği bir .env dosyası olusturman gerekecek; cunku ortam değişkenlerine ihtiyacın var.Ama sen gitmişsin public icindeki index.php yi root dizine atmıssın...büyük risk..
.env dosyası ulaşılabilir bir dosya..sen blabla.com/laravel/.env dediğinde tum ortam değişkenlerini herkese açıyorsun..bu yüzden
production ortamda laravel icin izin verilebilecek tek dizin public dizinidir.Bunun haricinde hiç bir dizin ve dosyaya ulasılamamalı.
Bu birinci yalnısın..İkincisi..
laravel application keysiz asla ayağa kalkmaz..
o yüzden
1.yontem sudur ;
.env olusturursun..ve console da
php artisan key:generate
diyerek env dosyana bir key atarsın otomatik.ve boylelikle uygulaman ayağa kalkar.
2.yontem ;
laravel .env ortam değişkenlerini yüklemek zorunda değil.
Dolayısıyla bu dosya doğrudan elzem bir dosya değil yani şart koşmamış.
/**
* Bootstrap the given application.
*
* @param \Illuminate\Contracts\Foundation\Application $app
* @return void
*/
public function bootstrap(Application $app)
{
if ($app->configurationIsCached()) {
return;
}
$this->checkForSpecificEnvironmentFile($app);
try {
(new Dotenv($app->environmentPath(), $app->environmentFile()))->load();
} catch (InvalidPathException $e) {
//
}
}
catch blogu boş; bu yüzden .env dosyası olusturmadan nasıl ayağa kaldırırım peki ?
php artisan key:generate --show
deyip console a orda olusturduğu keyi alıp
config/app.php
dosyasının icindeki env bolumunun 2.ci parametresine ataman yeterli..
Buraya kadar anlamadın mı ?
Kısaca su ;
Laravel console da calıstıracağın bazı komutları çalıştırmadan sana cevap vermez.