On Ubuntu 18.04.1 LTS, the installation page is not shown. Instead, I see a blank page with


On MySql log I see this:

Access denied for user ''@'localhost' (using password: NO)

However I can't understand this message, because I still haven't inserted any information regarding MySql login details.

Before visiting the installation page, I followed the instructions of this tutorial: How to Install Joomla on an Ubuntu 18.04 VPS or Dedicated Server

To summarize them, I have installed all php packages, secured MySql installation, created the db and the user, downloaded latest Joomla installation package (3.9.1) and copied its contents recursively to folder /var/www/html/, assigned ownership and user privileges to this folder, copied htaccess.txt to .htaccess, restarted apache2 and visited the page


The page is correctly redirected to the installation folder


Even if it is not required, I have also created an anonymous user in MySql with no password and flushed privileges. Now, user ''@'localhost' is there, I can connect with no password using the command line, but still getting the same error as shown above. However, this time the MySql log is empty. I only get the apache error log:

"GET /installation/index.php HTTP/1.1" 500 190 "-" "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:64.0) Gecko/20100101 Firefox/64.0"

  • It's not a Joomla question basically: stackoverflow.com/questions/46193743/… and there are many other links on the subject.
    – Zollie
    Jan 12, 2019 at 15:22
  • I mean, finish your MySql setup with the correct credentials, then you can start with Joomla install.
    – Zollie
    Jan 12, 2019 at 16:45
  • @Zollie it is a joomla question indeed because I don't have any problem with MySql setup. MySql is working well with other applications. The problem is that Joomla installation page tries to connect to MySql using this empty user which may indicate that it's trying to connect with an unknown user
    – perissf
    Jan 12, 2019 at 17:06
  • 1
    Ohh, I understand you. Have you copied the htaccess.txt file and created/renamed it as a .htaccess file in the Joomla root folder?
    – Zollie
    Jan 12, 2019 at 17:47
  • @Zollie yes I did it
    – perissf
    Jan 12, 2019 at 17:51

1 Answer 1


Based on the previous comments under the original question where we excluded many basic sources of failure of Joomla installation, I am now giving the possible solutions or causes here. As I wrote in the comment: this is not a Joomla error or not an error derived from Joomla, but from wrong server configurations. It could be MySql or the http server itself, or from PHP. We cleared Mysql (correct credentials) connection problem, Joomla file permissions(755 for folders and 644 for files), and .htaccess file (it is in the root folder correctly), however:

On a well configured server a Joomla install is about 5 minutes not more.

The most common additional reasons for seeing 500 server error during Joomla installation:

1. mod_rewrite is not being loaded on apache. Solution:

    sudo a2enmod rewrite

    sudo service apache2 restart

Link: https://docs.joomla.org/How_to_check_if_mod_rewrite_is_enabled_on_your_server

If apache is not configured correctly, .htaccess will be ignored.

Another link for configuration: http://www.iasptk.com/enable-apache-mod_rewrite-ubuntu-14-04-lts/

2. simplexml module is not installed or not working in PHP

Solve it with for example: sudo apt-get install php7.2-xmlor sudo apt-get install php-xml and apache restart.

I'll update my answer with more possibility (if needed) as we move along with the install when the original poster is checking the above on his server.

3. More on configuring Apache for letting the server reading .htaccess :

Is the .htaccess File Being Read?

If you have an .htaccess file which is set up correctly, but you are still getting an HTTP 500 error, the problem might be that the .htaccess file is being ignored.

In order for the .htaccess file to work, Apache will need to be configured to allow it to run.

Check the website's main Apache configuration file. For the main domain on a server, this will typically be:

Ubuntu and Debian: /etc/apache2/apache2.conf
CentOS 7: /etc/httpd/conf/httpd.conf

For other domains being hosted on the server, the location and name of the file will vary depending on how the domain was set up.

Edit this main configuration file and find the block which pertains to the directory where you are adding an .htaccess file. For example, the default document root for the main directory will probably be:

<Directory "/var/www/html">

Inside this block, look for the AllowOverride configuration. Set this to:

AllowOverride All

More info on this here: https://www.ionos.com/community/server-cloud-infrastructure/apache/how-to-fix-http-error-code-500-internal-server-error/

4. Timeout error. I do not think we should deal with that in this particular case.

5. if nothing of the above helps, you can still check the whole server setup against this good write-up here: https://websiteforstudents.com/install-joomla-on-ubuntu-16-04-17-10-18-04-with-apache2-mariadb-php-7-2-and-lets-encrypt-ssl-tls-certificates/

  • Thanks for the suggestions, I am still investigating. Maybe it's an apache configuration issue. Previously I had edited the configuration file in order to work with Wordpress
    – perissf
    Jan 14, 2019 at 7:42
  • @perissf - yes, I see, I also added a good, detailed write-up with a correct server setup at the end of my answer, it includes the correct Apache config file settings too...
    – Zollie
    Jan 14, 2019 at 8:00
  • @perissf - Well, this is again a question where there is not really correct, specific answer, except: to check the configurations until it works... :)
    – Zollie
    Jan 14, 2019 at 8:37
  • 1
    spent hours trying to figure this out until I came to your post. Did each suggestion one by one and after #2 I was able to get into the installation. Thank you!
    – DanCaveman
    Aug 30, 2023 at 20:29

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.