Laravel Projesi Oluşturma ve Çalıştırma
Laravel Nedir?
Laravel, PHP geliştiricisi Taylor Otwell tarafından oluşturulan açık kaynaklı bir PHP web çerçevesidir. Geliştiricilere modern web uygulamaları oluşturmak için temiz ve zarif bir araç seti sunmayı amaçlar. Laravel, yönlendirme, oturum, önbellekleme, kimlik doğrulama gibi zengin özelliklere sahiptir ve bu özellikler yaygın web geliştirme görevlerini basitleştirir.
Laravel'in Ana Özellikleri ve Avantajları
- Basitlik ve Zarafet: Laravel'in söz dizimi basit ve zariftir, kodu daha okunabilir ve sürdürülebilir hale getirir.
- Zengin Özellik Seti: Yönlendirme, kimlik doğrulama, oturum yönetimi ve önbellekleme gibi özelliklerle geliştirme sürecini önemli ölçüde basitleştirir.
- Güçlü ORM: Eloquent ORM, veritabanı işlemleri için basit bir ActiveRecord implementasyonu sunar.
- Modüler Tasarım: Composer paket yöneticisi aracılığıyla üçüncü taraf kitaplıklar ve uzantıları kolayca entegre eder.
- Güçlü Topluluk Desteği: Büyük bir geliştirici topluluğu ve zengin ekosistem.
Laravel, geliştiricilerin her boyutta projede, küçük uygulamalardan büyük kurumsal seviyedeki sistemlere kadar, yüksek kaliteli web uygulamaları ve API'leri hızla inşa etmelerine yardımcı olur.
ServBay ile Laravel Projesi Oluşturma ve Çalıştırma
Bu makalede, ServBay'in PHP ortamını kullanarak bir Laravel projesi oluşturup çalıştıracağız. Web sunucusunu kurmak ve projeye basit yapılandırmalarla erişmek için ServBay'in 'Host' özelliğini kullanacağız.
Not: Önceki NGINX veya Apache kullanıcıları için
ServBay varsayılan olarak Caddy kullanır. NGINX ve Apache'den ServBay'e geçiş yapan kullanıcılar için dikkat edilmesi gereken bazı önemli değişiklikler vardır:
Caddy Yapılandırması
ServBay, Caddy'i dahili olarak içerir ve varsayılan olarak optimize edilmiştir ve hata ayıklanmıştır. Geliştiriciler sadece ServBay'in 'Host' özelliğini kullanarak siteyi yönetmelidirler, Caddy yapılandırma dosyalarını manuel olarak değiştirmelerine gerek yoktur.
Yeniden Yönlendirme Kuralları ve .htaccess
NGINX ve Apache'de geliştiriciler genellikle URL yönlendirmesi ve diğer yapılandırmaları yönetmek için kendi yeniden yönlendirme kurallarını ve .htaccess dosyalarını yazmaları gerekir. Ancak, ServBay'in varsayılan ayarları Caddy'in kurallarını zaten yapılandırır, bu nedenle özel gereksinimler olmadıkça geliştiricilerin bu kuralları kendilerinin yazmasına gerek yoktur.
Daha Fazlasını Öğrenin
Daha fazla bilgi için lütfen Rewrite ve htaccess, Apache Sitelerinin ServBay'e Nasıl Taşınacağı, NGINX Sitelerinin ServBay'e Nasıl Taşınacağı adreslerine bakın.
Laravel Projesi Oluşturma
TIP
ServBay, geliştiricilerin kolay yönetim için web sitesini /Applications/ServBay/www
dizinine yerleştirmelerini önerir.
Composer'ı Yükleyin
ServBay, Composer önceden yüklenmiş olarak gelir, ayrı bir kuruluma gerek yoktur.
Bir Laravel Projesi Oluşturun
Composer kullanarak yeni bir Laravel projesi oluşturun:
bashcd /Applications/ServBay/www mkdir servbay-laravel-app cd servbay-laravel-app composer create-project --prefer-dist laravel/laravel .
1
2
3
4Proje Dizinine Girin
Yeni oluşturulan Laravel proje dizinine gidin:
bashcd /Applications/ServBay/www/servbay-laravel-app
1
İlk Yapılandırma
Uygulama Anahtarını Oluşturun
Laravel, kullanıcı oturumlarının ve diğer şifreli verilerin güvenliğini sağlamak için bir uygulama anahtarına ihtiyaç duyar. Artisan komutu kullanarak bir uygulama anahtarı oluşturabilirsiniz:
bashphp artisan key:generate
1Ortam Değişkenlerini Yapılandırın
Veritabanı bağlantı bilgilerini ve diğer ortam değişkenlerini
.env
dosyasında yapılandırın. Aşağıdaki yapılandırmaların doğru olarak ayarlandığından emin olun:APP_NAME=Laravel APP_ENV=local APP_KEY=base64:... APP_DEBUG=true APP_URL=https://servbay-laravel-test.local LOG_CHANNEL=stack DB_CONNECTION=mysql DB_HOST=127.0.0.1 DB_PORT=3306 DB_DATABASE=servbay_laravel_app DB_USERNAME=root DB_PASSWORD=password
1
2
3
4
5
6
7
8
9
10
11
12
13
14
Web Sunucusunu Yapılandırma
Laravel projesine web sunucusu aracılığıyla erişmek için ServBay'in 'Host' özelliğini kullanın. ServBay'in 'Host' ayarlarında yeni bir ana bilgisayar ekleyin:
- Ad:
My First Laravel Dev Site
- Alan Adı:
servbay-laravel-test.local
- Web Sitesi Türü:
PHP
- PHP Sürümü:
8.3
seçin - Web Sitesi Kök Dizini:
/Applications/ServBay/www/servbay-laravel-app/public
Ayrıntılı adımlar için lütfen İlk Web Sitesi Ekleme adresine bakın.
Örnek Kod Ekleme
routes/web.php
dosyasına "Hello ServBay!" mesajını çıktısını almak için aşağıdaki kodu ekleyin:
Route::get('/', function () {
return 'Hello ServBay!';
});
2
3
Web Sitesine Erişme
Bir tarayıcı açın ve https://servbay-laravel-test.local
adresini ziyaret edin, sayfanın Hello ServBay!
çıktısını vereceğini göreceksiniz.
NoSQL Veritabanı Örneği
Memcached Örneği
Memcached Uzantısını Kurun
ServBay'de, Memcached uzantısı önceden yüklü gelir, ek kurulum gerekmez.
Memcached'i Yapılandırın
.env
dosyasında Memcached bağlantı bilgilerini yapılandırın:CACHE_STORE=memcached MEMCACHED_HOST=127.0.0.1
1
2Memcached'i Kullanın
Rotalarda caching kullanın
routes/web.php
:phpuse Illuminate\Support\Facades\Cache; Route::get('/memcached', function () { Cache::put('key', 'value', 600); return Cache::get('key'); });
1
2
3
4
5
6Bir tarayıcı açın ve
https://servbay-laravel-test.local/memcached
adresine gidin.
Redis Örneği
Redis Uzantısını Kurun
ServBay'de, Redis uzantısı önceden yüklü gelir, ek kurulum gerekmez.
Redis'i Yapılandırın
.env
dosyasında Redis bağlantı bilgilerini yapılandırın:CACHE_STORE=redis REDIS_HOST=127.0.0.1 REDIS_PASSWORD=null REDIS_PORT=6379
1
2
3
4Redis'i Kullanın
Rotalarda caching kullanın
routes/web.php
:phpuse Illuminate\Support\Facades\Redis; Route::get('/redis', function () { Redis::set('key', 'value'); return Redis::get('key'); });
1
2
3
4
5
6Bir tarayıcı açın ve
https://servbay-laravel-test.local/redis
adresine gidin.
İlişkisel Veritabanı Örneği
Veritabanı Yapısı ve Migration Dosyası Oluşturma
MySQL Örneği
MySQL'i Yapılandırın
.env
dosyasında MySQL bağlantı bilgilerini yapılandırın:DB_CONNECTION=mysql DB_HOST=127.0.0.1 DB_PORT=3306 DB_DATABASE=servbay_laravel_app DB_USERNAME=root DB_PASSWORD=password
1
2
3
4
5
6Migration Dosyası Oluşturun
Artisan komutunu kullanarak bir migration dosyası oluşturun:
bashphp artisan make:migration create_accounts_table
1Migration Dosyasını Düzenleyin
Yeni oluşturulan migration dosyasını
database/migrations
dizininde bulun ve veritabanı tablo yapısını tanımlamak için düzenleyin:phppublic function up() { Schema::create('accounts', function (Blueprint $table) { $table->id(); $table->string('name'); $table->string('email')->unique(); $table->timestamps(); }); }
1
2
3
4
5
6
7
8
9Migration'ı Çalıştırın
Artisan komutunu kullanarak migration'ı çalıştırın ve veritabanı tablosunu oluşturun:
bashphp artisan migrate
1Hesap Verilerini Ekleme
routes/web.php
rotalarında hesap verilerini ekleyin:phpuse Illuminate\Support\Facades\DB; Route::get('/mysql-add', function () { DB::table('accounts')->insert([ 'name' => 'ServBay', 'email' => '[email protected]', ]); return 'Account added'; });
1
2
3
4
5
6
7
8
9MySQL'i Kullanın
Rotalarda veritabanını sorgulayın
routes/web.php
:phpuse Illuminate\Support\Facades\DB; Route::get('/mysql', function () { $users = DB::table('accounts')->get(); return $users; });
1
2
3
4
5
6Bir tarayıcı açın ve
https://servbay-laravel-test.local/mysql-add
vehttps://servbay-laravel-test.local/mysql
adreslerine gidin.
PostgreSQL Örneği
PostgreSQL'i Yapılandırın
.env
dosyasında PostgreSQL bağlantı bilgilerini yapılandırın:DB_CONNECTION=pgsql DB_HOST=127.0.0.1 DB_PORT=5432 DB_DATABASE=servbay_laravel_app DB_USERNAME=root DB_PASSWORD=password
1
2
3
4
5
6Migration Dosyası Oluşturun
Artisan komutunu kullanarak bir migration dosyası oluşturun:
bashphp artisan make:migration create_accounts_table
1Migration Dosyasını Düzenleyin
Yeni oluşturulan migration dosyasını
database/migrations
dizininde bulun ve veritabanı tablo yapısını tanımlamak için düzenleyin:phppublic function up() { Schema::create('accounts', function (Blueprint $table) { $table->id(); $table->string('name'); $table->string('email')->unique(); $table->timestamps(); }); }
1
2
3
4
5
6
7
8
9Migration'ı Çalıştırın
Artisan komutunu kullanarak migration'ı çalıştırın ve veritabanı tablosunu oluşturun:
bashphp artisan migrate
1Hesap Verilerini Ekleme
routes/web.app
rotalarında hesap verilerini ekleyin:phpuse Illuminate\Support\Facades\DB; Route::get('/pgsql-add', function () { DB::table('accounts')->insert([ 'name' => 'ServBay', 'email' => '[email protected]', ]); return 'Account added'; });
1
2
3
4
5
6
7
8
9PostgreSQL'i Kullanın
Rotalarda veritabanını sorgulayın
routes/web.php
:phpuse Illuminate\Support\Facades\DB; Route::get('/pgsql', function () { $users = DB::table('accounts')->get(); return $users; });
1
2
3
4
5
6Bir tarayıcı açın ve
https://servbay-laravel-test.local/pgsql-add
vehttps://servbay-laravel-test.local/pgsql
adreslerine gidin.
Yukarıdaki adımları izleyerek, başarıyla bir Laravel projesi oluşturup çalıştırdınız, ServBay'in özelliklerini kullanarak projenizi yönettiniz ve eriştiniz, birden fazla veritabanına bağlandınız ve verileri sorguladınız.