Ana içeriğe geç

Kurulum Kılavuzu

Bu, FeedbackPulse SaaS için tam, adım adım kurulum kılavuzudur. Her adımı dikkatle uygulayın.


Kurulum Öncesi Kontrol Listesi

Başlamadan önce şunlara sahip olduğunuzdan emin olun:

  • Tüm gereksinimleri karşılayan bir sunucu
  • Sunucunuzun IP adresine işaret eden bir domain adı
  • Sunucunuza SSH erişimi (veya dosya yükleme için FTP)
  • Bir MySQL/MariaDB veritabanı ve kimlik bilgileri
  • Bir SMTP e-posta hesabı (Gmail, Mailgun, Amazon SES vb.)
  • Envato satın alma kodunuz (CodeCanyon siparişinden)

1. Adım: Dosyaları Sunucunuza Yükleyin

Seçenek A: SSH Kullanarak (Önerilen)

# Sunucunuza bağlanın
ssh user@your-server-ip

# Web dizinine gidin
cd /var/www

# ZIP dosyasını yükleyin ve çıkartın
# (ZIP'i SCP, SFTP veya geçici bir bağlantıdan wget ile yükleyin)
unzip feedbackpulse-saas.zip -d feedbackpulse-saas
cd feedbackpulse-saas

Seçenek B: FTP/SFTP Kullanarak

  1. FileZilla, WinSCP veya benzeri bir araçla sunucunuza bağlanın
  2. Web dizininize gidin (genellikle /var/www/ veya /home/user/public_html/)
  3. Çıkartılmış feedbackpulse-saas klasörünün tamamını yükleyin
  4. public/ alt dizininin erişilebilir olduğundan emin olun

Seçenek C: cPanel Dosya Yöneticisi Kullanarak

  1. cPanel'e giriş yapın
  2. Dosya Yöneticisi'ni açın → public_html'ye gidin (veya bir alt dizine)
  3. ZIP dosyasını yükleyin
  4. Yerinde çıkartın
  5. Önemli: Belge kökünü public/ klasörüne ayarlamanız gerekecek (bkz. Apache Yapılandırması)

2. Adım: Dosya İzinlerini Ayarlayın

cd /var/www/feedbackpulse-saas

# Sahipliği ayarlayın (www-data yerine web sunucusu kullanıcınızı yazın)
# Apache: www-data | Nginx: www-data veya nginx
sudo chown -R www-data:www-data .

# Dizin izinlerini ayarlayın
sudo find . -type d -exec chmod 755 {} \;
sudo find . -type f -exec chmod 644 {} \;

# Depolama ve önbelleği yazılabilir yapın
sudo chmod -R 775 storage bootstrap/cache

3. Adım: Web Sunucunuzu Yapılandırın

Web sunucunuz, proje kökü değil projenin içindeki public/ dizinini işaret etmelidir. Bu kritik bir güvenlik gereksinimidir.

Web sunucunuzu seçin:

Hızlı versiyon:

Apache:

DocumentRoot /var/www/feedbackpulse-saas/public

Nginx:

root /var/www/feedbackpulse-saas/public;

Yapılandırdıktan sonra web sunucunuzu yeniden başlatın:

# Apache
sudo systemctl restart apache2

# Nginx
sudo systemctl restart nginx

4. Adım: Depolama Sembolik Bağlantısı (Otomatik)

Web yükleyici, son adım sırasında depolama sembolik bağlantısını otomatik olarak oluşturmaya çalışır. Herhangi bir komut çalıştırmanıza gerek yoktur.

  • VPS/Özel Sunucu: Sembolik bağlantı otomatik olarak oluşturulur. Eylem gerekmez.
  • Paylaşımlı barındırma: Barındırıcınızda sembolik bağlantılar devre dışıysa FeedbackPulse yüklenen dosyaları (logolar, görseller) sunmak için yerleşik PHP yedek sistemini kullanır. Her şey çalışır — eylem gerekmez.

Yükleyici tamamlama sayfası, sembolik bağlantının oluşturulup oluşturulmadığını veya yedek sistemin etkin olup olmadığını bildirecektir.


5. Adım: Web Yükleyiciyi Çalıştırın

