Debugging .htaccess is at time shooting in dark. I had gone through one such day where every thing makes sense but it does not work. I had outlined the step i used to find out the bug.
Add a Garbage inside the .htaccess to see whether you get Server Error. If you get a server error it is working
This is Garbage and should result in failure
RewriteRule ^(.*$ /deubg.php?$1 [QSA]
If you get a server error then there is some problem in the your .htaccess config. You can try the online .htaccess tool to debug the same
If you do not get a .htaccess error then .htaccess is not read by the Apache
- Open the Apache configuration file located at /etc/httpd/conf/httpd.conf
- Change AllowOveride None to AllowOveride All inside the DocumentRoot Directory Directive, normally<Directory “/var/www/html”>