Файл конфигурации по умолчанию для файлов, обслуживаемых вашей установкой Apache, - /etc/apache2/sites-enabled/000-default
. Рекомендуется сделать резервную копию исходного файла, прежде чем поиграть с этим файлом.
#To make a backup of the original config file:
sudo cp /etc/apache2/sites-enabled/000-default /etc/apache2/sites-enabled/000-default.orig
Каждый раз, когда вы редактируете этот файл, Apache должен быть перезапущен / перезагружен, чтобы изменения вступили в силу - sudo service apache2 restart
(или) sudo service apache2 reload
, в то время как изменения в .htaccess
не требуют перезапуска Apache. Как уже упоминалось @dobey, .htaccess
файл помещается в DocumentRoot веб-сайта.
Посмотрите на официальную документацию о том, как включить .htaccess
файлы.
Выдержка:
Чтобы .htaccess
файлы работали должным образом, вам нужно отредактировать этот файл:
/etc/apache2/sites-available/default
Найдите раздел, который выглядит следующим образом:
<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>
Вам нужно изменить строку, содержащую AllowOverride None, чтобы прочитать AllowOverride All . Это говорит Apache, что можно разрешить .htaccess
файлам переопределять предыдущие директивы. Вы должны перезагрузить Apache, чтобы это изменение дало эффект:
sudo /etc/init.d/apache2 reload
2009.12.08 Примечание: в фонаре загрузки около недели назад с Ubuntu 9.10 (кармического) файл конфигурации по умолчанию был /etc/apache2/sites-available/000-default
и включен
AllowOverride None
под <Directory />
в дополнение к <Directory
/var/www/>
. Кроме того, каталоги, /www/var/
содержащие .htaccess
файлы, по умолчанию не предоставляют доступ на чтение серверу Apache, что приводит к ошибке Apache.
(13)Permission denied: /var/www/webapp/.htaccess pcfg_openfile: unable to check htaccess file, ensure it is readable.
Чтобы исправить это, $ sudo nautilus
щелкните правой кнопкой мыши каталог с
.htacces
файлом s, выберите «Свойства», затем выберите «Разрешения» и предоставьте группе пользователей, в которую вы входите, как минимум разрешение на чтение.
См. Http://httpd.apache.org/docs/2.0/mod/core.html#allowoverride для получения дополнительной информации AllowOverride
.
/etc/apache2/httpd.conf
поэтому рекомендуется создать резервную копию исходного файла, прежде чем поиграть с ним. Что касается.htaccess
файла, пожалуйста, обратитесь к ответу @dobey