Přechod na Ghost
Blogovacím platformám se bráním nějakou dobu jako čert kříži. Vše jsem se snažil řešit nad Pimcore pomocí jednoduchého pluginu, ale nějakou dobu už mě štve forma zadávání (byť formou Drag & Drop).
Nějakou dobu jsem však četl kladné ohlasy na Ghost. Jednoduchá platforma, nižší systémové nároky jak WordPress, co víc si přát. Analýzou člověk začal rozkrývat jednotlivé funkčnosti systému. Čeho si člověk na první pohled všimne je responsivní design editoru který oceníte, pokud chcete přidávat příspěvky někde na cestách z mobilních zařízení.
Pokud mezi povolenými značkami některou nenaleznete, lze bez problémů použít klasické HTML. Jednou z nich bude i tabulka. Rozšířené zadání příspěvku pak naleznete pod symbolem ozubeného kolečka vedle tlačítka pro uložení/publikaci.
Instalace
Samotná instalace je velmi jednoduchá. Pokud instalujete Ghost
na debian wheezy tak jako já, můžete postupovat dle následujícího návodu:
- Přidejte repozitář s wheezy-backports
echo "deb http://ftp.us.debian.org/debian wheezy-backports main" >> /etc/apt/sources.list
- A standardně proveďte následující příkaz. Krom NodeJS bude instalován i npm package manager
apt-get update && apt-get install nodejs-legacy
Po instalaci NodeJS stačí postupovat dle popisu. Příkazem z adresáře s Ghostem npm install --production
spustíte jednoduchý webserver.
Horší je situace, pokud už na daném serveru nějaký webserver běží a Vy chcete, aby Ghost běžel na portu 80. Pokud vezmeme v potaz dva nejrozšířenější servery Nginx a Apache, u obou je řešení v podstatě stejné - proxy.
Nginx
try_files $uri @nodejs;
...
location @nodejs
{
# node.js is listening on port 2368 by default
proxy_pass 127.0.0.1:2368;
break;
}
Apache
<VirtualHost *:80>
ServerName mujblog.cz
ServerAlias www.mujblog.cz
ProxyRequests off
ProxyPass / http://127.0.0.1:2368/
ProxyPassReverse / http:/127.0.0.1:2368/
</VirtualHost>
Co ale dělat v případě, když potřebujete Ghost rozběhnout v podsložce daného webu? U Proxy samozřejmě stačí upravit cestu:
<VirtualHost *:80>
ServerName mujblog.cz
ServerAlias www.mujblog.cz
ProxyRequests off
ProxyPass /blog/ http://127.0.0.1:2368/blog/
ProxyPassReverse /blog/ http:/127.0.0.1:2368/blog/
</VirtualHost>
Tomu ale musí odpovídat i konfigurace samotného Ghosta. V sekci production tak změňte URL:
production: {
url: 'http://www.mujblog.cz/blog/',
...
Krom těchto dvou řešení jsem narazil i na další možnosti, jakým způsobem rozběhnout Ghost či zmigrovat všechny weby na jiný webserver než je Apache:
- https://github.com/nodejitsu/node-http-proxy
- https://www.digitalocean.com/community/tutorials/how-to-set-up-nginx-virtual-hosts-server-blocks-on-ubuntu-12-04-lts--3
- https://www.npmjs.com/package/vhost
- https://www.npmjs.com/package/vhosts
Konfigurace
Krom webového serveru je vhodné si pro různé notifikace nakonfigurovat mailserver. Ten je v defaultu prázdný, nicméně pokud Vám běží mailserver na stejném stroji, konfigurace se skládá z několika řádků:
...
mail: {
transport: 'SMTP',
options: {
host: '127.0.0.1'
}
},
...
Další možnosti jak nakonfigurovat mail naleznete v oficiální dokumentaci http://support.ghost.org/mail