Maybe you’re missing the mod_rewrite?
Debian/Ubuntu (and other Debian based flavors):
sudo a2enmod rewrite
** You may also need to allow overriding of the rules in your Apache configuration, depending where you installed your web app.
i.e., if you used the default host, you’ll need to update the rule within this node from None to All:
<Directory /var/www/html>
AllowOverride All
</Directory>
And don’t forget to reload your Apache configuration.
Nota Bene
While “AllowOverride All” is often suggested in different HowTo over the web, this is usually opening a security hole at the server level and should only be used for testing. Be sure to understand what “All” implies before using it in a live environment (when you’ll do, you’ll probably won’t use it and go a more granular way).