Web sitesi kurmak denince akla ilk olarak veritabanı oluşturmak, kullanıcı tanımlamak ve uzun kurulum sihirbazlarıyla uğraşmak gelir. Grav ise bu alışkanlığı tersine çeviren bir içerik yönetim sistemidir: veritabanı kullanmaz, içerikleri düz dosyalarda saklar ve bir klasörü sunucuya kopyalamak çoğu zaman kurulum için yeterlidir. Peki Grav nedir, hangi projeler için uygundur ve Grav nasıl kurulur? Bu yazıda sistemi temel özellikleriyle tanıtıyoruz.
Grav Nedir?
Grav, PHP ile yazılmış, açık kaynak kodlu ve ücretsiz bir düz dosya tabanlı içerik yönetim sistemidir. İngilizcede bu tür sistemler “flat-file CMS” olarak adlandırılır. Geleneksel sistemlerde sayfalar, ayarlar ve kullanıcılar bir veritabanında tutulurken Grav’da her şey klasörler ve dosyalar halinde durur.
Sistemin yapı taşları şunlardır:
- Markdown: Sayfa içerikleri, sade bir işaretleme dili olan Markdown ile yazılır.
- YAML: Site ayarları ve sayfa başlık bilgileri okunması kolay YAML dosyalarında tutulur.
- Twig: Temalar, esnek bir şablon motoru olan Twig ile hazırlanır.
- Önbellekleme: Sayfalar önbelleğe alınarak hızlı biçimde sunulur.
- Eklenti ve tema deposu: Form, arama, site haritası gibi işlevler eklentilerle eklenir.
Grav çekirdeği bir yönetim paneli olmadan da çalışır; içerikler bir metin düzenleyiciyle doğrudan dosyalar üzerinden düzenlenebilir. Tarayıcı üzerinden içerik girmek isteyenler için ise resmî Admin eklentisi görsel bir panel sunar.
Grav Ne Anlama Gelir?
“Grav ne demek” sorusunun cevabı İngilizce “gravity”, yani yer çekimi kelimesinde yatıyor; Grav bu kelimenin kısaltılmış halidir. Projenin logosu ve görsel dili de uzay temasını yansıtır. İsim, sistemin hafifliğine ve içeriklerin sade bir çekirdek etrafında toplanmasına gönderme yapar.
Teknik anlamda Grav, “veritabanısız içerik yönetimi” yaklaşımının en bilinen temsilcilerinden biridir. Bu yaklaşımın sağladığı faydalar şöyle özetlenebilir:
- Kolay taşıma ve yedekleme: Sitenin tamamı bir klasörden ibarettir; kopyalamak yedeklemek demektir.
- Sürüm kontrolü: İçerikler dosya olduğu için Git gibi araçlarla değişiklik geçmişi tutulabilir.
- Hız: Veritabanı sorgusu olmadığından küçük ve orta ölçekli sitelerde sayfalar hızlı açılır.
- Daha dar saldırı yüzeyi: Veritabanına yönelik saldırı türleri bu mimaride söz konusu olmaz. Yine de güncellemeleri takip etmek ve panel parolasını güçlü tutmak gerekir.
- Esneklik: Her sayfa için farklı şablon ve özel alanlar kolayca tanımlanabilir.
Grav Hangi Projeler İçin Uygundur?
- Kurumsal tanıtım siteleri ve açılış sayfaları
- Kişisel bloglar ve portfolyolar
- Ürün ve yazılım dokümantasyon siteleri
- Hız ve sadeliğin öncelikli olduğu küçük ve orta ölçekli projeler
Öte yandan çok sayıda yazarın aynı anda içerik girdiği büyük haber siteleri, karmaşık üyelik sistemleri ya da kapsamlı e-ticaret projeleri için veritabanı tabanlı sistemler genellikle daha uygun olur. Grav’ın eklenti ve tema ekosistemi de en yaygın içerik yönetim sistemlerine kıyasla daha küçüktür ve Twig ile Markdown’a aşina olmayanlar için kısa bir öğrenme süreci gerektirir.
Grav Nasıl Kurulur?
Kurulum için PHP çalıştırabilen bir web sunucusu yeterlidir; Apache, Nginx ve benzeri yaygın sunucularla çalışır. Gerekli PHP sürümü ve eklentileri Grav sürümüne göre değiştiğinden, kuruluma başlamadan önce resmî dokümantasyondaki güncel gereksinimleri kontrol edin.
Yöntem 1: Paketi İndirerek Kurulum
- Grav’ın resmî sitesinden kurulum paketini indirin. Yönetim paneli istiyorsanız Admin eklentisini içeren paketi seçin.
- Sıkıştırılmış dosyayı açın.
- Klasörün içeriğini, gizli dosyalar dahil olmak üzere FTP ya da dosya yöneticisi ile sunucunuzun web kök dizinine yükleyin. Gizli .htaccess dosyasının da kopyalandığından emin olun.
- Önbellek, günlük, yedek ve kullanıcı klasörleri gibi dizinlerin sunucu tarafından yazılabilir olduğunu kontrol edin.
- Tarayıcıdan alan adınızı açın. Admin eklentili paketi kurduysanız ilk açılışta yönetici hesabı oluşturmanız istenir.
Yöntem 2: Komut Satırı ile Kurulum
Geliştiriciler Grav’ı Composer ya da Git aracılığıyla da kurabilir. Kurulumdan sonra Grav’ın kendi paket yöneticisi olan GPM ile eklenti ve tema yüklemek mümkündür. Örneğin proje klasöründe bin/gpm install admin komutu yönetim panelini kurar; bin/gpm selfupgrade komutu ise çekirdeği günceller.
Kurulumdan Sonra Yapılacaklar
- Site adı, dil ve saat dilimi gibi temel ayarları yapılandırın.
- Bir tema seçin ya da varsayılan temayı özelleştirin.
- Sayfalarınızı user/pages klasörü altında ya da panel üzerinden oluşturun.
- Güçlü bir yönetici parolası belirleyin ve mümkünse iki adımlı doğrulamayı açın.
- Çekirdek ve eklenti güncellemelerini düzenli olarak uygulayın.
- Site klasörünü belirli aralıklarla yedekleyin.
Grav’ı önce kendi bilgisayarınızda yerel bir sunucu ortamında denemek, sistemi tanımanın en risksiz yoludur.
Sık Sorulan Sorular
Grav ücretsiz mi?
Evet. Grav açık kaynak kodludur ve çekirdeği ücretsiz kullanılabilir. Bazı gelişmiş tema ve eklentiler ücretli olabilir; barındırma ve alan adı masrafları da ayrıca size aittir.
Grav için veritabanı gerekir mi?
Hayır. Grav tüm içerik ve ayarları dosyalarda saklar; MySQL ya da benzeri bir veritabanı kurmanız gerekmez.
Grav kod bilmeden kullanılabilir mi?
Admin eklentisi sayesinde içerik eklemek ve düzenlemek için kod bilgisi gerekmez. Ancak tema özelleştirme ve ileri düzey ayarlar için temel düzeyde HTML, Twig ve YAML bilgisi işleri kolaylaştırır.
