⚠ Remove or restrict access to diag.php in production — it exposes server paths and runs test commands.
Environment Checks
CheckStatusDetail
python3 ✕ FAIL sh: line 1: python3: command not found
pypdf (Python) ✓ OK sh: line 1: python3: command not found
pdftk ✕ FAIL sh: line 1: pdftk: command not found
generate_cert.py ✓ OK /home/u535209667/domains/isoworld.in/public_html/generate_cert.py
templates/ writable ✓ OK /home/u535209667/domains/isoworld.in/public_html/templates/
issued/ writable ✓ OK /home/u535209667/domains/isoworld.in/public_html/issued/
shell_exec enabled ✓ OK yes
exec() enabled ✓ OK yes
PHP version ✓ OK 8.5.6
Live Generation Test

Ran a dry-run against: New_Template.pdf

Exit code: 127  |  PDF produced: ✕ No
sh: line 1: python3: command not found
Test generation failed. The output above is the actual error from Python — use it to diagnose the problem.
Quick Fix Guide

Common causes and fixes for "Certificate file was not produced":

SymptomFix
pypdf not foundpip install pypdf --break-system-packages
exec() disabledRemove exec from php.ini disable_functions, then restart PHP-FPM
issued/ not writablechmod 755 issued/ && chown www-data:www-data issued/
Template has no placeholdersTemplate must contain {{PLACEHOLDER}} tokens — generate_cert.py rejects plain PDFs
python3 not in PATHwhich python3 — install python3 package or set full path in generateWithPython()