Apache Settings
Enable rewrite module:
~$ sudo a2enmod rewrite
Edit Apache configuration file: (I only have one site enabled)
~$ vim /etc/apache2/sites-enabled/000-default
Change AllowOverride None to AllowOverride All
Options Indexes FollowSymLinks MultiViews AllowOverride All Order allow,deny allow from all
Restart Apache:
~$ sudo service apache2 restart
WordPress Settings
Settings -> Permalinks
Enable your desired permalinks and Save Changes.
.htaccess should look like so:
RewriteEngine On RewriteBase /wordpress/ RewriteRule ^index.php$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /wordpress/index.php [L]
If it doesn’t, edit it.