IT rekvalifikace s garancí práce. Seniorní programátoři vydělávají až 160 000 Kč/měsíc a rekvalifikace je prvním krokem. Zjisti, jak na to!
Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.
Avatar
Nezmar Hydra
Člen
Avatar
Nezmar Hydra:21.11.2016 22:23

Nemůžu přijít na to jak mám v Apache/2.4.7 (Ubuntu) povolit soubory .htaccess.
po mnoha a mnoha hodinách hledání na netu, jsem nenašel nic co by mi fungovalo. ani na https://httpd.apache.org/docs/current/

nakonec si myslím, že by to mělo jít povolit v souboru apache2.conf
.
.
.
.

# AccessFileName: The name of the file to look for in each directory
# for additional configuration directives. See also the AllowOverride
# directive.
#
AccessFileName .htaccess

#
# The following lines prevent .htaccess and .htpasswd files from being
# viewed by Web clients.
<FilesMatch "^\.ht">
Require all granted
</FilesMatch>

jenže se neprovede žádná změna. ani po restartu ze shelu
sudo service apache2 restart
ani po restartu počítače. Můžete prosím poradit jak na to?

díky

 
Odpovědět
21.11.2016 22:23
Avatar
Odpovídá na Nezmar Hydra
Neaktivní uživatel:22.11.2016 7:03

Tohle je nastavení názvu htaccess souborů a práv.

Zapíná a vypíná se ale v sekci <Directory> direktivou AllowOverride

# htaccess vypnutý
<Directory /var/www>
        AllowOverride None
</Directory>

# htaccess zapnutý pro všechny direktivy
<Directory /var/www/>
        AllowOverride All
</Directory>
Akceptované řešení
+20 Zkušeností
+2,50 Kč
Řešení problému
Nahoru Odpovědět
22.11.2016 7:03
Neaktivní uživatelský účet
Avatar
Roman
Člen
Avatar
Roman:22.11.2016 7:20

Jen doplim je zapotřebí mit zapnuty modul rewrite: sudo a2enmod rewrite . Nasledne se ujistit, ze je v sekci Directory [adresar s webem] AllowOverride All

 
Nahoru Odpovědět
22.11.2016 7:20
Avatar
Odpovídá na Roman
Neaktivní uživatel:22.11.2016 11:11

Pro zapnutí stačí to co sem psal.
Spousta lidí má mylnou představu, že htaccess = přepis url, ale tak to není.
mod_rewrite nemá vliv na to zda Apache hledá nebo nehledá htaccess v adresářích.
mod_rewrite pouze přidává direktivy, které kontextem spadají pod htaccess a lze je v něm tedy nastavovat za běhu.
Proto se dá v htaccess testovat jestli je modul zapnutý dřív než se začne používat

<IfModule mod_rewrite.c>
RewriteEngine On

...pravidla pro přepis...

</IfModule>
Nahoru Odpovědět
22.11.2016 11:11
Neaktivní uživatelský účet
Avatar
Nezmar Hydra
Člen
Avatar
Nezmar Hydra:22.11.2016 14:19

děkuji za rady. Použil jsem tedy
<Directory /var/www/>
#Options Indexes FollowSymLinks
AllowOverride All
#Require all granted
</Directory>

ale bohužel mi to stejně nefunguje jen se problém kapku změnil. po zadání adresy se mi vrátí.
Forbidden
You don't have permission to access /checker.php on this server.
Apache/2.4.7 (Ubuntu) Server at localhost Port 80

teď už na to nemám kdy, ale večer to snad už dořešim. Můžete mě zase pošťouchnout správným směrem? Díky

 
Nahoru Odpovědět
22.11.2016 14:19
Avatar
Nezmar Hydra
Člen
Avatar
Nezmar Hydra:22.11.2016 20:29

Tak snad to mám. Jen jsem to musel napsat takto :
<Directory /var/www/>
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>

ale výsledek je
.htaccess mod_rewrite Enabled :-)

jen
.htaccess file protection Disabled
Čemu to bude vadit? Pokusil bych se to vygooglit, ale nejde mi google. Neuvěřitelný.

Editováno 22.11.2016 20:29
 
Nahoru Odpovědět
22.11.2016 20:29
Avatar
Odpovídá na Nezmar Hydra
Neaktivní uživatel:23.11.2016 6:08

V dokumentaci máš tabulku co která položka znamená ( Požadavky Nette Frameworku )

Konkrétně je tam, že .htaccess file protection - kontroluje jestli lze v .htaccess zakázat přístup do chráněných složek

Nahoru Odpovědět
23.11.2016 6:08
Neaktivní uživatelský účet
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 7 zpráv z 7.