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.