OK, guys. I think I'm missing the point here.
The uri_protocol setting is used to tell CI which server global holds your URI string. So if your server needs you to set te uri_protocol to QUERY_STRING it should be fine, but it doesn't require you to use GET variables. You'll still use regular /controller/method URI's.
And why would you consider to set the enable_query_strings to true if not using the ?c=controller&m=method way of working...?
This maybe a strange question: But are you sure your server runs Apache server? I had some similar problems when trying to make things work on a server running NGINX...