LINUX.ORG.RU

Не работает .htaccess


0

0

Как будто его вообще нет. httpd.conf пуст, в apache2.conf включен AccessFileName .htaccess. На AllowOverride All, размещённый в том же конфиге, апач ругается при старте.

Секции <Directory></Directory>, куда, по идее, нужно прописывать AllowOverride All, нет, а при попытке её создать требуются доп. аргументы.

Что скажете?


Так, не разглядел, что праильно нужно

<Directory /> AllowOverride None </Directory>

Теперь апач признаёт свой конфиг, но всё равно заведомо верные правила не работают.

ufw
() автор топика
Ответ на: комментарий от isden

Нет, всё на локалхосте, пермишены есть. Вот мой .htaccess:

RewriteEngine On
RewriteBase /work_dir/

Redirect 301 /work_dir/ http://google.com/


В конфиге:

<Directory /work_dir/>
AllowOverride All
</Directory>

Пробовал

<Directory />
AllowOverride All
</Directory>

Но не работает.

ufw
() автор топика
Ответ на: комментарий от ufw

При

<Directory «/var/www/work_dir/»> AllowOverride All </Directory>

апач рестартует, но получаю Internal Server Error, то же самое и без кавычек.

ufw
() автор топика
Ответ на: комментарий от Slavaz

У меня сделано вот так для локальных тестов:

NameVirtualHost 127.0.0.4
<VirtualHost 127.0.0.4>
	DocumentRoot /var/www/blog/app
	<Directory /var/www/blog/app>
		Options All
		AllowOverride All
	</Directory>
</VirtualHost>

Также апач должен быть собран с модулем mod_rewrite. В debian из репов если, то это делается командой: a2enmod modrewrite от рута.

Megamozg
()
Ответ на: комментарий от Slavaz

Всё, полностью разобрался. mod_rewrite, будучи выключенным, в .htaccess запрашивался первым, прекращая дальнейшую работу.

Его я включил через

sudo ln -s /etc/apache2/mods-available/rewrite.load /etc/apache2/mods-enabled/

sudo apache2ctl restart

Всем спасибо.

ufw
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.