Why Harden PHP
Proper php.ini configuration closes entire vulnerability classes: remote code execution (RCE), server information disclosure, and open_basedir bypasses. This is the first step in securing any PHP server.
Hide PHP Version
expose_php = OffDisable Dangerous Functions
disable_functions = exec,passthru,shell_exec,system,proc_open,popen,\
curl_exec,parse_ini_file,show_source,phpinfoRestrict Filesystem Access
open_basedir = /var/www/mysite:/tmp
allow_url_fopen = Off
allow_url_include = OffSecure Session Settings
session.cookie_httponly = On
session.cookie_secure = On
session.use_strict_mode = On
session.cookie_samesite = StrictPHP Security Checklist
expose_php = Off— hide PHP versiondisplay_errors = Off— never show errors to userslog_errors = On— log errors to fileallow_url_include = Off— block remote includesdisable_functions— disable dangerous functionssession.cookie_httponly = On— protect sessions