Щоб відповісти на перше запитання із трьох запитаних, простий спосіб зрозуміти, чи працює .htaccess файл чи ні - це викликати власну помилку у верхній частині файлу .htaccess:
ErrorDocument 200 "Hello. This is your .htaccess file talking."
RewriteRule ^ - [L,R=200]
Що стосується вашого другого питання, якщо файл .htaccess не читається, можливо, основну конфігурацію сервера Apache AllowOverrideвстановлено на None. Документація Apache містить поради щодо усунення несправностей для тих та інших випадків, які можуть перешкоджати введенню .htaccess у дію.
Нарешті, щоб відповісти на ваше третє запитання, якщо вам потрібно налагодити певні змінні, на які ви посилаєтесь у вашому правилі переписання або використовуєте вираз, який ви хочете оцінити незалежно від правила, ви можете зробити наступне:
Виведіть змінну, на яку ви посилаєтесь, щоб переконатися, що вона має значення, яке ви очікуєте:
ErrorDocument 200 "Request: %{THE_REQUEST} Referrer: %{HTTP_REFERER} Host: %{HTTP_HOST}"
RewriteRule ^ - [L,R=200]
Випробуйте вираз самостійно, ввівши його в <If>директиву. Це дозволяє переконатися, що ваш вираз написано правильно або збігається, коли ви очікуєте, що це:
<If "%{REQUEST_URI} =~ /word$/">
ErrorDocument 200 "Your expression is priceless!"
RewriteRule ^ - [L,R=200]
</If>
Щаслива .htaccess налагодження!