Jak povolit mod_rewrite v Apache?

159

Právě jsem nainstaloval zásobník LAMP na svůj systém Ubuntu.

Přesměrování nefunguje pro mě. Nevím, jak to opravit. Může mi někdo pomoci?

    
dané vinoth 12.06.2011 15:45

2 odpovědi

231

Chcete-li povolit přepisovací modul, spusťte "přepis modulu pro zapnutí apache2":

sudo a2enmod rewrite

Chcete-li změny použít:

musíte restartovat webový server
sudo service apache2 restart

Pokud plánujete používat mod_rewrite v.htaccess souborů, musíte také povolit použití.htaccess souborů změnouAllowOverride None naAllowOverride FileInfo. Pro výchozí web upravte/etc/apache2/sites-available/default:

    <Directory /var/www/>
            Options Indexes FollowSymLinks MultiViews
            # changed from None to FileInfo
            AllowOverride FileInfo
            Order allow,deny
            allow from all
    </Directory>

Po takové změně musíte znovu spustit Apache.

odpověděl Lekensteyn 12.06.2011 15:49
49

Odvažuji se přidat zvláštní odpověď (v návaznosti na skvělou odpověď výše) týkající se ubuntu 14.04 a.htaccess:

V 14.04 se název výchozího konfiguračního souboru změní na000-default.conf:

sudo gedit /etc/apache2/sites-available/000-default.conf

přidejte na konec souboru následující:

<Directory "/var/www/html">
    AllowOverride All
</Directory>

Z nějakého důvodu je v Ubuntu 14.04 a apache2 kořen nastaven na/www/html. Chcete-li změnit kořenový adresář webových serverů zpět na staré dobré/www,open 000-default.conf a změnit

DocumentRoot /var/www/html/

DocumentRoot /var/www/

a pak samozřejmě by mělo být

<Directory "/var/www">
    AllowOverride All
</Directory>
    
odpověděl davidkonrad 17.10.2014 15:00