Tarayıcınızı açın ve şu adrese gidin:

https://yourdomain.com/install

Yükleyici sizi 5 adımda yönlendirecektir. Ayrıntılı ekran görüntüleri ve açıklamalar için bkz. Web Yükleyici Kılavuzu.

Hızlı özet:

Adım 1: Lisans Doğrulaması

  • Envato/CodeCanyon satın alma kodunuzu girin
  • Bu, Envato API ile lisansınızı doğrular
  • Envato kullanmıyorsanız bir atlama seçeneği olabilir

Adım 2: Gereksinim Kontrolü

  • Yükleyici otomatik olarak kontrol eder:
    • Bağımlılıklar (vendor/autoload.php var mı)
    • PHP sürümü (8.2+)
    • Gerekli PHP uzantıları
    • Dizin izinleri (depolama, bootstrap/cache)
    • Barındırma ortamı (paylaşımlı barındırmayı tespit eder, uyumluluk bilgisi gösterir)
  • Devam etmeden önce başarısız öğeleri düzeltin

Adım 3: Veritabanı Kurulumu

  • Veritabanı kimlik bilgilerinizi girin:
    • Sunucu: 127.0.0.1 (veya localhost)
    • Port: 3306
    • Veritabanı adı: feedbackpulse (önce oluşturun!)
    • Kullanıcı adı: veritabanı kullanıcı adınız
    • Şifre: veritabanı şifreniz
  • Yükleyici tüm geçişleri çalıştırır ve varsayılan verileri ekler

Önce veritabanını oluşturun:

CREATE DATABASE feedbackpulse CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;

Adım 4: Yönetici Hesabı

  • Süper yönetici hesabınızı oluşturun:
    • Ad: Adınız
    • E-posta: [email protected]
    • Şifre: Güçlü bir şifre (minimum 8 karakter)
  • Bu, tüm platformu yönetmek için kullanacağınız hesaptır

Adım 5: E-posta Yapılandırması

  • SMTP bilgilerinizi girin:
    • Sunucu: örn. smtp.gmail.com
    • Port: 587 (TLS) veya 465 (SSL)
    • Kullanıcı adı: SMTP kullanıcı adınız
    • Şifre: SMTP şifreniz veya uygulama şifreniz
    • Şifreleme: TLS (önerilen)
    • Gönderen Adresi: [email protected]
  • Bunu atlayabilir ve Admin Ayarları'ndan daha sonra yapılandırabilirsiniz

Tamamlama

  • Oturum ve önbellek sürücülerini üretim için database'e geçirir
  • Web tabanlı cron uç noktası için CRON_TOKEN oluşturur
  • storage/installed.lock dosyası oluşturur (yeniden çalışmayı önler)
  • Cron işi kurulum talimatları (hem CLI hem de URL seçenekleri) ve sonraki adımlarla birlikte bir başarı sayfası gösterir

6. Adım: Cron İşini Ayarlayın

FeedbackPulse'un zamanlanmış görevleri çalıştırmak için bir cron işine ihtiyacı vardır. Bu şunlar için gereklidir:

  • E-posta özetleri gönderme (günlük/haftalık)
  • Deneme süresi dolmalarını işleme
  • Veri saklama politikalarını uygulama
  • Kullanım uyarıları gönderme
  • YZ anomali tespitini çalıştırma
  • Zamanlanmış raporlar gönderme

Seçenek 1 — CLI komutu (VPS / Özel Sunucu):

crontab -e

Şu satırı ekleyin:

* * * * * cd /var/www/feedbackpulse-saas && php artisan schedule:run >> /dev/null 2>&1

Seçenek 2 — URL/wget (Paylaşımlı Barındırma):

Barındırma paneliniz yalnızca URL tabanlı cron'u destekliyorsa, web cron uç noktasını kullanın (CRON_TOKEN kurulum sırasında otomatik oluşturulur ve tamamlama sayfasında gösterilir):

wget -q -O /dev/null "https://yourdomain.com/cron/run?token=YOUR_CRON_TOKEN"

