Whitescreen related to locale

I am running OJS 2.4.8.1 on a production site when suddenly I got a white screen. It can view the table of content and abstract view for example: https://journal.bio.unsoed.ac.id/index.php/scribio/article/view/425 with all sidebars missing. I can not view other pages.

The error message log was:

ojs2 has produced an error Message: 
WARNING: Invalid argument supplied for foreach() 
In file: /var/www/clients/client1/web4/web/lib/pkp/classes/i18n/PKPLocale.inc.php 
At line: 298 

Stacktrace: 
File: /var/www/clients/client1/web4/web/lib/pkp/classes/i18n/PKPLocale.inc.php 
line 298 
Function: PKPApplication->errorHandler(2, 
"Invalid argument supplied for foreach()", 
"/var/www/clients/client1/web4/web/lib/pkp/classes/i18n/PKPLocale.inc.php", 
298, 
Array(2)) File: /var/www/clients/client1/web4/web/classes/journal/Journal.inc.php line 68 
Function: PKPLocale->getAllLocales() 
File: /var/www/clients/client1/web4/web/classes/i18n/AppLocale.inc.php line 99 
Function: Journal->getSupportedLocaleNames() File:
/var/www/clients/client1/web4/web/lib/pkp/classes/i18n/PKPLocale.inc.php 
line 109 
Function: AppLocale->getLocale() 
File: /var/www/clients/client1/web4/web/lib/pkp/classes/core/Dispatcher.inc.php 
line 131 
Function: PKPLocale->initialize() 
File: /var/www/clients/client1/web4/web/lib/pkp/classes/core/PKPApplication.inc.php 
line 178 
Function: Dispatcher->dispatch(Object(Request)) 
File: /var/www/clients/client1/web4/web/index.php line 
64 Function: PKPApplication->execute() 

Server info: 
OS: Linux PHP Version: 5.6.26 
Apache Version: N/A 
DB Driver: mysql DB server version: 10.0.34-MariaDB-0ubuntu0.16.04.1

I need a help to solve this problem.

Hard to believe that the warning would cause this. Have you tried emptying your ojs cache? rm cache/t_compile/*.php

Firstly, I deleted all the cache files in the server /cache folder, but it did not work. Then I made OJS installation copy on the local server and recreated all the cache files and uploaded to the server; all the pageviews are now back to normal.

sounds like your production server can not write new files to the cache folder? Maybe a problem with the folder permissions?

Inside the /cache folder: folders are set to 0755 and files are set to 0644, are they OK?

This depends on the server. The important thing is to know what user is executing php and does that user have the permission to write to the folder. This permission could be based on the user or the group. See more details here: How should file permissions be set?