De meeste Jekyll-sites staan op GitHub Pages, dat ze voor je bouwt, maar alleen met de plug-ins die GitHub toestaat, en alleen vanuit een repository. Als je Jekyll zelf bouwt, vallen beide grenzen weg: voer bundle exec jekyll build uit en de afgewerkte site staat in _site/. Daarna zet npx lobsite hem online op een *.lobsite.app-adres met HTTPS, met formulieren die GitHub Pages niet heeft.
Zo werkt het
- Bouw de site met
JEKYLL_ENV=production bundle exec jekyll build. Jekyll schrijft hem naar_site/. - Voer
npx lobsiteuit in de map van de site. Het vindt_site/en deployt die. De eerste deploy heeft geen account nodig en duurt 6 uur. - Houd hem met de claimlink, in een gratis account. Daarna werken dezelfde twee opdrachten hetzelfde adres bij.
Overstappen van GitHub Pages
- Elke plug-in werkt. GitHub Pages draait alleen de plug-ins in de gem
github-pages. Als je zelf bouwt, draait alles in jeGemfile, ook plug-ins die GitHub Pages weigert. baseurlis op een GitHub Pages-projectsite vaak/repo-name. Op Lobsite wordt de site vanaf de basis van zijn adres geserveerd, dus zetbaseurl: ""in_config.yml, enurlop je*.lobsite.app-adres.- De gem
github-pageskun je in jeGemfilevervangen door gewoonjekyll, zodat jij de Jekyll-versie kiest in plaats van GitHub. - Geen repository nodig. De site kan nog steeds in Git staan, maar deployen hangt niet af van een push.
Doorverwijzingen, formulieren en feeds
jekyll-redirect-from maakt HTML-pagina's die doorverwijzen met JavaScript of een meta-refresh. Op Lobsite kun je in plaats daarvan echte 301-doorverwijzingen in lobsite.toml gebruiken, die zoekmachines als verhuizing behandelen; de Doorverwijzingsgenerator schrijft ze voor je. Formulieren die posten naar /_lobsite/forms/contact verzamelen inzendingen met spamfilter zodra de site in een account staat, zonder Formspree of een andere dienst. Feeds van jekyll-feed en sitemaps van jekyll-sitemap zijn bestanden in _site/ en worden geserveerd zoals ze zijn.
Bestanden worden op hun hash opgeslagen. Een ongewijzigde site opnieuw deployen uploadt 0 bytes.
Bekijk een voorbeeld voordat het live gaat. Zet in één klik terug, inclusief doorverwijzingen.
Laat een formulier wijzen naar /_lobsite/forms/contact. Spamfilter inbegrepen.
Elke site krijgt vanaf de eerste deploy een *.lobsite.app-adres met HTTPS.
Doorverwijzingen, headers en formulieren staan in lobsite.toml en reizen mee met elke deploy.
Een deploy zonder account is 6 uur live. Met de claimlink houd je hem, gratis.
Jekyll-hosts vergeleken
| Lobsite | GitHub Pages | Netlify | |
|---|---|---|---|
| Bouwt Jekyll voor je | Nee: je deployt _site/ |
Ja | Ja |
| Plug-ins | Alle | De github-pages-set, of alle met GitHub Actions |
Alle |
| Heeft een repository nodig | Nee | Ja | Voor Git-deploys |
| Account vóór de eerste deploy | Nee: 6 uur live, daarna gratis houden | Ja | Ja |
| Formulieren zonder backend | Ja, zodra de site in een account staat | Nee | Ja |
| Eigen domein | Ja, gratis | Ja, gratis | Ja, gratis |
GitHub Pages is gratis met een eigen domein en een prima thuis voor een Jekyll-site die binnen de regels past. Lobsite is voor als je elke plug-in, echte doorverwijzingen of formulieren wilt, en een deploy die één opdracht vanaf je eigen machine is.
Veelgestelde vragen
Kan ik Jekyll-plug-ins gebruiken die GitHub Pages niet toestaat?
Ja. Je bouwt de site zelf, dus elke plug-in in je Gemfile draait. Lobsite host alleen het resultaat in _site/.
Na de overstap van GitHub Pages mist mijn Jekyll-site zijn CSS. Waarom?
baseurl staat waarschijnlijk nog op de naam van de repository, dus links wijzen naar /repo-name/assets/.... Zet baseurl: "" in _config.yml, bouw opnieuw en deploy.
Heb ik Ruby nodig op de machine die deployt?
Je hebt Ruby nodig om Jekyll te bouwen, zoals altijd. Deployen vraagt Node.js voor npx lobsite; zonder Node sleep je _site/ naar het vak hierboven.
Kan ik mijn Jekyll-site in een GitHub-repository houden?
Ja. Laat de broncode staan waar hij staat en deploy vanaf je machine. Deployen vanuit GitHub Actions vraagt een CI-token, dat bij het betaalde abonnement hoort, binnenkort beschikbaar.