I struggled with this for awhile because sometimes you have rewritten URLs that you want to pass a query string but most of the info and examples do not support this.
Take a typical example like this:
RewriteRule ^(.*)-(.*)-(.*) /?module=$3&id=$2
You need to add the QSA flag to make it work like below:
RewriteRule ^(.*)-(.*)-(.*) /?module=$3&id=$2 [QSA]
The QSA preserves the original query string but also appends it with whatever you add.
You can now access "yourstring" with GET whereas without the QSA in the rewrite you couldn't.
htaccess, mod_rewrite, preserve, custom, query, solutioni, struggled, rewritten, urls, info, examples, rewriterule, module, qsa, preserves, appends, eg, http, yourdomain, url, yourstring, quot, whereas, rewrite, couldn,