İçeriğe geç

Kurulum ve sağlamlaştırma

Akaunting sunucunuza kuruluyor; biz çıkmadan cron da mail de kanıtlanmış oluyor.

Başarısız Akaunting kurulumlarının çoğu ne Akaunting'in ne sizin hatanız. Onu çalıştıramayan bir sunucu ve bunu açıkça söylemeyen bir kurulum sihirbazı var ortada. Önce sunucuyu yazılı olarak kontrol ediyoruz; cevap "bu hostingde olmaz" ise bunu bir kurulum parası ödemeden önce duyuyorsunuz.

Kurulumlar neden başarısız oluyor

Bu işin on iki bozulma biçimi var ve hepsi kayıtlı.

Bunlar hata takip sisteminden ve forumdan, Türkçe kategorisi dahil, gerçek bildirimler. Resmî kurulum dokümanının hatalı olduğu biliniyor — tam bu başlıkla açılmış ve hâlâ açık duran bir kayıt var, üstelik yeni de değil.

Sunucu tarafı

  • "Ask your hosting provider to use PHP 8.1.0 or higher" — site zaten 8.2'de çalışırken.
  • CLI PHP web PHP'siyle aynı derleme değil ve komut php değil php8.2.
  • Güvenlik gerekçesiyle kapatılmış proc_open ve proc_get_status, ki kurulumu olduğu yerde durduruyor.
  • Softaculous ya da Plesk, dil listesi gelmeden donan bir sihirbaz başlatıyor.
  • public_html içine kurulmuş ve sitenin geri kalanını da yanında götürmüş.
  • Azami çalışma süresi kurulumu migration'ın ortasında kesiyor.

Kurulum tarafı

  • 3. adım, yönetici oluşturma: hata yok, log boş, tarayıcıda hiçbir şey yok.
  • php artisan install sonunda "Not able to create a new user."
  • "Unsupported cipher or incorrect key length" — APP_KEY hiç üretilmemiş.
  • Zaman aşımına düşen kurulum veritabanını yarı migrate bırakıyor, tekrar denemede zaten var olan tablo hata veriyor.
  • Kod /public/css yolunu kullandığı için, artisan serve ile çalışırken varlıklar 404 dönüyor.
  • node-gyp Node 22'de patlıyor, Node 18'de çalışıyor ve bunu söyleyen bir mesaj yok.

Ön kontrol

Kimse bir şey satın almadan önce sunucuyu kontrol ediyoruz.

Elinizdeki sunucu için yazılı bir karar: olur ya da olmaz. Olmaz ise neyin değişmesi gerektiğinin listesini alıyorsunuz — ve o liste sizin; hosting firmanıza da, bize de, başka bir sağlayıcıya da götürebilirsiniz.

  • HTTP ve CLI için PHP sürümü, ayrı ayrı — çünkü sık sık aynı değiller
  • Zamanlayıcının fiilen hangi komutu çağıracağı: php, php8.2 ya da tam yol
  • 13 zorunlu eklentinin tamamı: bcmath, ctype, curl, dom, fileinfo, gd, intl, json, mbstring, openssl, tokenizer, xml, zip
  • proc_open ve proc_get_status — Türkiye'deki paylaşımlı hostinglerin en sık kapattığı iki fonksiyon
  • memory_limit, max_execution_time, upload_max_filesize ve insanların gözden kaçırdığı ayrı uygulama içi ek dosya sınırı
  • mod_rewrite ya da nginx karşılığı ve kök dizinin public klasörüne çevrilebiliyor olması
  • Veritabanı motoru ve sürümü: MySQL, MariaDB ya da PostgreSQL — ve gerçekten hangisinde olmanız gerektiği
  • akaunting.com'a dışa doğru HTTPS erişimi, çünkü uygulama sürüm kontrolü ve uygulama kurulumu için dışarı çıkıyor
  • storage klasörü için disk payı — yükleyeceğiniz her ek dosya orada duruyor
  • Gerçek bir cron kaydı açılabiliyor mu, yoksa yalnızca siteye girildiğinde çalışan sözde bir cron mu var

Ne yapıyoruz

Beş gün ve sonunda bir işletim kılavuzu.

