{"id":32013,"date":"2025-10-16T18:41:05","date_gmt":"2025-10-16T15:41:05","guid":{"rendered":"https:\/\/fatihsoysal.com\/blog\/?p=32013"},"modified":"2025-10-16T18:41:05","modified_gmt":"2025-10-16T15:41:05","slug":"ghostu-komut-satirindan-yapilandirma-ve-bakimi","status":"publish","type":"post","link":"https:\/\/fatihsoysal.com\/blog\/ghostu-komut-satirindan-yapilandirma-ve-bakimi\/","title":{"rendered":"Ghost&#8217;u Komut Sat\u0131r\u0131ndan Yap\u0131land\u0131rma ve Bak\u0131m\u0131"},"content":{"rendered":"<p><body><\/p>\n<h2>Ghost&#8217;u Komut Sat\u0131r\u0131ndan Yap\u0131land\u0131rma ve Bak\u0131m\u0131<\/h2>\n<h2>Giri\u015f<\/h2>\n<p>Ghost, modern web siteleri ve bloglar i\u00e7in tasarlanm\u0131\u015f, a\u00e7\u0131k kaynakl\u0131, h\u0131zl\u0131 ve esnek bir yay\u0131nc\u0131l\u0131k platformudur. Geleneksel i\u00e7erik y\u00f6netim sistemlerinden (CMS) farkl\u0131 olarak, Ghost minimalist bir yakla\u015f\u0131mla geli\u015ftirilmi\u015ftir ve esas olarak yazmaya odaklanm\u0131\u015ft\u0131r. Markdown deste\u011fi, temiz bir aray\u00fcz ve performans odakl\u0131 yap\u0131s\u0131yla dikkat \u00e7eker. Ghost&#8217;un g\u00fcc\u00fcn\u00fcn \u00f6nemli bir k\u0131sm\u0131, komut sat\u0131r\u0131 aray\u00fcz\u00fc (CLI) \u00fczerinden kolayca y\u00f6netilebilmesinden gelir. Bu makale, Ghost&#8217;u bir sunucuda komut sat\u0131r\u0131 arac\u0131l\u0131\u011f\u0131yla nas\u0131l yap\u0131land\u0131raca\u011f\u0131n\u0131z\u0131, kuraca\u011f\u0131n\u0131z\u0131, g\u00fcncelleyece\u011finizi, sorun giderece\u011finizi ve genel olarak nas\u0131l bak\u0131m\u0131n\u0131 yapaca\u011f\u0131n\u0131z\u0131 ayr\u0131nt\u0131l\u0131 olarak ele alacakt\u0131r. Komut sat\u0131r\u0131 becerileri, Ghost kurulumunuz \u00fczerinde tam kontrol sa\u011flaman\u0131n ve sorunlar\u0131 h\u0131zl\u0131ca \u00e7\u00f6zmenin anahtar\u0131d\u0131r.<\/p>\n<h2>\u00d6n Gereksinimler<\/h2>\n<p>Ghost kurulumuna ba\u015flamadan \u00f6nce, sunucunuzda belirli yaz\u0131l\u0131mlar\u0131n kurulu ve yap\u0131land\u0131r\u0131lm\u0131\u015f olmas\u0131 gerekmektedir. Bu \u00f6n gereksinimler, Ghost&#8217;un sorunsuz \u00e7al\u0131\u015fmas\u0131 i\u00e7in temel te\u015fkil eder. Genellikle Ubuntu veya Debian tabanl\u0131 bir Linux sunucusu tercih edilir, ancak Ghost di\u011fer Linux da\u011f\u0131t\u0131mlar\u0131nda da \u00e7al\u0131\u015fabilir.<\/p>\n<h3>Node.js ve npm<\/h3>\n<p>Ghost, Node.js \u00fczerinde \u00e7al\u0131\u015fan bir uygulamad\u0131r. Bu nedenle, sunucunuzda belirli bir Node.js s\u00fcr\u00fcm\u00fcn\u00fcn kurulu olmas\u0131 \u015fartt\u0131r. Ghost&#8217;un resmi dok\u00fcmantasyonu genellikle en son LTS (Uzun S\u00fcreli Destek) s\u00fcr\u00fcm\u00fcn\u00fc \u00f6nerir. Node.js ile birlikte gelen npm (Node Package Manager) de paket ba\u011f\u0131ml\u0131l\u0131klar\u0131n\u0131 y\u00f6netmek i\u00e7in gereklidir.<br \/>\nKurulum \u00f6rne\u011fi (Ubuntu i\u00e7in):<\/p>\n<pre><code class=\"language-bash\">curl -sL https:\/\/deb.nodesource.com\/setup_lts.x | sudo -E bash\nsudo apt-get install -y nodejs<\/code><\/pre>\n<h3>MySQL\/MariaDB<\/h3>\n<p>Ghost, i\u00e7erik verilerini depolamak i\u00e7in bir veritaban\u0131na ihtiya\u00e7 duyar. MySQL veya MariaDB, Ghost ile uyumlu pop\u00fcler veritaban\u0131 sistemleridir. Kurulum \u00f6ncesinde bir veritaban\u0131 sunucusu kurmal\u0131 ve Ghost i\u00e7in \u00f6zel bir veritaban\u0131 kullan\u0131c\u0131s\u0131 ile bo\u015f bir veritaban\u0131 olu\u015fturmal\u0131s\u0131n\u0131z.<br \/>\nKurulum \u00f6rne\u011fi (Ubuntu i\u00e7in):<\/p>\n<pre><code class=\"language-bash\">sudo apt-get install -y mysql-server\nsudo mysql_secure_installation\n<h2>MySQL i\u00e7ine girip kullan\u0131c\u0131 ve veritaban\u0131 olu\u015fturma<\/h2>\nsudo mysql -u root -p\nCREATE DATABASE ghost_db;\nCREATE USER 'ghost_user'@'localhost' IDENTIFIED BY 'your_password';\nGRANT ALL PRIVILEGES ON ghost_db.* TO 'ghost_user'@'localhost';\nFLUSH PRIVILEGES;\nEXIT;<\/code><\/pre>\n<h3>Nginx\/Apache (Ters Proxy)<\/h3>\n<p>Ghost, varsay\u0131lan olarak Node.js&#8217;in dahili web sunucusunu kullan\u0131r. Ancak, \u00fcretim ortamlar\u0131nda performans\u0131 ve g\u00fcvenli\u011fi art\u0131rmak i\u00e7in Nginx veya Apache gibi bir ters proxy sunucusu kullan\u0131lmas\u0131 \u015fiddetle tavsiye edilir. Bu, SSL sonland\u0131rma, \u00f6nbellekleme ve birden fazla site bar\u0131nd\u0131rma gibi \u00f6zellikleri y\u00f6netmenize olanak tan\u0131r.<br \/>\nKurulum \u00f6rne\u011fi (Nginx i\u00e7in, Ubuntu):<\/p>\n<pre><code class=\"language-bash\">sudo apt-get install -y nginx\nsudo ufw allow 'Nginx Full'<\/code><\/pre>\n<h3>Sistem Kullan\u0131c\u0131s\u0131 ve \u0130zinler<\/h3>\n<p>Ghost&#8217;u root kullan\u0131c\u0131s\u0131 olarak \u00e7al\u0131\u015ft\u0131rmak g\u00fcvenlik riski ta\u015f\u0131r. Bu nedenle, Ghost i\u00e7in \u00f6zel bir sistem kullan\u0131c\u0131s\u0131 olu\u015fturulmas\u0131 ve bu kullan\u0131c\u0131n\u0131n gerekli dosya izinlerine sahip olmas\u0131 \u00f6nerilir.<\/p>\n<pre><code class=\"language-bash\">sudo adduser ghost_user\nsudo usermod -aG sudo ghost_user # (iste\u011fe ba\u011fl\u0131, kurulum i\u00e7in kolayl\u0131k sa\u011flar)<\/code><\/pre>\n<h2>Ghost CLI Kurulumu<\/h2>\n<p>Ghost CLI (Command Line Interface), Ghost kurulumlar\u0131n\u0131 y\u00f6netmek i\u00e7in geli\u015ftirilmi\u015f g\u00fc\u00e7l\u00fc bir ara\u00e7t\u0131r. Global olarak kurulmas\u0131, herhangi bir dizinden Ghost komutlar\u0131n\u0131 \u00e7al\u0131\u015ft\u0131rman\u0131za olanak tan\u0131r.<\/p>\n<h3>Ghost CLI&#8217;y\u0131 Y\u00fckleme<\/h3>\n<p>npm kullanarak Ghost CLI&#8217;y\u0131 global olarak y\u00fckleyebilirsiniz:<\/p>\n<pre><code class=\"language-bash\">sudo npm install -g ghost-cli@latest<\/code><\/pre>\n<p><code>sudo<\/code> kullanmak, CLI&#8217;n\u0131n sistem genelinde eri\u015filebilir olmas\u0131n\u0131 sa\u011flar.<\/p>\n<h3>Kurulumu Kontrol Etme<\/h3>\n<p>Kurulumun ba\u015far\u0131l\u0131 olup olmad\u0131\u011f\u0131n\u0131 kontrol etmek i\u00e7in Ghost CLI s\u00fcr\u00fcm\u00fcn\u00fc sorgulayabilirsiniz:<\/p>\n<pre><code class=\"language-bash\">ghost -v<\/code><\/pre>\n<p>Bu komut, kurulu Ghost CLI s\u00fcr\u00fcm\u00fcn\u00fc g\u00f6stermelidir.<\/p>\n<h2>Yeni Bir Ghost Kurulumu<\/h2>\n<p>Ghost CLI ile yeni bir Ghost kurulumu yapmak olduk\u00e7a basittir. \u0130ster yerel geli\u015ftirme ortam\u0131 i\u00e7in olsun ister bir \u00fcretim sunucusu i\u00e7in, CLI size ad\u0131m ad\u0131m rehberlik eder.<\/p>\n<h3>Dizin Olu\u015fturma ve Yetkilendirme<\/h3>\n<p>Ghost&#8217;u kurmak istedi\u011finiz dizini olu\u015fturun ve do\u011fru izinleri ayarlay\u0131n. Bu ad\u0131m, Ghost&#8217;un dosya sistemi \u00fczerinde do\u011fru \u015fekilde \u00e7al\u0131\u015fabilmesi i\u00e7in kritik \u00f6neme sahiptir.<\/p>\n<pre><code class=\"language-bash\">sudo mkdir -p \/var\/www\/ghost\nsudo chown ghost_user:ghost_user \/var\/www\/ghost\nsudo chmod 775 \/var\/www\/ghost\ncd \/var\/www\/ghost<\/code><\/pre>\n<p><code>ghost_user<\/code> yerine kendi \u00f6zel Ghost kullan\u0131c\u0131n\u0131z\u0131n ad\u0131n\u0131 yazmal\u0131s\u0131n\u0131z.<\/p>\n<h3>Ghost Kurulum Komutu<\/h3>\n<p><code>ghost install<\/code> komutu, Ghost&#8217;u kurman\u0131n anahtar\u0131d\u0131r. \u0130ki ana modda \u00e7al\u0131\u015ft\u0131r\u0131labilir:<\/p>\n<h4>Geli\u015ftirme Ortam\u0131 \u0130\u00e7in Kurulum (Local)<\/h4>\n<p>Yerel bilgisayar\u0131n\u0131zda veya bir sanal makinede geli\u015ftirme yapmak i\u00e7in idealdir. Veritaban\u0131 olarak SQLite kullan\u0131r ve Nginx\/SSL yap\u0131land\u0131rmas\u0131 yapmaz.<\/p>\n<pre><code class=\"language-bash\">ghost install local<\/code><\/pre>\n<p>Bu komut, Ghost&#8217;u 2368 portunda \u00e7al\u0131\u015ft\u0131r\u0131r ve genellikle <code>http:\/\/localhost:2368<\/code> adresinden eri\u015filebilir olur.<\/p>\n<h4>\u00dcretim Ortam\u0131 \u0130\u00e7in Kurulum<\/h4>\n<p>Bir canl\u0131 sunucuya Ghost kurarken bu modu kullan\u0131rs\u0131n\u0131z. CLI, size veritaban\u0131, Nginx, SSL ve sistemd ba\u015flatma gibi konularda sorular sorarak rehberlik eder.<\/p>\n<pre><code class=\"language-bash\">ghost install<\/code><\/pre>\n<p>Bu komutu \u00e7al\u0131\u015ft\u0131rd\u0131\u011f\u0131n\u0131zda, CLI size a\u015fa\u011f\u0131daki gibi sorular soracakt\u0131r:<br \/>\n*   <strong>Enter your blog URL:<\/strong> Blogunuzun herkese a\u00e7\u0131k URL&#8217;si (\u00f6rn: <code>https:\/\/blog.example.com<\/code>). SSL kullanmay\u0131 planl\u0131yorsan\u0131z <code>https<\/code> ile ba\u015flamas\u0131 \u00f6nemlidir.<br \/>\n*   <strong>MySQL hostname:<\/strong> Veritaban\u0131 sunucunuzun adresi (genellikle <code>localhost<\/code>).<br \/>\n*   <strong>MySQL username:<\/strong> Daha \u00f6nce olu\u015fturdu\u011funuz Ghost veritaban\u0131 kullan\u0131c\u0131s\u0131n\u0131n ad\u0131 (\u00f6rn: <code>ghost_user<\/code>).<br \/>\n*   <strong>MySQL password:<\/strong> Ghost veritaban\u0131 kullan\u0131c\u0131s\u0131n\u0131n \u015fifresi.<br \/>\n*   <strong>MySQL database name:<\/strong> Daha \u00f6nce olu\u015fturdu\u011funuz Ghost veritaban\u0131n\u0131n ad\u0131 (\u00f6rn: <code>ghost_db<\/code>).<br \/>\n*   <strong>Do you wish to set up Nginx?<\/strong> (Evet\/Hay\u0131r) Ters proxy olarak Nginx&#8217;i yap\u0131land\u0131rmak isteyip istemedi\u011finiz. Kesinlikle <code>Evet<\/code> se\u00e7melisiniz.<br \/>\n*   <strong>Do you wish to set up SSL with Let&#8217;s Encrypt?<\/strong> (Evet\/Hay\u0131r) \u00dccretsiz SSL sertifikas\u0131 kurmak isteyip istemedi\u011finiz. Canl\u0131 siteler i\u00e7in <code>Evet<\/code> se\u00e7ilmesi tavsiye edilir.<br \/>\n*   <strong>Enter your email address (for Let&#8217;s Encrypt):<\/strong> Let&#8217;s Encrypt i\u00e7in e-posta adresiniz.<br \/>\n*   <strong>Do you wish to set up Systemd?<\/strong> (Evet\/Hay\u0131r) Ghost&#8217;u bir sistem servisi olarak yap\u0131land\u0131rmak isteyip istemedi\u011finiz. <code>Evet<\/code> se\u00e7mek, Ghost&#8217;un sunucu yeniden ba\u015flad\u0131\u011f\u0131nda otomatik olarak ba\u015flamas\u0131n\u0131 sa\u011flar.<br \/>\n*   <strong>Do you wish to start Ghost?<\/strong> (Evet\/Hay\u0131r) Kurulum tamamland\u0131ktan sonra Ghost&#8217;u hemen ba\u015flatmak isteyip istemedi\u011finiz. <code>Evet<\/code> se\u00e7erek kurulumu tamamlay\u0131n.<\/p>\n<p>Bu ad\u0131mlar\u0131 tamamlad\u0131ktan sonra Ghost kurulacak, Nginx yap\u0131land\u0131r\u0131lacak, SSL sertifikas\u0131 al\u0131nacak ve Ghost bir sistem servisi olarak ba\u015flat\u0131lacakt\u0131r. Kurulumun sonunda, y\u00f6netici paneline eri\u015fmek i\u00e7in bir URL verilecektir (\u00f6rn: <code>https:\/\/blog.example.com\/ghost\/<\/code>).<\/p>\n<h2>Mevcut Bir Ghost Kurulumunu Y\u00f6netme<\/h2>\n<p>Ghost CLI, mevcut bir Ghost kurulumunu y\u00f6netmek i\u00e7in bir dizi kullan\u0131\u015fl\u0131 komut sunar. Bu komutlar, g\u00fcnl\u00fck bak\u0131m i\u015flemlerinden acil durum m\u00fcdahalelerine kadar geni\u015f bir yelpazede kullan\u0131l\u0131r.<\/p>\n<h3>Ghost Durumunu Kontrol Etme<\/h3>\n<p>Bir Ghost kurulumunun mevcut durumunu \u00f6\u011frenmek i\u00e7in <code>ghost status<\/code> komutunu kullanabilirsiniz. Bu komut, Ghost&#8217;un \u00e7al\u0131\u015f\u0131p \u00e7al\u0131\u015fmad\u0131\u011f\u0131n\u0131, hangi Node.js s\u00fcr\u00fcm\u00fcn\u00fc kulland\u0131\u011f\u0131n\u0131, URL&#8217;sini ve di\u011fer \u00f6nemli bilgileri g\u00f6sterir.<\/p>\n<pre><code class=\"language-bash\">ghost status<\/code><\/pre>\n<p>E\u011fer birden fazla Ghost kurulumunuz varsa, belirli bir dizinde bu komutu \u00e7al\u0131\u015ft\u0131rmak o dizindeki Ghost kurulumunun durumunu g\u00f6sterecektir.<\/p>\n<h3>Ghost&#8217;u Ba\u015flatma, Durdurma ve Yeniden Ba\u015flatma<\/h3>\n<p>Ghost servisini y\u00f6netmek i\u00e7in temel komutlard\u0131r. \u00d6zellikle yap\u0131land\u0131rma de\u011fi\u015fikliklerinden sonra veya sorun giderme s\u0131ras\u0131nda s\u0131k\u00e7a kullan\u0131l\u0131rlar.<br \/>\n*   <strong>Ba\u015flatma:<\/strong> Ghost&#8217;u ba\u015flat\u0131r.<\/p>\n<pre><code class=\"language-bash\">ghost start<\/code><\/pre>\n<p>*   <strong>Durdurma:<\/strong> Ghost&#8217;u durdurur.<\/p>\n<pre><code class=\"language-bash\">ghost stop<\/code><\/pre>\n<p>*   <strong>Yeniden Ba\u015flatma:<\/strong> Ghost&#8217;u durdurur ve tekrar ba\u015flat\u0131r. \u00c7o\u011fu yap\u0131land\u0131rma de\u011fi\u015fikli\u011finden sonra bu komutu kullanman\u0131z gerekir.<\/p>\n<pre><code class=\"language-bash\">ghost restart<\/code><\/pre>\n<h3>Ghost S\u00fcr\u00fcm\u00fcn\u00fc G\u00fcncelleme<\/h3>\n<p>Ghost&#8217;u g\u00fcncel tutmak, g\u00fcvenlik yamalar\u0131, yeni \u00f6zellikler ve performans iyile\u015ftirmeleri i\u00e7in kritik \u00f6neme sahiptir. G\u00fcncelleme i\u015flemine ba\u015flamadan \u00f6nce daima bir yedekleme yapman\u0131z \u015fiddetle tavsiye edilir.<\/p>\n<pre><code class=\"language-bash\">ghost update<\/code><\/pre>\n<p>Bu komut, Ghost CLI&#8217;n\u0131n kurulu oldu\u011fu Ghost s\u00fcr\u00fcm\u00fcn\u00fc kontrol eder ve en son kararl\u0131 s\u00fcr\u00fcme g\u00fcnceller. G\u00fcncelleme i\u015flemi s\u0131ras\u0131nda, CLI size Ghost&#8217;un mevcut s\u00fcr\u00fcm\u00fcn\u00fc yedeklemek isteyip istemedi\u011finizi sorabilir. Genellikle <code>Evet<\/code> se\u00e7ene\u011fini tercih etmek g\u00fcvenli\u011finiz i\u00e7in \u00f6nemlidir.<br \/>\nE\u011fer g\u00fcncelleme s\u0131ras\u0131nda bir hata olu\u015fursa veya belirli bir s\u00fcr\u00fcm\u00fc zorlamak isterseniz <code>--force<\/code> bayra\u011f\u0131n\u0131 kullanabilirsiniz, ancak bu dikkatli kullan\u0131lmal\u0131d\u0131r:<\/p>\n<pre><code class=\"language-bash\">ghost update --force<\/code><\/pre>\n<h3>Ghost Yap\u0131land\u0131rma Dosyalar\u0131n\u0131 Y\u00f6netme<\/h3>\n<p>Ghost&#8217;un yap\u0131land\u0131rma ayarlar\u0131, genellikle <code>config.[env].json<\/code> format\u0131ndaki dosyalarda saklan\u0131r (\u00f6rn: <code>config.production.json<\/code> veya <code>config.development.json<\/code>). Bu dosyalar\u0131 do\u011frudan d\u00fczenleyebilir veya <code>ghost config<\/code> komutunu kullanabilirsiniz.<\/p>\n<h4><code>ghost config<\/code> Komutu ile Ayarlar\u0131 De\u011fi\u015ftirme<\/h4>\n<p><code>ghost config<\/code> komutu, yap\u0131land\u0131rma dosyas\u0131ndaki belirli de\u011ferleri programatik olarak de\u011fi\u015ftirmenize olanak tan\u0131r.<br \/>\n*   <strong>URL De\u011fi\u015ftirme:<\/strong> Blogunuzun URL&#8217;sini de\u011fi\u015ftirmek i\u00e7in:<\/p>\n<pre><code class=\"language-bash\">ghost config url https:\/\/yeni-alanadi.com\n    ghost restart<\/code><\/pre>\n<p>*   <strong>Mail Ayarlar\u0131:<\/strong> E-posta g\u00f6nderme ayarlar\u0131n\u0131 yap\u0131land\u0131rmak i\u00e7in (\u00f6rne\u011fin SMTP kullanarak):<\/p>\n<pre><code class=\"language-bash\">ghost config mail.transport SMTP\n    ghost config mail.options.service 'Mailgun' # veya 'Gmail', 'SES' vb.\n    ghost config mail.options.auth.user 'postmaster@mg.alanadi.com'\n    ghost config mail.options.auth.pass 'YOUR_MAILGUN_API_KEY'\n    ghost restart<\/code><\/pre>\n<p>*   <strong>Di\u011fer Ayarlar:<\/strong> Herhangi bir yap\u0131land\u0131rma de\u011ferini de\u011fi\u015ftirmek i\u00e7in kullan\u0131labilir. \u00d6rne\u011fin, bir SSL sertifikas\u0131n\u0131 manuel olarak yeniledikten sonra Nginx yap\u0131land\u0131rmas\u0131n\u0131 yeniden olu\u015fturmak i\u00e7in:<\/p>\n<pre><code class=\"language-bash\">ghost config server.port 2368 # Varsay\u0131lan port\n    ghost setup nginx ssl # Nginx ve SSL'i yeniden yap\u0131land\u0131r\u0131r\n    ghost restart<\/code><\/pre>\n<h4>Manuel D\u00fczenleme<\/h4>\n<p>Baz\u0131 durumlarda, <code>config.production.json<\/code> gibi yap\u0131land\u0131rma dosyalar\u0131n\u0131 do\u011frudan bir metin d\u00fczenleyici ile d\u00fczenlemek isteyebilirsiniz. Bu durumda, dosyay\u0131 d\u00fczenledikten sonra Ghost&#8217;u yeniden ba\u015flatmay\u0131 unutmay\u0131n.<\/p>\n<pre><code class=\"language-bash\">sudo nano config.production.json\nghost restart<\/code><\/pre>\n<h3>Veritaban\u0131 \u0130\u015flemleri<\/h3>\n<p>Veritaban\u0131, Ghost i\u00e7eri\u011finizin kalbidir. Yedekleme ve geri y\u00fckleme i\u015flemleri, veri kayb\u0131n\u0131 \u00f6nlemek i\u00e7in hayati \u00f6neme sahiptir.<\/p>\n<h4>Yedekleme<\/h4>\n<p>Ghost CLI, veritaban\u0131n\u0131z\u0131 kolayca yedeklemenizi sa\u011flar:<\/p>\n<pre><code class=\"language-bash\">ghost backup<\/code><\/pre>\n<p>Bu komut, Ghost&#8217;un \u00e7al\u0131\u015ft\u0131\u011f\u0131 dizinde <code>ghost-backup-[timestamp].json<\/code> format\u0131nda bir dosya olu\u015fturur. Bu dosya, t\u00fcm i\u00e7eri\u011finizi (yaz\u0131lar, sayfalar, ayarlar vb.) i\u00e7erir. Ancak, bu sadece Ghost&#8217;un dahili verilerini yedekler. Temalar, resimler ve di\u011fer dosyalar i\u00e7in <code>\/content<\/code> dizinini manuel olarak yedeklemeniz gerekir.<br \/>\nManuel yedekleme \u00f6rne\u011fi:<\/p>\n<pre><code class=\"language-bash\">sudo mysqldump -u ghost_user -p ghost_db > ghost_db_backup.sql\nsudo tar -czvf ghost_content_backup.tar.gz \/var\/www\/ghost\/content<\/code><\/pre>\n<h4>Geri Y\u00fckleme<\/h4>\n<p>Ghost CLI&#8217;n\u0131n do\u011frudan bir <code>ghost restore<\/code> komutu bulunmamaktad\u0131r. Geri y\u00fckleme i\u015flemi genellikle manuel olarak yap\u0131l\u0131r:<br \/>\n1.  Yeni bir Ghost kurulumu yap\u0131n veya mevcut kurulumunuzu durdurun.<br \/>\n2.  <code>ghost-backup-[timestamp].json<\/code> dosyas\u0131n\u0131 Ghost admin paneli \u00fczerinden &#8220;Labs&#8221; b\u00f6l\u00fcm\u00fcnden i\u00e7e aktar\u0131n.<br \/>\n3.  <code>\/content<\/code> dizininizi yedekten geri y\u00fckleyin (resimler, temalar vb.).<br \/>\n4.  Veritaban\u0131n\u0131 SQL d\u00f6k\u00fcm\u00fcnden geri y\u00fcklemek i\u00e7in:<\/p>\n<pre><code class=\"language-bash\">mysql -u ghost_user -p ghost_db < ghost_db_backup.sql\n    ghost restart<\/code><\/pre>\n<p>Geri y\u00fckleme i\u015flemleri dikkatli yap\u0131lmal\u0131 ve her zaman bir test ortam\u0131nda denenmelidir.<\/p>\n<h3>Temalar\u0131 Y\u00f6netme<\/h3>\n<p>Ghost temalar\u0131, sitenizin g\u00f6r\u00fcn\u00fcm\u00fcn\u00fc belirler. Temalar\u0131 komut sat\u0131r\u0131 \u00fczerinden y\u00fckleyebilir ve y\u00f6netebilirsiniz.<\/p>\n<h4>Tema Y\u00fckleme<\/h4>\n<p>Yeni bir tema y\u00fcklemek i\u00e7in, tema dosyalar\u0131n\u0131 ZIP format\u0131nda indirdikten sonra sunucunuzdaki <code>\/var\/www\/ghost\/content\/themes<\/code> dizinine kopyalaman\u0131z gerekir.<\/p>\n<pre><code class=\"language-bash\">cd \/var\/www\/ghost\/content\/themes\nsudo wget https:\/\/example.com\/your-theme.zip\nsudo unzip your-theme.zip\nsudo rm your-theme.zip\nsudo chown -R ghost_user:ghost_user your-theme-folder<\/code><\/pre>\n<p>Temay\u0131 etkinle\u015ftirmek i\u00e7in Ghost Admin paneline giderek \"Settings\" -> \"Design\" b\u00f6l\u00fcm\u00fcnden yeni temay\u0131 se\u00e7meniz gerekecektir. Ghost CLI do\u011frudan tema etkinle\u015ftirmeyi desteklemez, ancak yap\u0131land\u0131rma dosyas\u0131n\u0131 manuel olarak d\u00fczenleyerek varsay\u0131lan temay\u0131 de\u011fi\u015ftirebilirsiniz (bu \u00f6nerilmez ve admin panel daha g\u00fcvenlidir).<\/p>\n<h3>Hata Ay\u0131klama ve Loglar<\/h3>\n<p>Bir sorunla kar\u015f\u0131la\u015ft\u0131\u011f\u0131n\u0131zda, log dosyalar\u0131 ve hata ay\u0131klama ara\u00e7lar\u0131 sorunun kayna\u011f\u0131n\u0131 bulmak i\u00e7in hayati \u00f6neme sahiptir.<\/p>\n<h4>Ghost Loglar\u0131<\/h4>\n<p>Ghost'un kendi loglar\u0131n\u0131 g\u00f6r\u00fcnt\u00fclemek i\u00e7in <code>ghost log<\/code> komutunu kullanabilirsiniz:<\/p>\n<pre><code class=\"language-bash\">ghost log<\/code><\/pre>\n<p>Bu komut, Ghost'un hata ve eri\u015fim loglar\u0131n\u0131 g\u00f6sterir. <code>--tail<\/code> bayra\u011f\u0131 ile ger\u00e7ek zamanl\u0131 olarak loglar\u0131 takip edebilirsiniz:<\/p>\n<pre><code class=\"language-bash\">ghost log --tail<\/code><\/pre>\n<h4>Sistem Servisi Loglar\u0131<\/h4>\n<p>E\u011fer Ghost'u Systemd ile bir servis olarak yap\u0131land\u0131rd\u0131ysan\u0131z, Systemd'nin kendi loglar\u0131n\u0131 da kontrol edebilirsiniz:<\/p>\n<pre><code class=\"language-bash\">sudo systemctl status ghost_[your_blog_url] # \u00d6rn: ghost_blog-example-com\nsudo journalctl -u ghost_[your_blog_url] -f<\/code><\/pre>\n<h4>Nginx\/Apache Loglar\u0131<\/h4>\n<p>Ters proxy olarak Nginx veya Apache kullan\u0131yorsan\u0131z, bu sunucular\u0131n loglar\u0131 da ba\u011flant\u0131 veya SSL sorunlar\u0131n\u0131 tespit etmek i\u00e7in \u00f6nemlidir.<br \/>\n*   Nginx loglar\u0131: <code>\/var\/log\/nginx\/access.log<\/code> ve <code>\/var\/log\/nginx\/error.log<\/code><br \/>\n*   Apache loglar\u0131: <code>\/var\/log\/apache2\/access.log<\/code> ve <code>\/var\/log\/apache2\/error.log<\/code><\/p>\n<h2>Geli\u015fmi\u015f Komut Sat\u0131r\u0131 Kullan\u0131m\u0131<\/h2>\n<p>Ghost CLI'n\u0131n sundu\u011fu baz\u0131 geli\u015fmi\u015f \u00f6zellikler, daha karma\u015f\u0131k senaryolarda size yard\u0131mc\u0131 olabilir.<\/p>\n<h3>\u00c7oklu Ghost Kurulumlar\u0131<\/h3>\n<p>Bir sunucuda birden fazla Ghost sitesi bar\u0131nd\u0131rmak m\u00fcmk\u00fcnd\u00fcr. Her Ghost kurulumu kendi dizininde ayr\u0131 ayr\u0131 y\u00f6netilir.<br \/>\n\u00d6rne\u011fin, <code>\/var\/www\/blog1<\/code> ve <code>\/var\/www\/blog2<\/code> dizinlerinde iki farkl\u0131 Ghost kurulumunuz varsa:<\/p>\n<pre><code class=\"language-bash\">cd \/var\/www\/blog1\nghost status # Sadece blog1'in durumunu g\u00f6sterir\n\ncd \/var\/www\/blog2\nghost start # Sadece blog2'yi ba\u015flat\u0131r<\/code><\/pre>\n<p>Her kurulum i\u00e7in Nginx ve SSL yap\u0131land\u0131rmalar\u0131n\u0131n do\u011fru \u015fekilde ayarland\u0131\u011f\u0131ndan emin olman\u0131z gerekir. <code>ghost install<\/code> komutu, her kurulum i\u00e7in ayr\u0131 ayr\u0131 Nginx sanal host dosyalar\u0131 olu\u015fturacakt\u0131r.<\/p>\n<h3>SSL Y\u00f6netimi<\/h3>\n<p>Ghost CLI, <code>ghost install<\/code> s\u0131ras\u0131nda Let's Encrypt ile SSL sertifikalar\u0131n\u0131 otomatik olarak yap\u0131land\u0131r\u0131r. Bu sertifikalar genellikle 90 g\u00fcnde bir yenilenir ve Ghost CLI bunu otomatik olarak halleder. Ancak, bazen manuel m\u00fcdahale gerekebilir.<br \/>\n*   <strong>SSL'i Yeniden Yap\u0131land\u0131rma:<\/strong> E\u011fer SSL sertifikas\u0131 sorunlar\u0131 ya\u015f\u0131yorsan\u0131z veya Nginx yap\u0131land\u0131rmas\u0131n\u0131 manuel olarak de\u011fi\u015ftirdiyseniz, SSL'i yeniden yap\u0131land\u0131rmak i\u00e7in <code>ghost setup nginx ssl<\/code> komutunu kullanabilirsiniz. Bu komut, Let's Encrypt sertifikas\u0131n\u0131 yenilemeye \u00e7al\u0131\u015f\u0131r ve Nginx yap\u0131land\u0131rmas\u0131n\u0131 g\u00fcnceller.<\/p>\n<pre><code class=\"language-bash\">ghost setup nginx ssl\n    ghost restart<\/code><\/pre>\n<h3>Dosya \u0130zinleri ve Sahiplikleri<\/h3>\n<p>Yanl\u0131\u015f dosya izinleri ve sahiplikleri, Ghost'un \u00e7al\u0131\u015fmas\u0131n\u0131 engelleyebilir veya g\u00fcvenlik a\u00e7\u0131klar\u0131 olu\u015fturabilir. Ghost CLI, kurulum s\u0131ras\u0131nda do\u011fru izinleri ayarlamaya \u00e7al\u0131\u015fsa da, manuel olarak d\u00fczeltmeniz gerekebilir.<br \/>\n*   <strong>Dizin Sahipli\u011fi:<\/strong> Ghost kurulum dizininin ve alt dizinlerinin Ghost kullan\u0131c\u0131s\u0131na ait oldu\u011fundan emin olun:<\/p>\n<pre><code class=\"language-bash\">sudo chown -R ghost_user:ghost_user \/var\/www\/ghost<\/code><\/pre>\n<p>*   <strong>Dosya \u0130zinleri:<\/strong> Genellikle dizinler i\u00e7in <code>775<\/code> veya <code>755<\/code>, dosyalar i\u00e7in <code>664<\/code> veya <code>644<\/code> izinleri yeterlidir. <code>777<\/code> gibi geni\u015f izinlerden ka\u00e7\u0131n\u0131n.<\/p>\n<pre><code class=\"language-bash\">sudo find \/var\/www\/ghost -type d -exec chmod 775 {} \\;\n    sudo find \/var\/www\/ghost -type f -exec chmod 664 {} \\;<\/code><\/pre>\n<p>Bu komutlar\u0131 uygulad\u0131ktan sonra Ghost'u yeniden ba\u015flatman\u0131z gerekebilir.<\/p>\n<h2>Performans ve G\u00fcvenlik \u0130pu\u00e7lar\u0131<\/h2>\n<p>Ghost kurulumunuzu komut sat\u0131r\u0131ndan y\u00f6netirken, performans ve g\u00fcvenli\u011fi art\u0131racak baz\u0131 \u00f6nemli noktalara dikkat etmek \u00f6nemlidir.<\/p>\n<h3>G\u00fcncel Tutma<\/h3>\n<p>Hem Ghost hem de Node.js, npm, MySQL gibi temel ba\u011f\u0131ml\u0131l\u0131klar\u0131n\u0131z\u0131 d\u00fczenli olarak g\u00fcncellemek, g\u00fcvenlik a\u00e7\u0131klar\u0131n\u0131 kapat\u0131r ve performans\u0131 art\u0131r\u0131r. <code>ghost update<\/code> ve <code>sudo apt update && sudo apt upgrade<\/code> komutlar\u0131n\u0131 d\u00fczenli olarak \u00e7al\u0131\u015ft\u0131r\u0131n.<\/p>\n<h3>G\u00fc\u00e7l\u00fc \u015eifreler<\/h3>\n<p>MySQL kullan\u0131c\u0131s\u0131, sunucu SSH \u015fifresi ve Ghost y\u00f6netici paneli \u015fifresi gibi t\u00fcm \u015fifrelerinizin g\u00fc\u00e7l\u00fc ve benzersiz oldu\u011fundan emin olun.<\/p>\n<h3>Firewall (UFW)<\/h3>\n<p>Sunucunuzda bir g\u00fcvenlik duvar\u0131 (\u00f6rn: UFW - Uncomplicated Firewall) etkinle\u015ftirin ve yaln\u0131zca gerekli portlara (SSH i\u00e7in 22, HTTP i\u00e7in 80, HTTPS i\u00e7in 443) izin verin.<\/p>\n<pre><code class=\"language-bash\">sudo ufw enable\nsudo ufw allow ssh\nsudo ufw allow http\nsudo ufw allow https<\/code><\/pre>\n<h3>Ters Proxy Yap\u0131land\u0131rmas\u0131<\/h3>\n<p>Nginx veya Apache gibi bir ters proxy kullanmak, do\u011frudan Node.js sunucusuna eri\u015fimi engelleyerek ek bir g\u00fcvenlik katman\u0131 sa\u011flar. Ayr\u0131ca \u00f6nbellekleme ve s\u0131k\u0131\u015ft\u0131rma gibi \u00f6zelliklerle performans\u0131 art\u0131r\u0131r.<\/p>\n<h3>CDN Kullan\u0131m\u0131 (Cloudflare)<\/h3>\n<p>Bir \u0130\u00e7erik Da\u011f\u0131t\u0131m A\u011f\u0131 (CDN) kullanmak, sitenizin h\u0131z\u0131n\u0131 art\u0131r\u0131r ve DDoS sald\u0131r\u0131lar\u0131na kar\u015f\u0131 koruma sa\u011flar. Cloudflare gibi hizmetler, \u00fccretsiz planlar\u0131nda bile \u00f6nemli faydalar sunar.<\/p>\n<h2>S\u0131k Kar\u015f\u0131la\u015f\u0131lan Sorunlar ve \u00c7\u00f6z\u00fcmleri<\/h2>\n<p>Komut sat\u0131r\u0131ndan Ghost y\u00f6netirken kar\u015f\u0131la\u015fabilece\u011finiz baz\u0131 yayg\u0131n sorunlar ve bunlar\u0131n \u00e7\u00f6z\u00fcmleri.<\/p>\n<h3><code>ghost install<\/code> Hatalar\u0131<\/h3>\n<p>*   <strong>\u0130zin Sorunlar\u0131:<\/strong> En yayg\u0131n hatalardan biridir. <code>sudo chown -R ghost_user:ghost_user \/var\/www\/ghost<\/code> ve <code>sudo chmod 775 \/var\/www\/ghost<\/code> komutlar\u0131yla izinleri kontrol edin.<br \/>\n*   <strong>Veritaban\u0131 Ba\u011flant\u0131 Sorunlar\u0131:<\/strong> MySQL\/MariaDB servisinin \u00e7al\u0131\u015f\u0131r durumda oldu\u011fundan, kullan\u0131c\u0131 ad\u0131n\u0131n, \u015fifrenin ve veritaban\u0131 ad\u0131n\u0131n do\u011fru oldu\u011fundan emin olun. <code>mysql -u ghost_user -p<\/code> ile manuel olarak ba\u011flanmay\u0131 deneyin.<br \/>\n*   <strong>Node.js S\u00fcr\u00fcm\u00fc:<\/strong> Ghost'un gerektirdi\u011fi Node.js s\u00fcr\u00fcm\u00fcn\u00fcn kurulu oldu\u011fundan emin olun.<br \/>\n*   <strong>Port \u00c7ak\u0131\u015fmalar\u0131:<\/strong> Ghost'un kullanmaya \u00e7al\u0131\u015ft\u0131\u011f\u0131 portun (varsay\u0131lan 2368) ba\u015fka bir uygulama taraf\u0131ndan kullan\u0131lmad\u0131\u011f\u0131ndan emin olun.<\/p>\n<h3>Ghost'un Ba\u015flamamas\u0131<\/h3>\n<p>*   <code>ghost status<\/code> komutuyla durumu kontrol edin.<br \/>\n*   <code>ghost log<\/code> komutuyla loglar\u0131 inceleyin.<br \/>\n*   <code>sudo systemctl status ghost_[instance_name]<\/code> ile Systemd loglar\u0131n\u0131 kontrol edin.<br \/>\n*   Yap\u0131land\u0131rma dosyas\u0131nda (<code>config.production.json<\/code>) bir hata olup olmad\u0131\u011f\u0131n\u0131 kontrol edin.<br \/>\n*   <code>ghost doctor<\/code> komutu, yayg\u0131n sorunlar\u0131 tespit etmenize yard\u0131mc\u0131 olabilir.<\/p>\n<h3>SSL Sorunlar\u0131<\/h3>\n<p>*   Let's Encrypt sertifikas\u0131n\u0131n s\u00fcresi dolmu\u015f olabilir. <code>ghost setup nginx ssl<\/code> komutuyla yenilemeyi deneyin.<br \/>\n*   Nginx yap\u0131land\u0131rmas\u0131n\u0131n do\u011fru oldu\u011fundan emin olun. <code>\/etc\/nginx\/sites-available\/your-domain.conf<\/code> dosyas\u0131n\u0131 kontrol edin.<br \/>\n*   Firewall'un 443 portuna izin verdi\u011finden emin olun (<code>sudo ufw status<\/code>).<\/p>\n<h3>Y\u00fcksek CPU\/RAM Kullan\u0131m\u0131<\/h3>\n<p>*   <code>top<\/code> veya <code>htop<\/code> komutlar\u0131yla hangi i\u015flemlerin kaynak t\u00fcketti\u011fini belirleyin.<br \/>\n*   Ghost loglar\u0131nda ola\u011fand\u0131\u015f\u0131 aktivite olup olmad\u0131\u011f\u0131n\u0131 kontrol edin.<br \/>\n*   Node.js s\u00fcr\u00fcm\u00fcn\u00fcz\u00fc g\u00fcncelleyin.<br \/>\n*   Teman\u0131zda veya kullan\u0131lan entegrasyonlarda performans sorunlar\u0131 olabilir.<\/p>\n<h2>Sonu\u00e7<\/h2>\n<p>Ghost'u komut sat\u0131r\u0131ndan yap\u0131land\u0131rmak ve bak\u0131m\u0131n\u0131 yapmak, platformun g\u00fcc\u00fcnden tam olarak yararlanman\u0131n en etkili yoludur. Ghost CLI, kurulumdan g\u00fcncellemeler, yedeklemeler ve sorun gidermeye kadar t\u00fcm s\u00fcre\u00e7leri kolayla\u015ft\u0131ran kapsaml\u0131 bir ara\u00e7 seti sunar. Komut sat\u0131r\u0131 becerileri, Ghost kurulumunuz \u00fczerinde derinlemesine kontrol sa\u011flaman\u0131za, performans\u0131 optimize etmenize ve olas\u0131 sorunlar\u0131 h\u0131zl\u0131 bir \u015fekilde \u00e7\u00f6zmenize olanak tan\u0131r. Bu makalede ele al\u0131nan ad\u0131mlar ve ipu\u00e7lar\u0131, Ghost deneyiminizi daha verimli ve g\u00fcvenli hale getirmenize yard\u0131mc\u0131 olacakt\u0131r. Unutmay\u0131n, d\u00fczenli yedekleme ve g\u00fcncellemeler, herhangi bir web sitesi y\u00f6netiminin temel ta\u015flar\u0131d\u0131r. Ghost CLI ile bu s\u00fcre\u00e7ler art\u0131k daha eri\u015filebilir ve y\u00f6netilebilir hale gelmi\u015ftir.<\/body><\/p>\n","protected":false},"excerpt":{"rendered":"Ghost&#8217;u Komut Sat\u0131r\u0131ndan Yap\u0131land\u0131rma ve Bak\u0131m\u0131\nGiri\u015f\nGhost, modern web siteleri ve bloglar i\u00e7in tasarlanm\u0131\u015f, a\u00e7\u0131k kaynakl\u0131, h\u0131zl\u0131 ve","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"csco_page_header_type":"","csco_page_load_nextpost":"","csco_page_subscribe_form":"","csco_page_contact_form":"","footnotes":""},"categories":[1],"tags":[],"class_list":{"0":"post-32013","1":"post","2":"type-post","3":"status-publish","4":"format-standard","6":"category-genel","7":"cs-entry","8":"cs-video-wrap"},"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v20.5 (Yoast SEO v25.3.1) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Ghost&#039;u Komut Sat\u0131r\u0131ndan Yap\u0131land\u0131rma ve Bak\u0131m\u0131 - Kodlar\u0131n Gizemli D\u00fcnyas\u0131<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/fatihsoysal.com\/blog\/ghostu-komut-satirindan-yapilandirma-ve-bakimi\/\" \/>\n<meta property=\"og:locale\" content=\"tr_TR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Ghost&#039;u Komut Sat\u0131r\u0131ndan Yap\u0131land\u0131rma ve Bak\u0131m\u0131\" \/>\n<meta property=\"og:description\" content=\"Ghost&#039;u Komut Sat\u0131r\u0131ndan Yap\u0131land\u0131rma ve Bak\u0131m\u0131 Giri\u015f Ghost, modern web siteleri ve bloglar i\u00e7in tasarlanm\u0131\u015f, a\u00e7\u0131k kaynakl\u0131, h\u0131zl\u0131 ve\" \/>\n<meta property=\"og:url\" content=\"https:\/\/fatihsoysal.com\/blog\/ghostu-komut-satirindan-yapilandirma-ve-bakimi\/\" \/>\n<meta property=\"og:site_name\" content=\"Kodlar\u0131n Gizemli D\u00fcnyas\u0131\" \/>\n<meta property=\"article:published_time\" content=\"2025-10-16T15:41:05+00:00\" \/>\n<meta name=\"author\" content=\"Fatih Soysal\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Yazan:\" \/>\n\t<meta name=\"twitter:data1\" content=\"Fatih Soysal\" \/>\n\t<meta name=\"twitter:label2\" content=\"Tahmini okuma s\u00fcresi\" \/>\n\t<meta name=\"twitter:data2\" content=\"16 dakika\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/ghostu-komut-satirindan-yapilandirma-ve-bakimi\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/ghostu-komut-satirindan-yapilandirma-ve-bakimi\/\"},\"author\":{\"name\":\"Fatih Soysal\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"headline\":\"Ghost&#8217;u Komut Sat\u0131r\u0131ndan Yap\u0131land\u0131rma ve Bak\u0131m\u0131\",\"datePublished\":\"2025-10-16T15:41:05+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/ghostu-komut-satirindan-yapilandirma-ve-bakimi\/\"},\"wordCount\":2732,\"commentCount\":2,\"publisher\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/ghostu-komut-satirindan-yapilandirma-ve-bakimi\/#respond\"]}],\"copyrightYear\":\"2025\",\"copyrightHolder\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/ghostu-komut-satirindan-yapilandirma-ve-bakimi\/\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/ghostu-komut-satirindan-yapilandirma-ve-bakimi\/\",\"name\":\"Ghost'u Komut Sat\u0131r\u0131ndan Yap\u0131land\u0131rma ve Bak\u0131m\u0131 - Kodlar\u0131n Gizemli D\u00fcnyas\u0131\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#website\"},\"datePublished\":\"2025-10-16T15:41:05+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/ghostu-komut-satirindan-yapilandirma-ve-bakimi\/#breadcrumb\"},\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/ghostu-komut-satirindan-yapilandirma-ve-bakimi\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/ghostu-komut-satirindan-yapilandirma-ve-bakimi\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Anasayfa\",\"item\":\"https:\/\/fatihsoysal.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Ghost&#8217;u Komut Sat\u0131r\u0131ndan Yap\u0131land\u0131rma ve Bak\u0131m\u0131\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#website\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/\",\"name\":\"Fatihsoysal.com\",\"description\":\"Blog - Yaz\u0131l\u0131m D\u00fcnyas\u0131 Tecr\u00fcbelerim\",\"publisher\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/fatihsoysal.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"tr\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\",\"name\":\"Fatih Soysal\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"tr\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png\",\"contentUrl\":\"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png\",\"width\":512,\"height\":512,\"caption\":\"Fatih Soysal\"},\"logo\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/\"},\"description\":\"Kullan\u0131m ve kodlama m\u00fckemmeliyetini odak alan uygulamalar olu\u015fturma deneyimine sahip, profesyonel olarak 15+ y\u0131l \u00fczeri deneyime sahip bir yaz\u0131l\u0131m m\u00fchendisi.\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/author\/fatihsoysal\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Ghost'u Komut Sat\u0131r\u0131ndan Yap\u0131land\u0131rma ve Bak\u0131m\u0131 - Kodlar\u0131n Gizemli D\u00fcnyas\u0131","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/fatihsoysal.com\/blog\/ghostu-komut-satirindan-yapilandirma-ve-bakimi\/","og_locale":"tr_TR","og_type":"article","og_title":"Ghost'u Komut Sat\u0131r\u0131ndan Yap\u0131land\u0131rma ve Bak\u0131m\u0131","og_description":"Ghost'u Komut Sat\u0131r\u0131ndan Yap\u0131land\u0131rma ve Bak\u0131m\u0131 Giri\u015f Ghost, modern web siteleri ve bloglar i\u00e7in tasarlanm\u0131\u015f, a\u00e7\u0131k kaynakl\u0131, h\u0131zl\u0131 ve","og_url":"https:\/\/fatihsoysal.com\/blog\/ghostu-komut-satirindan-yapilandirma-ve-bakimi\/","og_site_name":"Kodlar\u0131n Gizemli D\u00fcnyas\u0131","article_published_time":"2025-10-16T15:41:05+00:00","author":"Fatih Soysal","twitter_card":"summary_large_image","twitter_misc":{"Yazan:":"Fatih Soysal","Tahmini okuma s\u00fcresi":"16 dakika"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/fatihsoysal.com\/blog\/ghostu-komut-satirindan-yapilandirma-ve-bakimi\/#article","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/ghostu-komut-satirindan-yapilandirma-ve-bakimi\/"},"author":{"name":"Fatih Soysal","@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"headline":"Ghost&#8217;u Komut Sat\u0131r\u0131ndan Yap\u0131land\u0131rma ve Bak\u0131m\u0131","datePublished":"2025-10-16T15:41:05+00:00","mainEntityOfPage":{"@id":"https:\/\/fatihsoysal.com\/blog\/ghostu-komut-satirindan-yapilandirma-ve-bakimi\/"},"wordCount":2732,"commentCount":2,"publisher":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"inLanguage":"tr","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/fatihsoysal.com\/blog\/ghostu-komut-satirindan-yapilandirma-ve-bakimi\/#respond"]}],"copyrightYear":"2025","copyrightHolder":{"@id":"https:\/\/fatihsoysal.com\/blog\/#organization"}},{"@type":"WebPage","@id":"https:\/\/fatihsoysal.com\/blog\/ghostu-komut-satirindan-yapilandirma-ve-bakimi\/","url":"https:\/\/fatihsoysal.com\/blog\/ghostu-komut-satirindan-yapilandirma-ve-bakimi\/","name":"Ghost'u Komut Sat\u0131r\u0131ndan Yap\u0131land\u0131rma ve Bak\u0131m\u0131 - Kodlar\u0131n Gizemli D\u00fcnyas\u0131","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/#website"},"datePublished":"2025-10-16T15:41:05+00:00","breadcrumb":{"@id":"https:\/\/fatihsoysal.com\/blog\/ghostu-komut-satirindan-yapilandirma-ve-bakimi\/#breadcrumb"},"inLanguage":"tr","potentialAction":[{"@type":"ReadAction","target":["https:\/\/fatihsoysal.com\/blog\/ghostu-komut-satirindan-yapilandirma-ve-bakimi\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/fatihsoysal.com\/blog\/ghostu-komut-satirindan-yapilandirma-ve-bakimi\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Anasayfa","item":"https:\/\/fatihsoysal.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Ghost&#8217;u Komut Sat\u0131r\u0131ndan Yap\u0131land\u0131rma ve Bak\u0131m\u0131"}]},{"@type":"WebSite","@id":"https:\/\/fatihsoysal.com\/blog\/#website","url":"https:\/\/fatihsoysal.com\/blog\/","name":"Fatihsoysal.com","description":"Blog - Yaz\u0131l\u0131m D\u00fcnyas\u0131 Tecr\u00fcbelerim","publisher":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/fatihsoysal.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"tr"},{"@type":["Person","Organization"],"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1","name":"Fatih Soysal","image":{"@type":"ImageObject","inLanguage":"tr","@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png","contentUrl":"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png","width":512,"height":512,"caption":"Fatih Soysal"},"logo":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/"},"description":"Kullan\u0131m ve kodlama m\u00fckemmeliyetini odak alan uygulamalar olu\u015fturma deneyimine sahip, profesyonel olarak 15+ y\u0131l \u00fczeri deneyime sahip bir yaz\u0131l\u0131m m\u00fchendisi.","url":"https:\/\/fatihsoysal.com\/blog\/author\/fatihsoysal\/"}]}},"yoast_meta":{"yoast_wpseo_title":"","yoast_wpseo_metadesc":"","yoast_wpseo_canonical":""},"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/32013","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/comments?post=32013"}],"version-history":[{"count":1,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/32013\/revisions"}],"predecessor-version":[{"id":32014,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/32013\/revisions\/32014"}],"wp:attachment":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/media?parent=32013"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/categories?post=32013"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/tags?post=32013"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}