Problem:
Standardowa konfiguracja apacha2 dla Ubuntu blokuje nadpisywanie globalnych ustawień lokalnymi ustawieniami .htaccess, może być to mylące ponieważ wygląda jak niedziałający mod_rewrite tymczasem wystarczy jedna zmiana w pliku konfiguracyjnym – do dzieła!
Rozwiązanie:
W konsolce wpisujemy:
sudo nano /etc/apache2/sites-available/default
Wyszukujemy ustawienia dla katalogu /var/www:
DocumentRoot /var/www <Directory /> Options FollowSymLinks AllowOverride None </Directory> <Directory /var/www/> Options Indexes FollowSymLinks MultiViews AllowOverride None Order allow,deny allow from all </Directory>
Interesująca nas informacja to deklaracja AllowOverride None(występuje ona dwa razy), w której zmieniamy None na All. Zapisujemy plik(Ctrl+O i Enter) i zamykamy Nano(Ctrl+X). W tym momencie apache będzie brał pod uwage ustawienia lokalnych plików .htaccess i nadpisywał nimi ustawienia globalne dla danego folderu. Pozostaje tylko aktywować mod_rewrite dla apacha przez wpisanie w konsoli:
sudo a2enmod rewriteOtrzymamy komunikat o tym że, wymagany jest restart serwera apache by konfiguracja zaczeła działać – w konsoli wpisujemy:
sudo /etc/init.d/apache2 restart
Po ponownym uruchomieniu apacha tryb jest już aktywny – miłej zabawy!
Jeśli ten wpis pomógł Ci lub chociaż poprawił humor – fajnie byłoby jakbyś zostawił tu po sobie ślad
1 komentarz
dune
Grudzień 14, 2010 na 12:32 am (UTC 1)
Czasami trzeba jeszcze dorobic linka:
# cd /etc/apache2/mods-enabled
# ln -s ../mods-available/rewrite.load
Łukasz
Styczeń 31, 2012 na 1:48 am (UTC 1)
Fajnie napisane dzięki za prosty tutorial. A co do tych linków konfigurowałem to na Fedorze 2x Ubuntu i obyło się bez
Grzegorz
Luty 29, 2012 na 8:46 am (UTC 1)
Dziękuję Emanuelowi1989. Bardzo rzeczowy, przejrzysty i przede wszystkim SKUTECZNY wpis-porada.