Verify that the .htaccess is present in your root folder (the folder that contains the index.php of your website).
For drupal the first few lines of the .htaccess file look like the following (don’t tell me that it is empty – it should not be empty):
# Apache/PHP/Drupal settings: # # Protect files and directories from prying eyes. Order allow,deny # Don't show directory listings for URLs which map to a directory. Options -Indexes
if you do not see these lines then something is wrong. Unzip the drupal 7 again and locate the .htaccess and copy it to your root (the location of your index file). Again, Drupal does come with a .htaccess file, there is no reason to copy and paste stuffs that you find online, unless you know what you are doing.
Make sure that your server is reading the .htaccess file.
Open the .htaccess file type some random characters in it and save the file. Try to navigate to your website. You should get an internal server error:
If can see your site without a problem then your server is NOT reading the file.
Open you apache2.conf or http.conf and change the AllowOverride directive:
Fourthly, Now go and navigate to your website.
If you do get the internal server error that means that the server is now reading your .htaccess file. Go back to your .htaccess file and remove the random characters and save.
Enable the "Clean URL" Feature