İki katman: bizim kurduğumuz temiz bir sunucu ya da elinizdeki hostingin olduğu gibi devralınması. Adımlar aynı. İkinci katman daha uzun sürüyor, çünkü ilk iş orada zaten ne olduğunu bulmak.

  1. 01

    Ön kontrol ve olur/olmaz kararı

    1. gün

    Yukarıdaki liste, sizin sunucunuza karşı çalıştırılıyor ve yazılı bir karara bağlanıyor. Hostinginiz Akaunting'i düzgün çalıştıramıyorsa bunu burada, kurulum satın alınmadan önce söylüyoruz.

  2. 02

    Kurma veya devralma

    1–2. gün

    PHP-FPM ile Nginx ya da Apache, veritabanı, otomatik yenilenen TLS, bir deploy kullanıcısı ve kök dizinin public klasörüne alınması. Ya da mevcut Plesk, cPanel veya Docker kurulumunuz, aynı standarda getirilerek.

  3. 03

    Kurulum ve yapılandırma

    2–3. gün

    Zaman sınırı yükseltilmiş artisan kurulumu, böylece migration'ın ortasında ölemiyor. APP_KEY üretilmiş, APP_URL doğru, APP_DEBUG kapalı. Bir de ikinci, acil durum yönetici hesabı — çünkü kendinize yanlış rolü verip rol ekranından kilitlenmek en sık gelen destek çağrılarından biri.

  4. 04

    Cron ve mail'in kanıtlanması

    3–4. gün

    Gerçek bir cron kaydı, ardından tekrarlayan bir fatura ve bir hatırlatma tetiklenip gelişini izliyorsunuz. SPF, DKIM ve DMARC'lı SMTP ve gerçek bir gelen kutusuna düşen bir fatura PDF'i — üretilen fatura ekleri spam işaretlenebiliyor ve bunu bir müşterinizde yaşamaktan önce çözmek daha ucuz.

  5. 05

    Yedek, geri yükleme testi, devir

    4–5. gün

    Veritabanı ve storage klasörü belirli bir takvimde; sonra ayrı bir ortama fiilen geri yükleme yapılıyor ve ekler kontrol ediliyor, çünkü yalnızca veritabanı alan bir yedek bütün dosyaları sessizce kaybediyor. Ardından işletim kılavuzu, yenileme tarihleriyle uygulama envanteri ve bir eğitim çağrısı.

Sonunda elinizde ne var

  • Baştan beri sizde olan root ya da sudo erişimi; bizimki istediğiniz an kaldırılıyor
  • Devraldığınız değil, satır satır üzerinden geçtiğimiz bir env dosyası
  • Okuyabildiğiniz bir cron kaydı, sizin seçtiğiniz bir takvimde
  • Geri yüklemesi gözünüzün önünde bir kez yapılmış bir yedek işi
  • İki yönetici hesabı; böylece rol hatası bir kesinti değil, bir aksaklık
  • Gerçek şirket, kullanıcı ve fatura sayınız için yazılı lisans katmanı beyanı
  • Genel dokümanın kopyası değil, sizin kurulumunuz için işletim kılavuzu
  • Kurulu her ücretli uygulamanın ne yaptığını ve ne zaman yenilendiğini gösteren envanter
Mesajınıza bir iş günü içinde dönüyoruz. Türkçe ve İngilizce.

Nasıl fiyatlanıyor

Sabit fiyat, iki katman ve tek başına satılan bir ön kontrol.

Ön kontrol bilinçli olarak ucuz ve ayrı satılıyor. Dürüst cevap hostinginizin değişmesi gerektiğiyse, bunu bir kurulum satın alırken değil, satın almadan önce öğrenmelisiniz.

Sunucu ön kontrolü

Durum tespitinden sonra teklif

Liste, mevcut sunucunuza karşı çalıştırılıyor; olur/olmaz kararı ve neyin değişmesi gerektiğinin listesi. Devam ederseniz kurulum bedelinden tamamen düşülüyor.

  • 1–2 gün
  • Sizde kalan yazılı karar
  • Başka hiçbir şeye bağlanma yok

Temiz sunucuya kurulum

Durum tespitinden sonra teklif

Kendi bulut hesabınızdaki bir VPS'te bütün yığını sıfırdan kuruyor, sonra kurulumu yapıyor, kanıtlıyor ve devrediyoruz. Öngörülebilir katman ve önerdiğimiz katman.

  • Erişimden sonra 3–5 gün
  • Geri yüklemesi test edilmiş yedekler
  • İşletim kılavuzu ve eğitim çağrısı

Mevcut hostingi devralma

Durum tespitinden sonra teklif

Paylaşımlı hostinginiz, Plesk, cPanel ya da Docker kurulumunuz aynı standarda getiriliyor. Daha yüksek fiyatlı, çünkü ilk gün orada zaten ne olduğunu bulmakla geçiyor.

  • 5 gün; ön kontrol olumsuzsa daha uzun
  • Kurtarılamıyorsa bir taşıma planı
  • Aynı devir paketi
Faturayı kesen tüzel kişi: Lokum Tech LLC
Sunucu, alan adı ve lisans sizin adınızda kalıyor
Akaunting lisansı ve uygulamaları liste fiyatından size ait
Her işten önce yazılı kapsam

Bu paketlerin başlangıç fiyatları netleşiyor. Görüşmede sorun; aralık değil, net bir sayı veriyoruz.

Kapsam

Kapsam içi ve kesin olarak kapsam dışı.

Sessizce bir veri göçüne dönüşen kurulum, sabit fiyatların sabit olmaktan çıkma biçimidir. Sınır burada.

