Я только что установил стек LAMP в своей системе Ubuntu. Р>
Перенаправление не работает для меня. Я не знаю, как это исправить. Кто-нибудь может мне помочь?
Я только что установил стек LAMP в своей системе Ubuntu. Р>
Перенаправление не работает для меня. Я не знаю, как это исправить. Кто-нибудь может мне помочь?
Чтобы включить модуль перезаписи, запустите «apache2 enable module rewrite»:
sudo a2enmod rewrite
Чтобы применить изменения, необходимо перезапустить веб-сервер:
sudo service apache2 restart
Если вы планируете использовать mod_rewrite в файлах .htaccess
, вам также необходимо включить использование .htaccess
файлов, изменив AllowOverride None
на AllowOverride FileInfo
. Для веб-сайта по умолчанию отредактируйте /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>
После такого изменения вам нужно снова перезапустить Apache.
a2enmod
Я смею добавить специальный ответ (как продолжение замечательного ответа выше) относительно ubuntu 14.04 и .htaccess
:
В 14.04 имя файла конфигурации по умолчанию изменяется на 000-default.conf
:
sudo gedit /etc/apache2/sites-available/000-default.conf
добавить в конец файла следующее:
<Directory "/var/www/html">
AllowOverride All
</Directory>
По какой-то причине в Ubuntu 14.04 и apache2 корень установлен на /www/html
. Если вы хотите изменить корень веб-сервера обратно на старые добрые /www
, open 000-default.conf
и изменить
DocumentRoot /var/www/html/
to
DocumentRoot /var/www/
, а затем, конечно, должно быть
<Directory "/var/www">
AllowOverride All
</Directory>