{"id":329,"date":"2025-07-19T16:44:04","date_gmt":"2025-07-19T14:44:04","guid":{"rendered":"https:\/\/netcloud24.com\/pl\/blog\/?p=329"},"modified":"2025-07-19T16:44:32","modified_gmt":"2025-07-19T14:44:32","slug":"jak-stworzyc-strone-internetowa-przy-uzyciu-hugo-na-debian-11","status":"publish","type":"post","link":"https:\/\/netcloud24.com\/pl\/blog\/jak-stworzyc-strone-internetowa-przy-uzyciu-hugo-na-debian-11\/","title":{"rendered":"Jak stworzy\u0107 stron\u0119 internetow\u0105 przy u\u017cyciu Hugo na Debian 11"},"content":{"rendered":"<p>&nbsp;<\/p>\n<div class=\"container\">\n<h1><\/h1>\n<p>Hugo to szybki i elastyczny generator stron statycznych, idealny do tworzenia blog\u00f3w, portfolio czy dokumentacji. W tym poradniku poka\u017cemy, jak zainstalowa\u0107 Hugo na Debian 11, stworzy\u0107 now\u0105 stron\u0119 internetow\u0105 i wdro\u017cy\u0107 j\u0105 na serwerze z Apache oraz darmowym certyfikatem SSL Let&#8217;s Encrypt. Aby zapewni\u0107 wysok\u0105 wydajno\u015b\u0107 i niezawodno\u015b\u0107, polecamy nasze <a href=\"https:\/\/netcloud24.com\/serwery\/vps-linux\/\">serwery VPS z Linux<\/a> lub <a href=\"https:\/\/netcloud24.com\/\">Windows VPS<\/a> dost\u0119pne na <a href=\"https:\/\/netcloud24.com\/\">Netcloud24<\/a>.<\/p>\n<h2>1. Wymagania wst\u0119pne<\/h2>\n<p>Przed rozpocz\u0119ciem upewnij si\u0119, \u017ce posiadasz:<\/p>\n<ul>\n<li>Serwer z Debian 11 (polecamy <a href=\"https:\/\/netcloud24.com\/serwery\/vps-linux\/\">VPS z Linux<\/a>)<\/li>\n<li>Dost\u0119p root lub u\u017cytkownika z uprawnieniami sudo<\/li>\n<li>Zarejestrowan\u0105 nazw\u0119 domeny wskazuj\u0105c\u0105 na adres IP serwera (opcjonalne dla wdro\u017cenia)<\/li>\n<li>Po\u0142\u0105czenie internetowe do pobrania pakiet\u00f3w<\/li>\n<\/ul>\n<p>Nasze <a href=\"https:\/\/netcloud24.com\/serwery\/vps-linux\/\">serwery VPS z Linux<\/a> na <a href=\"https:\/\/netcloud24.com\/\">Netcloud24<\/a> oferuj\u0105 szybkie dyski SSD i skalowalne zasoby, idealne dla stron statycznych tworzonych za pomoc\u0105 Hugo.<\/p>\n<h2>2. Instalacja Hugo<\/h2>\n<h3>Krok 1: Aktualizacja systemu<\/h3>\n<p>Zaktualizuj system, aby wszystkie pakiety by\u0142y na najnowszych wersjach:<\/p>\n<pre><code>sudo apt update &amp;&amp; sudo apt upgrade -y<\/code><\/pre>\n<h3>Krok 2: Pobieranie i instalacja Hugo<\/h3>\n<p>Pobierz najnowsz\u0105 wersj\u0119 Hugo z oficjalnego repozytorium GitHub. W tym przyk\u0142adzie instalujemy wersj\u0119 0.136.5 (sprawd\u017a <a href=\"https:\/\/github.com\/gohugoio\/hugo\/releases\" target=\"_blank\" rel=\"noopener\">stron\u0119 GitHub<\/a> dla najnowszej wersji):<\/p>\n<pre><code>wget https:\/\/github.com\/gohugoio\/hugo\/releases\/download\/v0.136.5\/hugo_0.136.5_Linux-64bit.deb\r\nsudo dpkg -i hugo_0.136.5_Linux-64bit.deb<\/code><\/pre>\n<p>Je\u015bli pojawi\u0105 si\u0119 brakuj\u0105ce zale\u017cno\u015bci, zainstaluj je:<\/p>\n<pre><code>sudo apt install -f<\/code><\/pre>\n<p>Sprawd\u017a wersj\u0119 Hugo, aby potwierdzi\u0107 instalacj\u0119:<\/p>\n<pre><code>hugo version<\/code><\/pre>\n<h2>3. Tworzenie nowej strony Hugo<\/h2>\n<h3>Krok 1: Utworzenie nowego projektu<\/h3>\n<p>Utw\u00f3rz nowy katalog dla strony Hugo i przejd\u017a do niego:<\/p>\n<pre><code>mkdir ~\/moja-strona\r\ncd ~\/moja-strona\r\nhugo new site .<\/code><\/pre>\n<p>Spowoduje to utworzenie podstawowej struktury katalog\u00f3w dla strony Hugo.<\/p>\n<h3>Krok 2: Dodanie motywu<\/h3>\n<p>Pobierz i zainstaluj motyw, np. popularny motyw Ananke:<\/p>\n<pre><code>git init\r\ngit submodule add https:\/\/github.com\/theNewDynamic\/gohugo-theme-ananke.git themes\/ananke\r\necho 'theme = \"ananke\"' &gt;&gt; config.toml<\/code><\/pre>\n<p>Edytuj plik <code>config.toml<\/code>, aby dostosowa\u0107 podstawowe ustawienia strony:<\/p>\n<pre><code>nano config.toml<\/code><\/pre>\n<p>Przyk\u0142adowa konfiguracja:<\/p>\n<pre><code>baseURL = \"https:\/\/twoj-domena.pl\/\"\r\nlanguageCode = \"pl-pl\"\r\ntitle = \"Moja Strona Hugo\"\r\ntheme = \"ananke\"\r\n<\/code><\/pre>\n<h3>Krok 3: Tworzenie zawarto\u015bci<\/h3>\n<p>Utw\u00f3rz nowy post na blogu, aby przetestowa\u0107 stron\u0119:<\/p>\n<pre><code>hugo new posts\/moj-pierwszy-post.md<\/code><\/pre>\n<p>Edytuj plik <code>content\/posts\/moj-pierwszy-post.md<\/code>, aby doda\u0107 tre\u015b\u0107:<\/p>\n<pre><code>---\r\ntitle: \"M\u00f3j Pierwszy Post\"\r\ndate: 2025-07-19T16:00:00+02:00\r\ndraft: false\r\n---\r\nWitaj na mojej stronie stworzonej za pomoc\u0105 Hugo!\r\n<\/code><\/pre>\n<h3>Krok 4: Testowanie strony lokalnie<\/h3>\n<p>Uruchom lokalny serwer Hugo, aby przetestowa\u0107 stron\u0119:<\/p>\n<pre><code>hugo server -D<\/code><\/pre>\n<p>Otw\u00f3rz przegl\u0105dark\u0119 i przejd\u017a do <code>http:\/\/localhost:1313<\/code>, aby zobaczy\u0107 podgl\u0105d strony.<\/p>\n<h2>4. Wdro\u017cenie strony z Apache<\/h2>\n<h3>Krok 1: Generowanie statycznych plik\u00f3w<\/h3>\n<p>Wygeneruj statyczne pliki strony Hugo:<\/p>\n<pre><code>hugo<\/code><\/pre>\n<p>Pliki zostan\u0105 zapisane w katalogu <code>~\/moja-strona\/public<\/code>.<\/p>\n<h3>Krok 2: Instalacja Apache<\/h3>\n<p>Zainstaluj serwer Apache, je\u015bli jeszcze nie jest zainstalowany:<\/p>\n<pre><code>sudo apt install -y apache2\r\nsudo systemctl enable apache2\r\nsudo systemctl start apache2<\/code><\/pre>\n<h3>Krok 3: Przeniesienie plik\u00f3w strony<\/h3>\n<p>Skopiuj wygenerowane pliki do katalogu Apache:<\/p>\n<pre><code>sudo cp -r ~\/moja-strona\/public\/* \/var\/www\/html\/<\/code><\/pre>\n<p>Ustaw odpowiednie uprawnienia:<\/p>\n<pre><code>sudo chown -R www-data:www-data \/var\/www\/html\r\nsudo chmod -R 755 \/var\/www\/html<\/code><\/pre>\n<h3>Krok 4: Konfiguracja wirtualnego hosta<\/h3>\n<p>Utw\u00f3rz plik konfiguracyjny dla Apache:<\/p>\n<pre><code>sudo nano \/etc\/apache2\/sites-available\/hugo.conf<\/code><\/pre>\n<p>Dodaj nast\u0119puj\u0105c\u0105 konfiguracj\u0119, zast\u0119puj\u0105c <code>twoj-domena.pl<\/code> swoj\u0105 domen\u0105:<\/p>\n<pre><code>\r\n    ServerName twoj-domena.pl\r\n    ServerAlias www.twoj-domena.pl\r\n    DocumentRoot \/var\/www\/html\r\n    \r\n        Options Indexes FollowSymLinks\r\n        AllowOverride All\r\n        Require all granted\r\n    \r\n    ErrorLog ${APACHE_LOG_DIR}\/hugo_error.log\r\n    CustomLog ${APACHE_LOG_DIR}\/hugo_access.log combined\r\n<\/code><\/pre>\n<p>W\u0142\u0105cz wirtualny host i zrestartuj Apache:<\/p>\n<pre><code>sudo a2ensite hugo.conf\r\nsudo systemctl restart apache2<\/code><\/pre>\n<h2>5. Instalacja Let&#8217;s Encrypt SSL<\/h2>\n<h3>Krok 1: Instalacja Certbot<\/h3>\n<p>Zainstaluj Certbot, aby uzyska\u0107 darmowy certyfikat SSL:<\/p>\n<pre><code>sudo apt install -y certbot python3-certbot-apache<\/code><\/pre>\n<h3>Krok 2: Uzyskanie certyfikatu SSL<\/h3>\n<p>Uruchom Certbot, aby skonfigurowa\u0107 SSL:<\/p>\n<pre><code>sudo certbot --apache -d twoj-domena.pl -d www.twoj-domena.pl<\/code><\/pre>\n<p>Post\u0119puj zgodnie z instrukcjami, aby skonfigurowa\u0107 SSL i w\u0142\u0105czy\u0107 automatyczne przekierowanie na HTTPS.<\/p>\n<h3>Krok 3: Automatyczne odnawianie certyfikatu<\/h3>\n<p>Sprawd\u017a, czy automatyczne odnawianie dzia\u0142a:<\/p>\n<pre><code>sudo certbot renew --dry-run<\/code><\/pre>\n<h2>6. Bezpiecze\u0144stwo i optymalizacja<\/h2>\n<p>Aby zwi\u0119kszy\u0107 bezpiecze\u0144stwo i wydajno\u015b\u0107:<\/p>\n<ul>\n<li style=\"list-style-type: none;\">\n<ul>\n<li>Zabezpiecz serwer za pomoc\u0105 zapory sieciowej:<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<pre><code>sudo apt install -y ufw\r\nsudo ufw allow 80\r\nsudo ufw allow 443\r\nsudo ufw enable<\/code><\/pre>\n<ul>\n<li style=\"list-style-type: none;\">\n<ul>\n<li>Zainstaluj Fail2ban, aby chroni\u0107 przed atakami brute-force:<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<pre><code>sudo apt install -y fail2ban\r\nsudo systemctl enable fail2ban\r\nsudo systemctl start fail2ban<\/code><\/pre>\n<ul>\n<li style=\"list-style-type: none;\">\n<ul>\n<li>W\u0142\u0105cz kompresj\u0119 w Apache, aby przyspieszy\u0107 \u0142adowanie strony:<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<pre><code>sudo a2enmod deflate\r\nsudo nano \/etc\/apache2\/mods-enabled\/deflate.conf<\/code><\/pre>\n<p>Dodaj lub zmodyfikuj:<\/p>\n<pre><code>\r\n    AddOutputFilterByType DEFLATE text\/html text\/plain text\/css application\/javascript\r\n<\/code><\/pre>\n<p>Zrestartuj Apache:<\/p>\n<pre><code>sudo systemctl restart apache2<\/code><\/pre>\n<ul>\n<li style=\"list-style-type: none;\">\n<ul>\n<li>Regularnie aktualizuj Hugo i motyw, aby korzysta\u0107 z najnowszych funkcji i poprawek bezpiecze\u0144stwa:<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<pre><code>cd ~\/moja-strona\r\ngit submodule update --remote themes\/ananke\r\nhugo<\/code><\/pre>\n<p>Nasze <a href=\"https:\/\/netcloud24.com\/serwery\/vps-linux\/\">serwery VPS z Linux<\/a> oraz <a href=\"https:\/\/netcloud24.com\/\">Windows VPS<\/a> na <a href=\"https:\/\/netcloud24.com\/\">Netcloud24<\/a> zapewniaj\u0105 wysok\u0105 dost\u0119pno\u015b\u0107 i bezpiecze\u0144stwo dla stron statycznych.<\/p>\n<h2>7. Podsumowanie<\/h2>\n<p>Tworzenie strony internetowej za pomoc\u0105 Hugo na Debian 11 jest szybkie i proste, dzi\u0119ki \u0142atwo\u015bci instalacji oraz wydajno\u015bci generatora stron statycznych. Po wdro\u017ceniu na Apache z certyfikatem SSL od Let&#8217;s Encrypt Twoja strona b\u0119dzie bezpieczna i gotowa do u\u017cycia. Aby uzyska\u0107 najlepsz\u0105 wydajno\u015b\u0107, polecamy nasze <a href=\"https:\/\/netcloud24.com\/serwery\/vps-linux\/\">serwery VPS z Linux<\/a> lub <a href=\"https:\/\/netcloud24.com\/\">Windows VPS<\/a> na <a href=\"https:\/\/netcloud24.com\/\">Netcloud24<\/a>, kt\u00f3re oferuj\u0105 skalowalne i niezawodne rozwi\u0105zania dla Twoich projekt\u00f3w internetowych.<\/p>\n<\/div>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>&nbsp; Hugo to szybki i elastyczny generator stron statycznych, idealny do tworzenia blog\u00f3w, portfolio czy dokumentacji. W tym poradniku poka\u017cemy, jak zainstalowa\u0107 Hugo na Debian\u2026<\/p>\n","protected":false},"author":1,"featured_media":330,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-329","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-linux"],"_links":{"self":[{"href":"https:\/\/netcloud24.com\/pl\/blog\/wp-json\/wp\/v2\/posts\/329","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/netcloud24.com\/pl\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/netcloud24.com\/pl\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/netcloud24.com\/pl\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/netcloud24.com\/pl\/blog\/wp-json\/wp\/v2\/comments?post=329"}],"version-history":[{"count":1,"href":"https:\/\/netcloud24.com\/pl\/blog\/wp-json\/wp\/v2\/posts\/329\/revisions"}],"predecessor-version":[{"id":331,"href":"https:\/\/netcloud24.com\/pl\/blog\/wp-json\/wp\/v2\/posts\/329\/revisions\/331"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/netcloud24.com\/pl\/blog\/wp-json\/wp\/v2\/media\/330"}],"wp:attachment":[{"href":"https:\/\/netcloud24.com\/pl\/blog\/wp-json\/wp\/v2\/media?parent=329"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/netcloud24.com\/pl\/blog\/wp-json\/wp\/v2\/categories?post=329"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/netcloud24.com\/pl\/blog\/wp-json\/wp\/v2\/tags?post=329"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}