Files
neta/docs/15-sorun-giderme.md
T
Poyraz 72a0b38f3e Remove obsolete scripts and configuration files for self-hosting and database migrations
- Deleted `pnpm-workspace.yaml` as it is no longer needed.
- Removed `apply-migrations.sh` script that handled database migrations.
- Eliminated `generate-full-stack-env.mjs` script for environment variable generation.
- Deleted `selfhost-backup.sh` script for creating backups of the self-hosted environment.
- Removed `selfhost-doctor.sh` script for health checks of the self-hosted services.
- Deleted `selfhost-restore.sh` script for restoring backups in the self-hosted environment.
2026-06-16 09:57:32 +03:00

174 lines
4.3 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
---
title: Sorun Giderme
description: Kurulum, deploy, Supabase ve giriş problemlerinde kontrol edilmesi gerekenler.
order: 15
---
# Sorun Giderme
Neta bir Next.js uygulaması gibi deploy edilse de Supabase, RLS, Auth ve Storage bağlantıları olduğu için sorunları doğru katmanda aramak önemli. Bu sayfada en sık karşılaşılabilecek durumları topladım.
## Login Sayfası Açılmıyor
Önce `.next` cache'ini temizleyin:
```powershell
Remove-Item .next -Recurse -Force
```
Sonra dev server'ı tekrar başlatın:
```bash
npm run dev
```
Eğer sayfa hâlâ açılmıyorsa şunları kontrol edin:
- `NEXT_PUBLIC_SUPABASE_URL` dolu mu?
- `NEXT_PUBLIC_SUPABASE_ANON_KEY` doğru mu?
- Supabase projesi erişilebilir mi?
- Dev server loglarında route compile hatası var mı?
Login sayfası public route olduğu için session kontrolünün sayfayı bloklamaması gerekir.
## Giriş Yapıyorum Ama Dashboard Açılmıyor
Kontrol edilecekler:
- Kullanıcının `profiles` tablosunda kaydı var mı?
- `profiles.role` değeri `freelancer` mı?
- Kullanıcı yanlışlıkla `client` rolünde mi?
- Middleware kullanıcıyı `/portal` tarafına mı yönlendiriyor?
Client rolündeki kullanıcı dashboard'a değil, portal'a yönlendirilir.
## İlk Admin Oluşturulamıyor
Bu genellikle service role veya Supabase function problemidir.
Kontrol edin:
- `SUPABASE_SERVICE_ROLE_KEY` var mı?
- Service role key doğru Supabase projesine mi ait?
- `request_internal_auth_creation` function'ı var mı?
- `is_first_admin_setup_available` function'ı var mı?
- `profiles` tablosu var mı?
- Auth trigger yeni kullanıcı için profile oluşturuyor mu?
## Register Kapalı Görünüyor
`profiles` tablosunda herhangi bir kayıt varsa sistem ilk admin kurulmuş kabul eder.
Supabase SQL editor'da kontrol edebilirsiniz:
```sql
select id, role from public.profiles;
```
Geliştirme ortamında yanlış kayıt oluştuysa auth user ve profile kayıtlarını temizleyip tekrar deneyebilirsiniz.
## Veri Ekleniyor Ama Listede Görünmüyor
Bu çoğu zaman RLS kaynaklıdır.
Kontrol edin:
- Kayıtta `user_id` doğru mu?
- Policy `auth.uid() = user_id` mantığıyla uyumlu mu?
- Sorguda `.eq("user_id", user.id)` filtresi var mı?
- Kullanıcı session'ı gerçekten var mı?
Supabase bazen yetkisiz veriyi hata yerine boş sonuç olarak döndürür. Bu yüzden boş listeyi her zaman "veri yok" diye yorumlamamak gerekir.
## Storage Upload Hata Veriyor
Kontrol listesi:
- `avatars` bucket var mı?
- `project-assets` bucket var mı?
- `project-assets` private mı?
- Dosya boyutu 5 MB sınırını aşıyor mu?
- MIME type izinli mi?
- Storage policy service role erişimine izin veriyor mu?
- `SUPABASE_SERVICE_ROLE_KEY` doğru mu?
## Proje Görseli Yükleniyor Ama Görünmüyor
`project-assets` private bucket olduğu için public URL beklemeyin. Uygulama signed URL üretir.
Kontrol edin:
- `cover_image_path` tabloya yazılmış mı?
- Signed URL üretimi hata veriyor mu?
- Bucket adı doğru mu?
## AI Asistan Cevap Vermiyor
Kontrol edin:
- Ayarlar ekranında provider seçilmiş mi?
- API key kaydedilmiş mi?
- `app_settings` tablosunda kullanıcı için kayıt var mı?
- Provider ile model adı uyumlu mu?
- API key geçerli mi?
Chat endpoint'i için route:
```txt
/api/chat
```
## Finans veya Proje Analizi Hata Veriyor
Bu endpoint'ler de AI provider ayarlarını kullanır:
```txt
/api/finance-analysis
/api/project-risk
```
Eğer API key yoksa analiz endpoint'i hata döndürür.
## Build Hatası
Önce bağımlılıkları temiz kurmayı deneyin:
```bash
npm install
npm run build
```
Projede npm lockfile kullanılmalıdır. `pnpm-lock.yaml` veya başka lockfile'lar deployment platformunu karıştırabilir.
## Slow Filesystem Uyarısı
Next.js dev server bazen Windows veya yavaş disk üzerinde şu tarz uyarı verebilir:
```txt
Slow filesystem detected
```
Bu uyarı tek başına hata değildir. Ama dev server çok yavaşsa:
- Projeyi daha hızlı lokal diske taşıyın.
- `.next` klasörünü temizleyin.
- Antivirüs taramasının proje klasörünü yavaşlatmadığından emin olun.
## Health Check
Uygulamanın temel olarak ayağa kalktığını test etmek için:
```txt
/api/health
```
Beklenen cevap:
```json
{
"status": "ok"
}
```
Bu endpoint Supabase bağlantısını test etmez; sadece Next.js uygulamasının çalıştığını gösterir.