I currently use the following htaccess code to remove php extensions and also allow the /index.php page to load without the word index:RewriteRule ^$ index.php [L]RewriteCond %{REQUEST_FILENAME} !-fRewriteCond %{REQUEST_FILENAME} !-dRewriteCond %{REQUEST_FILENAME}.php -fRewriteRule ^(.+[^/])$ $1.php [L]I used to create a new page for every single user but as one could probably see, this is not such a good idea. So i deleted all the user pages and i would include them a different way but i would need to pass the requested page as a get parameter to another file. So I decided to route every main level (/) requested page through a file in a different directory, like so:RewriteRule ^([^/]+)$ some/page.php?requested_page=$1 [L,QSA,NC]But it does not work with the /index.php page if someone just requested it like this: /i changed the code to:RewriteRule ^(<?!)([^/]+)$ some/page.php?requested_page=$1 [L,QSA,NC]and now the / request works and any page that really exist works, but the fake user pages now dont work. is there way i can do both?
htaccess only works for one
htaccess
RewriteRule ^([^/]+)$ ....This did not work for your index.php page when accessing as / since in that case the URL path is empty, but + matches 1 or more chars, so it doesn't match. Change + to * to match 0 or more.