Environment Variables: .env Dosyası ile Gizli Bilgileri Saklama

crazy_coder

Moderatör
Katılım
20 Şub 2026
Mesajlar
204
Tepkime puanı
0
Puanları
16

1. Neden .env Kullanmalıyız?​



  • []Güvenlik: Hassas verileri kaynak koddan ayırır.
    []Esneklik: Yerel bilgisayarınızda (development) farklı, canlı sunucuda (production) farklı ayarlar kullanmanızı sağlar.
  • Paylaşım Kolaylığı: Takım arkadaşlarınızla kodu paylaşırken şifrelerinizi paylaşmak zorunda kalmazsınız.

2. Kurulum: dotenv Paketi​


Node.js projelerinde .env dosyasındaki verilere erişmek için en yaygın kullanılan araç dotenv kütüphanesidir.

Bash:
npm install dotenv

3. .env Dosyası Oluşturma​


Projenizin en üst dizinine .env isimli bir dosya oluşturun. Bu dosyanın içinde bilgiler ANAHTAR=DEGER formatında saklanır.

Dikkat: Değerlerin etrafına tırnak işareti koymanıza veya satır sonuna noktalı virgül eklemenize gerek yoktur.

Kod:
PORT=5000
MONGODB_URI=mongodb+srv://kullanici:[email protected]/
JWT_SECRET=super_gizli_anahtarim_99
API_KEY=12345-abcde-67890

4. Kod İçinde Değişkenlere Erişmek​


.env dosyasındaki verilere process.env objesi üzerinden erişiriz. Ancak uygulamanın en başında dotenv paketini yapılandırmamız gerekir.

JavaScript:
require('dotenv').config(); // .env dosyasını oku ve process.env'ye yükle

const port = process.env.PORT || 3000;
const dbUri = process.env.MONGODB_URI;

console.log(Sunucu ${port} portunda çalışmaya hazır.);
// console.log(dbUri); // Gerçek projede şifreleri konsola yazdırmayın!

5. En Kritik Adım: .gitignore​


.env dosyasını oluşturduktan sonra yapmanız gereken ilk iş, bu dosyayı .gitignore dosyanıza eklemektir. Eğer bunu yapmazsanız, gizli bilgileriniz GitHub'da herkes tarafından görülebilir.

Kod:
.gitignore dosyasının içeriği

node_modules
.env

6. .env.example Kullanımı​


Takım arkadaşlarınızın projenin hangi değişkenlere ihtiyaç duyduğunu anlaması için bir taslak dosya (örn: .env.example) oluşturmak profesyonel bir yaklaşımdır. Bu dosyaya gerçek şifreleri değil, sadece anahtar isimlerini yazarsınız.

Kod:
.env.example (Bu dosya GitHub'a yüklenebilir)

PORT=3000
MONGODB_URI=your_mongodb_connection_string
JWT_SECRET=your_jwt_secret_key



Sonuç

Ortam değişkenleri kullanmak, sadece bir güvenlik önlemi değil, aynı zamanda profesyonel bir yazılım mimarisi kuralıdır. "Hard-coded" (koda gömülü) şifrelerden kurtulmak, kodunuzun taşınabilirliğini ve güvenliğini maksimize eder.
 
Geri
Üst