Question
WordPress permalinks broken on Ubuntu 20.04 LAMP stack
Getting the following 404 error message:
Not Found
The requested URL was not found on this server.
Apache/2.4.41 (Ubuntu) Server at matbury.com Port 443
So far on my VPS:
Let’s encrypt certbot installed & HTTPS set at default (redirect)
Apache mod_rewrite installed & enabled
Allow Apache to write WordPress’ .htaccess file:
$chown www-data:www-data /var/www/html/wordpress/.htaccess
$chmod 755 /var/www/html/wordpress/.htaccess
$sudo nano /etc/apache2/sites-available/000-default.conf
<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot /var/www/html
<Directory /var/www/html/>
Options Indexes FollowSymLinks
AllowOverride all
Require all granted
</Directory>
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
(I even tried changing the port number to 443)
$sudo nano /etc/apache2/apache2.conf
ServerName localhost
$sudo service apache2 restart
(Even tried rebooting the server)
$sudo nano /var/www/html/wordpress/wp-config.php
Added:
define( 'WP_SITEURL', 'https://matbury.com/wordpress' );
$sudo nano /var/www/html/wordpress/.htaccess
# BEGIN WordPress
# The directives (lines) between `BEGIN WordPress` and `END WordPress` are
# dynamically generated, and should only be modified via WordPress filters.
# Any changes to the directives between these markers will be overwritten.
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /wordpress/
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /wordpress/index.php [L]
</IfModule>
# END WordPress
I also have Moodle 3.9 running on the same server. No problems with that but it doesn’t use mod_rewrite.
Everything works fine with Plain links set in WordPress. When I switch to permalinks I get the 404 error. What am I missing or doing wrong?
Thanks in advance! :)
These answers are provided by our Community. If you find them useful, show some love by clicking the heart. If you run into issues leave a comment, or add your own answer to help others.
×