Portál AbcLinuxu, 1. listopadu 2025 15:00
# AllowOverride controls what directives may be placed in .htaccess files.
# It can be "All", "None", or any combination of the keywords:
# Options FileInfo AuthConfig Limit
grep -nir allowoverride /etc/apache2/
Takže nevím, ve kterém souboru by defaultní nastavení Allowoverride mohlo být, ale hned první odkaz na Googlu: http://stackoverflow.com/questions/4111682/why-doesnt-htaccess-have-any-effect
# # AccessFileName: The name of the file to look for in each directory # for additional configuration directives. See also the AllowOverride # directive. # AccessFileName .htaccessPřičemž podle manuálu mám právě default konfigurační soubor
/etc/apache2/apache2.conf
AllowOverride none a to je nutné změnit
/etc/apache2/apache2.conf. V ňom je potrebné nastaviť
AccessFileName .htaccess(Toto by ale malo byť defaultne nastavené). Pod tým je
<Files ~ "^\.ht"> Order allow,deny Deny from all Satisfy all </Files>ktoré presne ako si napísal, zabraňuje vidieť súbory .ht* zvonka. Ďalej sa z tohoto súboru includujú ostatné rozrezané súbory. V tomto prípade sú pre teba dôležité súbory v adresári
/etc/apache2/sites-enabled/, kde by sa mali ukladať samostatne súbory s jednotlivými virtuálnymi hostmi. Pokiǎľ si tam žiadny nový host nepridával, mal by tam byť /etc/apache2/sites-enabled/000-default, kde je potrebné pre zadaný web adresár povoliť už ostatnými spominaným AllowOverride All (resp. v závislosti od ďalšej potreby pridať aj parametre Options). Tu sa to nastaví pre každý adresár samostatne, tj. v
<Directory /var/www/>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>
zmeníš na
AllowOverride Alla po reštarte apache by ti malo brať všetko z
.htacess
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.