2017-09-14 17 views
5

Próbuję utworzyć witrynę z Hugo, ale nie wiem, jak dodać jedną stronę do mojej witryny (posty działają poprawnie).Dlaczego moja pojedyncza strona w Hugo zwraca błąd HTTP 404?

Począwszy od nowej instalacji (v.0.27 64x dla okien) i uruchamiając następującą komendę z moim terminalu:

> hugo new site soexample 
> cd soexample 
> git clone https://github.com/parsiya/Hugo-Octopress.git themes\octopress 
> hugo new about.md 
> echo "Please display me" >> content\about.md 
> hugo serve -D -t octopress 

widzę, że mój projekt strona jest renderowane z wyjścia ostatnie polecenie:

... 
Built site for language en: 
1 of 1 draft rendered 
... 

ale przy próbie uzyskania dostępu do dowolnego http://localhost:1313/about/ lub http://localhost:1313/about.html serwer (nie przeglądarka) zwraca stronę białego wi th:

404 page not found 

Czego mi brakuje?

+0

Czy zamiast tego powinienem umieścić moją stronę w sekcji? To znaczy przenieść 'soexample \ content \ about.md' do' soexample \ content \ about \ _index.md'? –

Odpowiedz

4

Problem wydaje się pochodzić z wybranego domyślnego motywu, który nie powoduje wyświetlania single page poza postami section. Motywy mogą być trudnym punktem dla początkujących, ponieważ hugo nie jest dostarczany z domyślnym i żaden oficjalny motyw nie jest zalecany lub obsługiwany (więc początkujący mogą wybierać losowo).

Więc następujące polecenia pracował dla mnie:

> hugo new site soexample 
> cd soexample 
> git clone https://github.com/spf13/hyde.git themes\hyde 
> hugo new about.md 
> echo "Please display me" >> content\about.md 
> hugo serve -D -t hyde 

Strona http://localhost:1313/about/ jest poprawnie renderowane.

+0

Czy istnieje standardowy sposób edytowania kompozycji, aby renderował pojedyncze strony poza sekcjami postów? – mjeppesen

+1

Zależy od tego, co masz na myśli przez _standard_: możesz dodać plik 'single.html' w swoim folderze' layout \ default'. Zastąpi dowolny układ z twojego motywu, aby renderować pojedyncze pliki z tym układem. Jedyną rzeczą jest to, że sprzężenie z układami kompozycji może być trudne do pozbywania się. Minimalna zawartość, którą chcesz umieścić w pliku 'single.html' to' {{.Content}} ', ale na pewno będziesz potrzebować innych elementów (nagłówek, stopkę), które mogą być zależne od bieżącego motywu. –

0

Aby renderować oddzielne strony w Hugo, należy ustawić typ strony i upewnić się, że w szablonach znajduje się "pojedynczy" szablon.

W przedmości about.md ustaw 'typ' na 'strona'. W folderze layoutów w folderze _default upewnij się, że masz plik single.html.

To wszystko, strona/about powinna teraz być wyświetlana poprawnie.

Powiązane problemy