Domyślny plik konfiguracyjny dla plików obsługiwanych przez instalację Apache to /etc/apache2/sites-enabled/000-default. Dobrze jest wykonać kopię zapasową oryginalnego pliku przed rozpoczęciem zabawy z tym plikiem.
Za każdym razem, gdy edytujesz ten plik, Apache musi być restartowany / ponownie ładowany, aby zmiany odniosły skutek - sudo service apache2 restart(lub) sudo service apache2 reload, podczas gdy zmiany w .htaccessnie wymagają restartowania Apache. Jak wspomniano w @dobey, .htaccessplik trafia do DocumentRoot strony internetowej.
Aby .htaccesspliki działały zgodnie z oczekiwaniami, musisz edytować ten plik:
/etc/apache2/sites-available/default
Poszukaj sekcji, która wygląda następująco:
<Directory /var/www/>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
# Uncomment this directive is you want to see apache2's
# default start page (in /apache2-default) when you go to /
#RedirectMatch ^/$ /apache2-default/
</Directory>
Musisz zmodyfikować wiersz zawierający AllowOverride None, aby odczytać AllowOverride All . To mówi Apache, że zezwala się, aby .htaccesspliki zastępowały poprzednie dyrektywy. Musisz ponownie załadować Apache, zanim ta zmiana zadziała:
sudo /etc/init.d/apache2 reload
Uwaga 2009.12.08: w pobranym LAMP około tydzień temu z Ubuntu 9.10 (Karmic) domyślnym plikiem konfiguracyjnym był /etc/apache2/sites-available/000-defaulti został dołączony
AllowOverride Nonejako <Directory />dodatek do <Directory
/var/www/>. Ponadto katalogi /www/var/zawierające .htaccess
pliki domyślnie nie dawały serwerowi Apache dostępu do odczytu, co powoduje błąd Apache
(13)Permission denied: /var/www/webapp/.htaccess pcfg_openfile: unable to check htaccess file, ensure it is readable.
Aby to naprawić, $ sudo nautiluskliknij prawym przyciskiem myszy katalog z
.htaccesplikiem s, wybierz Właściwości, następnie wybierz Uprawnienia i daj grupie użytkowników, z której się logujesz, przynajmniej uprawnienia do odczytu.
Zobacz http://httpd.apache.org/docs/2.0/mod/core.html#allowoverride, aby uzyskać więcej informacji na temat AllowOverride.
/etc/apache2/httpd.confi dobrym pomysłem jest wykonanie kopii zapasowej oryginalnego pliku przed rozpoczęciem zabawy. Jeśli chodzi o.htaccessplik, proszę odnieść się do odpowiedzi @dobey