czysty adres URL za pomocą .htaccess

Próbuję przekierować linki w mojej domenie. To, co próbuję osiągnąć, to: Kiedy użytkownik kliknie link do

mydomain.com/index.php?dir=myfolder

Chcę, aby został przekierowany na dokładnie ten adres URL, ale pasek przeglądarki powinien pokazywać ten adres URL:

mydomain.com/myfolder

Ponieważ nie mam dostępu do sposobu ustanawiania łączy (jest to strona php), próbuję to zrobić za pomocą pliku .htaccess.

Oto co mam:

RewriteEngine on
RewriteBase /
RewriteCond %{HTTP_HOST} subdomain.mydomain.com
RewriteCond %{REQUEST_URI} (.*)/style.css [OR]
RewriteCond %{REQUEST_URI} (.*)/script.js [OR]
RewriteCond %{REQUEST_URI} (.*)/logo.png
RewriteRule (.*) http://www.subdomain.com%{REQUEST_URI} [R=301,NC,L]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /index.php?dir=$1 [L]

Więc kiedy wchodzę"mydomain.com/myfolder" w przeglądarce działa dobrze, a adres URL w pasku adresu pozostaje taki. Ale kiedy wchodzę"mydomain.com/index.php?dir=myfolder" działa równie dobrze, ale URL również pozostaje taki sam (co nie jest tym, czego chcę). Zakładam, że muszę jakoś zmienić adres URL za pomocą pliku .htaccess i mieć go (tak jak już mam) przepisany do schematu php. Zrobiłem kilka podejść teraz, ale nie mam pojęcia, jak to zrobić. Mam nadzieję, że rozumiesz moje pytanie i możesz mi pomóc!

Dziękuję Ci!

EDIT:

Rozwiązanie (dzięki @anubhava):

RewriteEngine on
RewriteBase /

RewriteCond %{THE_REQUEST} ^[A-Z]{3,}\s/+index\.php\?dir=([^\s]+) [NC]
RewriteRule ^ %1? [R=301,L]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /index.php?dir=/$1 [L]

questionAnswers(3)

yourAnswerToTheQuestion