Kurulum
Sistem Gereksinimleri
Laravel Framework’ün birkaç sistem gereksimi vardır. Elbette tüm bu gereksinimler Laravel Homestead tarafından sağlanır.
- PHP >= 5.5.9
- OpenSSL PHP Extension
- PDO PHP Extension
- Mbstring PHP Extension
- Tokenizer PHP Extension
Laravel Kurulumu
Laravel bağımlılık yönetimi için Composer kullanır. Laravelden önce sisteminizde Composer olduğundan emin olun.
1 |
composer create-project laravel/laravel --prefer-dist |
Yapılandırma
Temel Yapılandırma
Laravel framework’ün tüm yapılandırma dosyaları config
klasrönde saklanır. Her bir ayar açıklanmıştır, böylece dosyalara bakarak ayarları tanıyabilirsiniz.
Klasör İzinleri
Laravel kurulumundan sonra bazı izin ayarlamalarına ihtiyacınız var. sorage
ve bootstrap/cache
klasörleri web sunucusu tarafından yazılabilir olmalıdır. Eğer Homestead sanal makinesi kullanıyorsanız bu izinler zaten ayarlanmıştır.
Uygulama Anahtarı
Laravel kurulunundan sonra yapmanız gereken sonraki şey uygulama anahtarına rasgele yazı dizisi eklenmesidir. Laravel kurulumunu Composer veya Laravel Yükleyici ile yaptıysanız bu anahtar key:generate
komutuyla sizi için ayarlanmıştır. Genellikle bu yazı dizisi 32 karakter uzunluğunda olmalıdır. .env
dosyası içinde de ayarlanabilir. Eğer .env.example
dosyasını .env
olarak isimlendirmediyseniz şimdi yapmalısınız. Eğer uygulama anahtarı ayarlanmamışsa kullanıcı oturumları ve diğer şifrelenmiş bilgiler güvenli olmayacaktır.
Ek Ayarlar
Laravel neredeyse başka bir ayar gerektirmez. Geliştirmenize başlayabilirsniz! Ancak, config/app.php
dosyasına ve onun dökümanlarını incelemek isteyebilirsiniz. Dosya timezone
, locale
gibi değiştirmek isteyebileceğiniz bir takım ayarları içerir.
Ayrıca bir kaç laravel bileşenini yapılandırmak isteyebilirsiniz. Örneğin:
- Cache
- Database
- Session
Biçimlendirilmiş URL
Apache
Framework URL’lerin index.php olmadan kullanılmasını sağlayan public/.htaccess
dosyasıyla gelir. Laravel uygulamasını sunmak için Apache kullanıyosanız mod_write
modülünü aktifleştirdiğinizden emin olun.
Dosya gelmemişzse aşağıdaki şekinde kullanmayı deneyin.
1 2 3 4 5 6 |
Options +FollowSymLinks RewriteEngine On RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_FILENAME} !-f RewriteRule ^ index.php [L] |
Ngix
Nginx’de site yapılandırmanızdaki aşağıdaki yönegeler biçimlendirilmiş url kullanmanızı sağlayacaktır.
1 2 3 |
location / { try_files $uri $uri/ /index.php?$query_string; } |
Tabiki Homestead kullandığında biçimlendirilmiş URL otomatik olarak yapılandırılacak.
Ortam Yapılandırması
Farklı yapılandırılmış ortamlar çalışma için sıklıkla yardımcıdır. Örneğin, yerelde çalışırken yayın sunucusundan farklı cache sürücüsü kullanmak isteyebilirsiniz. Bu ortam tabanlı yapılandırma kullarak kolaydır.
Kolaylık sağlamak için Laravel DotEnv PHP kütüphanesini kullanır. Yeni bir Laravel kurulundan uygulamanızın kök klasöründe .env.example
dosyası bulunur. Eğer laraveli Composer kurduysanız bu dosya otomatik olarak .env
olarak isimlendirilecektir. Aksi halde elle isimlendirin.
Listelenen tüm değişkenler $_ENV
PHP super-global değşkenine yüklenecektir. Bu değişkenlerden değer almak istediğinizde .env
yardımcısını kullanabilirsiniz. Aslında Laravel yapılandırma dosyalarını incelerseniz bir takım ayarlar için zaten kullanılmış olduğunu göreceksiniz.
Kendi ortam değişkenlerinizi yerel sunucunuzun ihtiyaç duyduğu gibi değiştirmekten çekinmeyin, hatta çalışma sunucusunda da. Ancak, .env
dosyası uygulamanızın kaynak kontrolüne işlenmemelidir. Uygullamanızın her geliştiricisi / sunucusu farklı ortam yapılandırmasına ihtiyaç duyabilir.
Bir takımda geliştirme yapıyorsanız, .env.example
dahil etmeye devam edebilirsiniz böyleceTakımdaki diğer geliştiriciler uygulamanın ihtiyaç duyacağı ortam değişkenlerini açıkça görebilirler.
Mevcut Ortam Değişkenlerine Erişim
Mevut uygulamanın ortamı .env
dosyanızdaki APP_ENV
değişkeni tarafından belirlenir. Bu değere App Facade
‘daki environment
metodu ile ulaşabilirsiniz.
1 |
$environment = App::environment(); |
Ayrıca environment
metoduna argüman geçirerek verilen değerin ortam ile eşleşip eşleşmediğini kontrol edebilirsiniz.
1 2 3 4 5 6 7 |
if (App::environment('local')) { // The environment is local } if (App::environment('local', 'staging')) { // The environment is either local OR staging... } |
Bir uygulama örneği de app
yardımcısıyla ulaşılaiblir:
1 |
$environment = app()->environment(); |
Önbellekleme (Caching) Yapılandırılması
Uygulamanızı hızlandırmak için, tüm yapılandırma dosyalarınızı config:cache
Artisan komutunu kullanarak tek bir dosya yapabilirsiniz. Bu yüm yapılandırma ayarlarınızı uygulamanız için framework taradından daha hızlı yüklenebilecek tek bir dosyayada birleştirir.
Uygulamanızın yayına alıken rutin olarak php artisan config:cache
komutunu çalıştırın. Lokal geliştirmelerinizde yapılandırma ayarlarınızı sıkça değiştirmeye ihtiyacınız olacağından bu komutu çalıştırmayın.
Yapılandırma Değerlerine Ulaşım
config
yadımcı fonksiyonunu kullanarak yapılandırma değerlerinize kolayca ulaşabilirsiniz. Yapılandırma değerlerine dosya isminiz ve istediğiniz ayara “.” kullanarak ulaşabilirsiniz. Varsayılan değer de belirtilebilir ve yapılanldırma ayarı mevcut değilse bu değer döner:
1 |
$value = config('app.timezone'); |
Yapılandırla değerleriniz uygulama çalışır halde ayarlamak için config
yardımcısına bir dizi geçirin.
1 |
config(['app.timezone' => 'America/Chicago']); |
Uygulamanızı İsimlendirme
Larvel kurulduktan sonra uygulamanızın ismini değiştirmek isteyebilirsiniz. Varsayılan olarak app
klasörü App
aldında alanlandırılmıştır (namespaced) ve Composer tarafından otomatik yüklememe yapılır.
Bakım Modu
Uygulamanız bakım modundayken uygulamanızdaki tüm istekler için özelleştirilmiş bir görünüm görüntülecektir. Bu mod uygulamanız güncellenirken veya bakımı yapılırken uygulamanızı kolayca pasifleştirir. Bakım modunu kontrol eden bir ara katman (middleware) uygulamaya dahil edilmiştir. Uygulama bakım modundayken 503 durum kodlu HttpException
fırlatılır.
Bakım modunu aktfleştirmek için, down
artisan komutunu çalıştırın:
1 |
php artisan down |
Bakım modunu pasifleştirmek için up
komutunu kullanın:
1 |
php artisan up |
Bakım Modu Şablonu
varsayılan bakım modu şablonu resources/views/errors/503.blade.php
konumundadır.
Bakım Modu & Kuyruklar
Uygulamanız bakım modundayken, kuyruk işleri işletilmeyecektir. Bakım modundan çıkıldığında normal olarak çalışmaya devam edecektir.