Ako presmerovať v nanoc - apache, nanoc

Som nový v nanoc a ja som len nastaviť pomocou blogu.

Všetky moje príspevky sú pod /blog/post/Month/Post_name.html, ale zakaždým, keď navštívim /post/, ukazuje mi zoznam súborov Apache.

Skôr chcem /blog/post/* presmerovať na /blog/ (ktorá obsahuje zoznam všetkých blogových príspevkov), ale pri prístupe na internet /blog/post/Month/Post_name.html, malo by to byť správne.

Ako to mám urobiť?

odpovede:

3 pre odpoveď č. 1

Toto je otázka o Apache, nie o nanoc.

V konfiguračnom súbore sa uistite, že Options neobsahuje Indexes, Týmto sa vypnú zoznamy adresárov.

Na presmerovanie môžete použiť mod_alias, Pozrite sa na dokumentácia pre presmerovanie.


3 pre odpoveď č. 2

Arjan van der Gaag má skutočne pekné riešenie pre takéto presmerovania. Podľa jeho nanoc-template wiki na túto tému, musíte do svojho doplnku pridať iba nejaké informácie config.yaml:

redirects:
-
from: /foo
to: /bar
-
from: /baz
to: /qux

Potom nakonfigurujte svoj htaccess súbor, ktorý obsahuje tieto nastavenia:

<% if @site.config[:redirects] %>
# Set up URL redirects<% @site.config[:redirects].each do |h| %>
Redirect 301 <%= h[:from] %> <%= h[:to] %>
<% end %><% end %>

(Confere https://github.com/avdgaag/nanoc-template/blob/master/content/htaccess.txt)

Výsledok bude vyzerať takto:

Redirect 301 /foo /bar
Redirect 301 /baz /quz

A 301 („Trvale presunuté“) bude v tomto prípade príliš tvrdý: budete chcieť presmerovať 303 („Zobraziť ďalšie“).