Dahil

  • Kendi bulut hesabınızda kurulan ve sağlamlaştırılan bir VPS
  • Docker — resmî imaj yerine kendi compose yapımızla, çünkü o imaj şu an uygulamanın aylarca gerisinde
  • TLS, cron, SMTP, yedekler, geri yükleme testi ve iki yönetici hesabı
  • Satın almış olduğunuz ücretli uygulamaların kurulumu ve yapılandırılması
  • Mevcut bir kurulumun daha iyi bir sunucuya taşınması, ekler dahil
  • Üzerine bir şey kurmadan önce yazılı lisans katmanı beyanı

Dahil değil

  • Bizim sattığımız hosting. Sunucu sizin hesabınız, sizin kartınız, sizin anahtarlarınız.
  • Akaunting lisansının veya herhangi bir App Store uygulamasının satışı.
  • Başka bir muhasebe programından veri göçü. Bu ayrı bir iş ve ücretli bir veri tespitiyle başlıyor.
  • Özel modül ya da e-Fatura işleri; onların kendi sayfaları ve kendi fiyatları var.
  • Bakım anlaşması almadığınız sürece sürekli izleme.
  • MySQL Group Replication üzerinde yüksek erişilebilirlik. Akaunting'in dört tablosunun birincil anahtarı olmadığı bildirilmiş; çalıştığını vaat etmiyoruz.

Net cevaplar

Kurulumdan önce gelen sorular.

Paylaşımlı hostingimizde çalışır mı?
Bazen. Kararı veren iki şey var: CLI PHP web PHP'siyle aynı mı ve proc_open ile proc_get_status açık mı. Türkiye'deki paylaşımlı hostingler bu ikisini baktığımız her yerden daha sık kapatıyor ve bunlar olmadan artisan tabanlı kurulum da tek tuşla güncelleme de başarısız oluyor. Ön kontrol bunu sizin hostinginiz için bir iki günde cevaplıyor; olmaz cevabı verdiğimiz de oldu.
Cron zorunlu diyorsunuz. Neyin için zorunlu?
Tekrarlayan faturalar, fatura hatırlatmaları ve zamanlanmış raporlar. Üçü de zamanlayıcıyla çalışıyor ve zamanlayıcı kurulmadığında üçü de sessizce hiçbir şey yapmıyor — hata yok, log yok, e-posta yok. "Akaunting bozuk" bildirimlerinin en yaygın nedenlerinden biri bu ve neredeyse her seferinde eksik bir cron kaydı çıkıyor. Bu yüzden kurulmuş demekle yetinmiyor, gözünüzün önünde tekrarlayan bir fatura tetikliyoruz.
VPS mi gerekiyor, Docker yeter mi?
İkisi de olur. Resmî Docker imajını olduğu gibi kullanmıyoruz: deposu uygulamanın kendisine göre çok daha uzun süredir güncellenmemiş durumda ve üzerinde bir yığın açık kayıt var. Bu yüzden sürümleri sabitlenmiş kendi compose yapımızı veriyoruz. Zaten konteyner çalıştırıyorsanız ucuz olan yol bu. Çalıştırmıyorsanız, düz bir VPS'i sizin sistem yöneticinizin gecenin ikisinde anlaması daha kolay.
Cron ve mail için "kanıtlanmış" ne demek?
Olup bittiğini görmeniz demek. Vadesi yakın tarihli, tekrarlayan bir fatura oluşturuyoruz ve siz görüşmedeyken zamanlayıcının onu tetiklemesini bekliyoruz. Belirttiğiniz bir adrese fatura PDF'i gönderiyoruz ve başlıklarda SPF ile DKIM'e bakıyoruz. Çalıştığını göremediğiniz yapılandırma, kimsenin test etmediği yapılandırmadır.
Mevcut verilerimizi taşıyabilir miyiz?
Genellikle evet ama bu ayrı bir iş ve önce ücretli bir tespit yapılıyor; çünkü bugüne kadar birbirine benzeyen iki tanesini görmedik. Şimdiden bilmeye değen bir tuzak: ekler veritabanında değil diskte duruyor, dolayısıyla yalnızca veritabanını alan bir yedek yüklenmiş her dosyayı geride bırakıyor. Mevcut yedeğiniz bir SQL dökümüyse ekleriniz onun içinde değil.
Ne kadar sürede canlıya çıkıyoruz?
Cron, mail, yedek ve geri yükleme testi olan temiz bir kurulum için, sunucu erişimi elimize geçtikten sonra üç ile beş iş günü. Ön kontrol olumsuz çıkıp hostingin değişmesi gerekiyorsa yaklaşık bir hafta, yapılandırılacak ücretli uygulamalar varsa biraz daha ekleyin. Size bunun bir öğleden sonra süreceğini söyleyen olursa, geri yüklemeyi kimin test ettiğini sorun.

Her iyi ürün bir sohbetle başlar.

Canınızı sıkan süreci anlatın. Doğru adres olup olmadığımızı dürüstçe söyleriz — değilsek, kimin olduğunu da.