User Tools

Site Tools


servers:linux:nginx:custom:phpinfo

This is an old revision of the document!


Information

Prerequisites

index.php

sudo mkdir -p '/srv/www/phpinfo' && sudo -e '/srv/www/phpinfo/info.php' && sudo chown -R 'wwwrun':'www' '/srv/www/phpinfo' && sudo chmod -R '0755' '/srv/www/phpinfo'
<?php
 phpinfo();
// echo 'Test';
?>

// End

nginx + PHP-FPM Configuration

PHP-FPM Socket

sudo -e '/etc/php8/fpm/php-fpm.d/phpinfo.conf' && sudo systemctl restart 'php-fpm'
[phpinfo]
user = "wwwrun"
group = "www"

listen = "/run/php-fpm/phpinfo.sock"
listen.owner = "wwwrun"
listen.group = "www"
listen.mode = "0662"

pm = "ondemand"
pm.max_children = "1"
pm.process_idle_timeout = "3"

php_value[log_errors] = "0"
;php_value[error_reporting] = "~E_ALL"
;php_value[display_errors] = "0"
;php_value[display_startup_errors] = "0"
;php_value[html_errors] = "0"

php_value[session.save_path] = "/var/lib/php8/sessions"
;php_value[date.timezone] = "America/New_York"

; Temp
php_value[session.upload_progress.enabled] = "0"

; End

FastCGI

sudo -e '/etc/nginx/default.d/phpinfo.conf'
location '~' '\.(php|phar)(/.*)?$' {
 fastcgi_split_path_info '^(.+\.(?:php|phar))(/.*)$';
 fastcgi_intercept_errors 'on';
 fastcgi_index 'info.php';
 include 'fastcgi_params';
 fastcgi_param 'SCRIPT_FILENAME' '$document_root$fastcgi_script_name';
 fastcgi_param 'PATH_INFO' '$fastcgi_path_info';
 fastcgi_param 'HTTPS' 'on';
 fastcgi_pass 'unix:/run/php-fpm/phpinfo.sock';
}

# End

Deny Directive

  • Allow only LAN
sudo -e '/etc/nginx/default.d/phpinfo-deny.conf'
location = '/' {
 allow '192.168.1.0/24';
 deny 'all';
}

# End

Server Block

sudo -e '/etc/nginx/vhosts.d/phpinfo.conf' && sudo systemctl reload 'nginx'
server {
 listen '443' 'ssl';
 http2 'on';
 server_name 'test.realmofespionage.xyz';
 root '/srv/www/phpinfo';
 index 'info.php';

 include '/etc/nginx/default.d/phpinfo.conf';
 include '/etc/nginx/default.d/headers.conf';
 include '/etc/nginx/default.d/phpinfo-deny.conf';

 add_header 'Content-Security-Policy' "default-src 'self'; script-src 'self' 'unsafe-inline'; style-src 'self' 'unsafe-inline'; img-src 'self' data:" 'always';

# access_log '/var/log/nginx/phpinfo-access.log';
# error_log '/var/log/nginx/phpinfo-error.log';

}

# End
/srv/www/wiki/data/attic/servers/linux/nginx/custom/phpinfo.1794445579.txt.gz · Last modified: by Sean Rhone