Если не работает .htaccess

Если директивы которые вы пишите в файл .htaccess не работают, то возможно веб сервер Apache игнорирует такие файлы. Для начала попробуйте проверить так ли это. Впишите в файл .htaccess заведомо рабочие директивы и посмотрите работают ли они.

Если же Apache игнорирует ваши файлы .htaccess, то стоит поискать в конфигах вашего Apache настройки AllowOverride и AccessFileName.

Строка «AccessFileName .htaccess» говорит серверу в каких файлах смотреть пользовательские настройки. А директива AllowOverride разрешает либо запрещает изменение серверных настроек из файлов .htaccess сайта.

Для того что бы ваши директивы в файлах .htaccess не игнорировались, в настройках сервера значение AllowOverride смените с None на All. Перезагрузите веб сервер для вступления в силу новых настроек.

Например включить поддержку коротких тегов в PHP, можно такой строкой в файле .htaccess
php_flag short_open_tag On

Если посмотреть вывод этого скрипта:

echo phpinfo();

То в колонке «Master Value» можно увидеть значение настроек из конфигов вебсервера, а в колонке «Local Value» значения настроек уже с учетом применения файлов .htaccess и прочих правок до вызова функции phpinfo().