I have htaccess file :
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^user/([a-z0-9-\s]+)?/$ user/?u=$1 [NC]
RewriteCond %{REQUEST_URI} ^user/([a-z0-9-\s]+)?/$ [NC]
RewriteRule ^.*$ -
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /index.php [L]
the idea is like this , I made a page 'user' ,in page template I read the $_GET value and use it to show some user stats depending on login, earlier I used /user?u=login but I need to use /user/login, right now it works strange , if I pass ID or any number ( i.e. /user/26/ ) it renders me the page template ,the GET data are there , but if I try to put a letter ( or string i.e. /user/haribo/ ) I'm sent to 404 template with the GET data , what is wrong ??