Page 1 of 1

Site offline (403) after PHP write failed

Posted: Wed May 08, 2019 9:44 pm
by donorg
I have a website on a (quite fast) shared hosting server. Running CMSMS and running quick. No problem. But sometimes I get the following error:

PHP Warning: Unknown: write failed: No space left on device (28)

While there are resources enough. Resource usage is far below limits in DirectAdmin. I myself and als the hoster can't (yet) find a cause for this. It also happens in very small PHP files (outside CMSMS). But until this point not such big deal, it only happens sometimes.

But when it happens, sometimes it causes a broken (.cms) cache file within /tmp/cache. And then we do have a problem because then the site is completely offline returning a HTTP 503 Error (Service Unavailable).


Would it maybe be an idea that if a cache files is broken/bad, that CMSMS stays alive? Catch the error en regenerate that cache file?

Does anyone have an idea for me, that I can keep CMSMS alive myself when a cache file is broken?

Thank you in advance


Cms Version:

Installed Modules:

AdminSearch: 1.0.4
CGBetterForms: 1.5
CGContentUtils: 2.2.2
CGExtensions: 1.61
CGSimpleSmarty: 2.1.8
CGSmartImage: 1.22.2
CMSContentManager: 1.1.7
Captcha: 0.5.5
CmsJobManager: 0.1.3
DesignManager: 1.1.5
ExaExternalizer: 0.6
FileManager: 1.6.8
FilePicker: 1.0.3
JMFilePicker: 1.0.1
MenuManager: 1.50.3
MicroTiny: 2.2.4
ModuleManager: 2.1.5
Navigator: 1.0.9
News: 2.51.4
Search: 1.51.6
Snippet: 0.2.4
TinyMCE: 3.2-beta5

Config Information:

max_upload_size: 10000000
url_rewriting: mod_rewrite
query_var: page
auto_alias_content: true
locale: nl_NL
set_names: true
timezone: Europe/Amsterdam
permissive_smarty: false

Php Information:

phpversion: 7.2.17
md5_function: On (True)
json_function: On (True)
gd_version: 2
tempnam_function: On (True)
magic_quotes_runtime: Off (False)
E_ALL: 8
test_file_timedifference: No time difference found
test_db_timedifference: No time difference found
create_dir_and_file: 1
memory_limit: 2048M
max_execution_time: 120
register_globals: Off (False)
output_buffering: 4096
test_remote_url: Success
file_uploads: On (True)
post_max_size: 2048M
upload_max_filesize: 10M
session_save_path: /home/user/domains/ (0755)
session_use_cookies: On (True)
xml_function: On (True)
xmlreader_class: On (True)
check_ini_set: On (True)
curl: On

Performance Information:

allow_browser_cache: On (True)
browser_cache_expiry: 15
php_opcache: Off (False)
smarty_cache: Off (False)
smarty_compilecheck: Off (False)
auto_clear_cache_age: On (True)

Server Information:

Server Software: Apache/2
Server Api: litespeed
Server Os: Linux 2.6.32-954.3.5.lve1.4.58.el6.x86_64 On x86_64
Server Db Type: MySQL (mysqli)
Server Db Version: 10.2.22
Server Db Grants: Found a "GRANT ALL" statement that appears to be suitable

Permission Information:

tmp: /home/user/domains/ (0755)
tmp_cache: /home/user/domains/ (0777)
templates_c: /home/user/domains/ (0777)
modules: /home/user/domains/ (0755)
uploads: /home/user/domains/ (0755)
File Creation Mask (umask): /home/user/domains/ (0777)
config_file: 0555


Re: Site offline (403) after PHP write failed

Posted: Wed May 08, 2019 11:52 pm
by calguy1000
Even if we were to somehow manage to detect that error on read, or write and move past it... the problem would only move to the next step of the process.

Possibly reading or writing data to the database, generating thumbnails, compiling smarty templates, or anything else. It would be an ongoing game of 'whack-a-mole' with no real advantage to the rest of the user community.

If you normally have 'LOTS AND LOTS' of available space. but still periodically get that 'out of disk space' message look at scripts that run periodically. Either in your environment or other users on the same host. Stuff like backup scripts that gather alot of data, compress it, send the compressed data somewhere, then delete the files.

Either way, there is not much that CMSMS can do to work past 'environments that are periodically having problems'.

Re: Site offline (403) after PHP write failed

Posted: Thu May 09, 2019 8:42 am
by Rolf
Quick answer without reading all above, *sometimes* this mousetrap can help detect/understand when errors occur and might give a hint where to look... ... ate-errors