In your .htaccess you have "index.php", it needs a slash ... '/index.php'
otherwise, when he tries to rewrite / about it, he will look for /about/index.php instead of the root /index.php
I just had a different thought. It is "possible" that although mod_rewrite is intalled, a quirk may occur with the server, causing it not to overwrite.
If the global route below does not work, you can test rewriting
RewriteRule ^/google http://www.google.com [L,NC];
You can also try the global route for the directory.
F3::route('GET /about/*','about');
but that means that any of them is in domain.com/about / ...... something ... will be redirected to the about function ...
Note on mod_rewrite and FF
As you said, FF sends you 404 because it expects '/' instead of '/index.php' ... However, it is index.php that expects the difference.
To demonstrate this, I believe that you can duplicate your
F3::route('GET /','home');
as
F3::route('GET /index.php','home');
and the page should be displayed ...
The reason for this is that you simply go to the / (or / index.php) directory via eitehr apache servex on the index.php page ....
mod_rewrite allows you to redirect / about and redirect it to index.php. So if your rewrite rule does not work, the redirect / rewrite will not happen and you will get 404 ...
As I mentioned above, test mod_rewrite with a Google rule .. then try going to http://localhost:80/google if it does not redirect you to Google then your rewrite mechanism does not work ... (maybe the window configuration problem .)
to enable mod_rewrite under windows: Open your http.conf Find this line:
remove the comment mark (#) from the line ... so you have: LoadModule modules rewrite_module / mod_rewrite.so Save the file and restart apache.
Alternatively .. I think you can just say:
LoadModule rewrite_module modules/mod_rewrite.so
at the beginning of your htaccess file ...