İpucu: Yükleyici tamamlama sayfası, gerçek sunucu yolunuz ve token'ınızla önceden doldurulmuş her iki seçeneği de gösterir. Oradan kopyalayın!

Daha fazla ayrıntı için bkz. Cron İşleri ve Kuyruk İşçileri.


7. Adım: SSL Yapılandırın (HTTPS)

FeedbackPulse kimlik doğrulama ve ödeme verilerini işlediğinden güvenlik için HTTPS şiddetle önerilir.

Let's Encrypt Kullanarak (Ücretsiz)

# Certbot'u yükleyin
sudo apt install certbot python3-certbot-nginx # Nginx için
# VEYA
sudo apt install certbot python3-certbot-apache # Apache için

# Sertifika alın
sudo certbot --nginx -d yourdomain.com # Nginx için
# VEYA
sudo certbot --apache -d yourdomain.com # Apache için

Certbot, web sunucunuzu HTTPS için otomatik olarak yapılandıracak ve otomatik yenilemeyi kuracaktır.

Daha fazla ayrıntı için bkz. SSL Sertifikaları.


8. Adım: Kurulumu Doğrulayın

Bu kontrol listesini tamamlayın:

KontrolNasılBeklenen Sonuç
Açılış sayfası yükleniyorhttps://yourdomain.com adresini ziyaret edinAçılış sayfasını görün
Giriş çalışıyorhttps://yourdomain.com/login adresini ziyaret edinSüper yönetici kimlik bilgileriyle giriş yapın
Yönetici panelihttps://yourdomain.com/admin/dashboard adresini ziyaret edinYönetici dashboard'unu görün
Depolama bağlantısıhttps://yourdomain.com/storage/ adresini ziyaret edin404 hatası yok
Sağlık kontrolühttps://yourdomain.com/up adresini ziyaret edin"OK" metni görün
Cron çalışıyorAdmin → Ayarlar'ı kontrol edinCron uyarısı yok
E-posta çalışıyorAdmin → Ayarlar → E-posta → Test GönderTest e-postası alın

Kurulum Sonrası Adımlar

Kurulum tamamlandıktan sonra:

  1. Abonelik planlarını inceleyinAdmin → Planlar (fiyatlandırma, sınırlar, özellikleri düzenleyin)
  2. Ödeme ağ geçitlerini yapılandırınAdmin → Ayarlar → Ödemeler (Stripe/PayPal API anahtarları)
  3. Açılış sayfasını özelleştirinAdmin → Açılış Sayfası
  4. E-posta teslimatını test edinAdmin → Ayarlar → E-posta → Test E-postası Gönder
  5. Joker karakter DNS'i kurun (isteğe bağlı) — kiracı alt etki alanları için. Bkz. Joker Karakter DNS Kurulumu.
  6. İlk kiracınızı oluşturun — gizli pencerede /register adresinde kayıt olun

Kurulum Sorun Giderme

SorunÇözüm
Boş beyaz sayfaHatalar için storage/logs/laravel.log dosyasını kontrol edin. Genellikle izin sorunudur.
500 Sunucu HatasıHata ayıklama modunu geçici olarak etkinleştirin: .env dosyasında APP_DEBUG=true ayarlayın, ardından hatayı kontrol edin.
"Sınıf bulunamadı"vendor/ dizininin mevcut ve bütünlüğünün korunmuş olduğundan emin olun. Gerekirse indirilen paketten yeniden yükleyin.
Veritabanı bağlantısı reddedildiKimlik bilgilerini doğrulayın, MySQL'in çalıştığından emin olun, localhost ile 127.0.0.1 farkını kontrol edin.
Yükleyici yüklenmiyorWeb kökünün public/ dizinini işaret ettiğinden emin olun.
CSS/JS yüklenmiyorTarayıcı önbelleğini temizleyin. Görseller eksikse, depolama yedek sistemi paylaşımlı barındırmada otomatik olarak devreye girer. VPS'te, sembolik bağlantıyı yeniden oluşturmak için süper yönetici olarak /update adresini ziyaret edin.
İzin reddedildi2. Adım'daki chown ve chmod komutlarını tekrar çalıştırın.

Daha fazlası için bkz. Sorun Giderme.


Sonraki Adımlar