Jak stworzyć stronę internetową przy użyciu Hugo na Debian 11

Jak stworzyć stronę internetową przy użyciu Hugo na Debian 11

 

Hugo to szybki i elastyczny generator stron statycznych, idealny do tworzenia blogów, portfolio czy dokumentacji. W tym poradniku pokażemy, jak zainstalować Hugo na Debian 11, stworzyć nową stronę internetową i wdrożyć ją na serwerze z Apache oraz darmowym certyfikatem SSL Let’s Encrypt. Aby zapewnić wysoką wydajność i niezawodność, polecamy nasze serwery VPS z Linux lub Windows VPS dostępne na Netcloud24.

1. Wymagania wstępne

Przed rozpoczęciem upewnij się, że posiadasz:

  • Serwer z Debian 11 (polecamy VPS z Linux)
  • Dostęp root lub użytkownika z uprawnieniami sudo
  • Zarejestrowaną nazwę domeny wskazującą na adres IP serwera (opcjonalne dla wdrożenia)
  • Połączenie internetowe do pobrania pakietów

Nasze serwery VPS z Linux na Netcloud24 oferują szybkie dyski SSD i skalowalne zasoby, idealne dla stron statycznych tworzonych za pomocą Hugo.

2. Instalacja Hugo

Krok 1: Aktualizacja systemu

Zaktualizuj system, aby wszystkie pakiety były na najnowszych wersjach:

sudo apt update && sudo apt upgrade -y

Krok 2: Pobieranie i instalacja Hugo

Pobierz najnowszą wersję Hugo z oficjalnego repozytorium GitHub. W tym przykładzie instalujemy wersję 0.136.5 (sprawdź stronę GitHub dla najnowszej wersji):

wget https://github.com/gohugoio/hugo/releases/download/v0.136.5/hugo_0.136.5_Linux-64bit.deb
sudo dpkg -i hugo_0.136.5_Linux-64bit.deb

Jeśli pojawią się brakujące zależności, zainstaluj je:

sudo apt install -f

Sprawdź wersję Hugo, aby potwierdzić instalację:

hugo version

3. Tworzenie nowej strony Hugo

Krok 1: Utworzenie nowego projektu

Utwórz nowy katalog dla strony Hugo i przejdź do niego:

mkdir ~/moja-strona
cd ~/moja-strona
hugo new site .

Spowoduje to utworzenie podstawowej struktury katalogów dla strony Hugo.

Krok 2: Dodanie motywu

Pobierz i zainstaluj motyw, np. popularny motyw Ananke:

git init
git submodule add https://github.com/theNewDynamic/gohugo-theme-ananke.git themes/ananke
echo 'theme = "ananke"' >> config.toml

Edytuj plik config.toml, aby dostosować podstawowe ustawienia strony:

nano config.toml

Przykładowa konfiguracja:

baseURL = "https://twoj-domena.pl/"
languageCode = "pl-pl"
title = "Moja Strona Hugo"
theme = "ananke"

Krok 3: Tworzenie zawartości

Utwórz nowy post na blogu, aby przetestować stronę:

hugo new posts/moj-pierwszy-post.md

Edytuj plik content/posts/moj-pierwszy-post.md, aby dodać treść:

---
title: "Mój Pierwszy Post"
date: 2025-07-19T16:00:00+02:00
draft: false
---
Witaj na mojej stronie stworzonej za pomocą Hugo!

Krok 4: Testowanie strony lokalnie

Uruchom lokalny serwer Hugo, aby przetestować stronę:

hugo server -D

Otwórz przeglądarkę i przejdź do http://localhost:1313, aby zobaczyć podgląd strony.

4. Wdrożenie strony z Apache

Krok 1: Generowanie statycznych plików

Wygeneruj statyczne pliki strony Hugo:

hugo

Pliki zostaną zapisane w katalogu ~/moja-strona/public.

Krok 2: Instalacja Apache

Zainstaluj serwer Apache, jeśli jeszcze nie jest zainstalowany:

sudo apt install -y apache2
sudo systemctl enable apache2
sudo systemctl start apache2

Krok 3: Przeniesienie plików strony

Skopiuj wygenerowane pliki do katalogu Apache:

sudo cp -r ~/moja-strona/public/* /var/www/html/

Ustaw odpowiednie uprawnienia:

sudo chown -R www-data:www-data /var/www/html
sudo chmod -R 755 /var/www/html

Krok 4: Konfiguracja wirtualnego hosta

Utwórz plik konfiguracyjny dla Apache:

sudo nano /etc/apache2/sites-available/hugo.conf

Dodaj następującą konfigurację, zastępując twoj-domena.pl swoją domeną:


    ServerName twoj-domena.pl
    ServerAlias www.twoj-domena.pl
    DocumentRoot /var/www/html
    
        Options Indexes FollowSymLinks
        AllowOverride All
        Require all granted
    
    ErrorLog ${APACHE_LOG_DIR}/hugo_error.log
    CustomLog ${APACHE_LOG_DIR}/hugo_access.log combined

Włącz wirtualny host i zrestartuj Apache:

sudo a2ensite hugo.conf
sudo systemctl restart apache2

5. Instalacja Let’s Encrypt SSL

Krok 1: Instalacja Certbot

Zainstaluj Certbot, aby uzyskać darmowy certyfikat SSL:

sudo apt install -y certbot python3-certbot-apache

Krok 2: Uzyskanie certyfikatu SSL

Uruchom Certbot, aby skonfigurować SSL:

sudo certbot --apache -d twoj-domena.pl -d www.twoj-domena.pl

Postępuj zgodnie z instrukcjami, aby skonfigurować SSL i włączyć automatyczne przekierowanie na HTTPS.

Krok 3: Automatyczne odnawianie certyfikatu

Sprawdź, czy automatyczne odnawianie działa:

sudo certbot renew --dry-run

6. Bezpieczeństwo i optymalizacja

Aby zwiększyć bezpieczeństwo i wydajność:

    • Zabezpiecz serwer za pomocą zapory sieciowej:
sudo apt install -y ufw
sudo ufw allow 80
sudo ufw allow 443
sudo ufw enable
    • Zainstaluj Fail2ban, aby chronić przed atakami brute-force:
sudo apt install -y fail2ban
sudo systemctl enable fail2ban
sudo systemctl start fail2ban
    • Włącz kompresję w Apache, aby przyspieszyć ładowanie strony:
sudo a2enmod deflate
sudo nano /etc/apache2/mods-enabled/deflate.conf

Dodaj lub zmodyfikuj:


    AddOutputFilterByType DEFLATE text/html text/plain text/css application/javascript

Zrestartuj Apache:

sudo systemctl restart apache2
    • Regularnie aktualizuj Hugo i motyw, aby korzystać z najnowszych funkcji i poprawek bezpieczeństwa:
cd ~/moja-strona
git submodule update --remote themes/ananke
hugo

Nasze serwery VPS z Linux oraz Windows VPS na Netcloud24 zapewniają wysoką dostępność i bezpieczeństwo dla stron statycznych.

7. Podsumowanie

Tworzenie strony internetowej za pomocą Hugo na Debian 11 jest szybkie i proste, dzięki łatwości instalacji oraz wydajności generatora stron statycznych. Po wdrożeniu na Apache z certyfikatem SSL od Let’s Encrypt Twoja strona będzie bezpieczna i gotowa do użycia. Aby uzyskać najlepszą wydajność, polecamy nasze serwery VPS z Linux lub Windows VPS na Netcloud24, które oferują skalowalne i niezawodne rozwiązania dla Twoich projektów internetowych.

 

Netcloud24.com

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Wymagane pola są oznaczone *