I copied joomla web folder to same directory from ubuntu 14.04 to ubuntu 16.04 server.

All setting are unaltered.

After making sure vhost fastcgi points to php7.0-fpm.sock instead of php5.-fpm.sock on ubuntu 16.04, it only show blank screen.

On access log: - - [19/Jul/2016:11:09:45 +0800] "GET / HTTP/1.1" 500 5 "-" "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:42.0) Gecko/20100101 Firefox/42.0"


user www-data;
worker_processes auto;
pid /run/nginx.pid;
events {
        worker_connections 100;
        multi_accept on;
        use epoll;
http {
        client_max_body_size 200M;
        sendfile on;
        tcp_nopush on;
        tcp_nodelay on;
        keepalive_timeout 65;
        keepalive_requests 200;
        types_hash_max_size 2048;
        server_names_hash_max_size 1024;
        server_names_hash_bucket_size 128;
        server_tokens off;
        include /etc/nginx/mime.types;
        default_type application/octet-stream;
        access_log off;
        error_log /var/log/nginx/error.log;
        open_file_cache max=600000 inactive=20s;
        open_file_cache_valid 60s;
        open_file_cache_min_uses 2;
        open_file_cache_errors on;
        gzip on;
        gzip_vary on;
        gzip_min_length 256;
        gzip_comp_level 3;
        gzip_proxied expired no-cache no-store private auth;
        gzip_types text/css text/xml text/javascript application/x-javascript application/xml;
        gzip_disable "MSIE [1-6]\.";
        include /etc/nginx/conf.d/*.conf;
        include /etc/nginx/sites-enabled/*;
        fastcgi_buffer_size 128k;
        fastcgi_buffers 256 16k;
        fastcgi_busy_buffers_size 256k;
        fastcgi_temp_file_write_size 256k;
        fastcgi_connect_timeout 30;
        fastcgi_send_timeout 25;
        fastcgi_read_timeout 20;


server {
        listen 80;
        root /var/www/;
        index index.php index.html index.htm;
        server_name www.mydomain.com;
        location / {
                try_files $uri $uri/ /index.php?q=$request_uri;
        location ~ \.php$ {
                fastcgi_split_path_info ^(.+\.php)(/.+)$;
                fastcgi_pass unix:/run/php/php7.0-fpm.sock;
                fastcgi_index index.php;
                include fastcgi_params;
                fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;

In the past (ubuntu 14,04, php5, nginx 1.4), it was because of not including fastcgi_index, include fastcgi_params, but not this time (ubuntu 16.04, php7, nginx 1.10). Even removing those settings would not solve this issue.

  • Your apache log clearly indicates an application issue, so you'll need to examine your application logs (a.k.a php-fpm). – EEAA Jul 20 '16 at 3:04
  • upon enabling php-fpm logs, now I can see error on joomla instead of blank page which is: Fatal error: Cannot use Joomla\String\String as String because 'String' is a special class name in /var/www/libraries/vendor/joomla/registry/src/Format/Json.php on line 12 – grepmaster Jul 20 '16 at 4:52
  • Which version of Joomla are you using? – Aubrey Robertson Jul 23 '16 at 7:58

Likely incompatibility with PHP 7. You can follow this guide to purge PHP 7 from your system and install PHP 5.6 instead. This might fix your problem, but I think PHP 7 is supported in Joomla 3.5. Are you using an older version of Joomla that does not support PHP 7? You can try this in the meantime and see if it fixes your problem, or download the latest version of Joomla.

Installing PHP 5.6 on Xenial (16.04)

  • 1
    thanks for answering, upgrading to joomla 3.6 fixed this issue. – grepmaster Jul 26 '16 at 11:53

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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