С помощью файла .htaccess, помещенного в корень сайта, можно изменять некоторые настройки сервера Apache и PHP под свои нужды. В частности, с помощью него реализованы ЧПУ (SEF) и решаются некоторые вопросы безопасности.
Включение mod_rewrite
Директива mod_rewrite чаще всего используется для SEF, а также для перенаправления посетителей на нужные адреса вообще в случае невозможности использования обычного редиректа. Для ее включения необходимо раскомментировать (то есть убрать впереди знак #) следующую строку:
# RewriteEngine OnТакже с помощью директивы mod_rewrite можно создать собственный SEF, но об этом мы расскажем в отдельной статье
Использование встроенного механизма SEF
Если вы собираетесь использовать встроенный в систему SEF, то вам необходимо раскомментировать строку:
# RewriteBase /
В случае, если вы устанавливаете Joomla в корневую директорию сервера, эта строка будут выглядеть так:
RewriteBase /
Если же Joomla устанавливается в поддиректорию dir, то вторую строку необходимо написать так:
RewriteBase /dir/
Отключение register_globals
Для повышения уровня безопасности рекомендуется отключить режим register_globals в PHP, прописав следуюшие строки в начале файла .htaccess:
Для Apache 1.xphp_flag register_globals offДля Apache 2.x
php_value register_globals 0
ПРИМЕЧАНИЕ: возможно, у вас на хостинге это уже сделано, в этом случае никаких дополнительных настроек не требуется
Автоматический редирект с mysite.ru на www.mysite.ru
У многих из нас возникает проблема с Java Script, если случайно мы заходим на сайт без WWW, тогда как в настройках Joomla доменное имя указано с WWW. В этом случае нам нужно сделать так, чтобы человек заходящий по адресу mysite.ru автоматически попадал на адрес www.mysite.ru, причем как на главной, так и на любой другой странице. Это реализуется следующим кодом:
RewriteCond %{HTTP_HOST} ^mysite\.ru RewriteRule ^(.*)$ http://www.mysite.ru/$1 [R=permanent,L]