File: //fpm-pools/app-php-fpm-pool.conf
; PHP-FPM Pool Configuration for app-877180; This is dropped in at /local/config/fpm-pools.d/app-php-fpm-pool.conf
[app-877180]
; Unix socket configuration
listen = /alloc/tmp/app-877180-fpm.sock
; Note: we are allowing all clients to connect to the socket since it's only accessible within the alloc, but we can restrict this if needed in the future
;listen.allowed_clients = 127.0.0.1
listen.backlog = 4096
listen.owner = root
listen.group = root
listen.mode = 0666
rlimit_files = 131072
rlimit_core = unlimited
user = customer
group = customer
pm = dynamic
pm.start_servers = 1
pm.process_idle_timeout = 60s
pm.max_children = 10
pm.min_spare_servers = 1
pm.max_spare_servers = 10
pm.max_requests = 500
request_terminate_timeout = 180s
pm.status_path = /fpmstatus
ping.path = /fpmping
ping.response = pong
;request_slowlog_timeout = 10s
;slowlog = /mnt/log/php-fpm/$pool-slow.log
; Chroot to this directory at the start. This value must be defined as an
; absolute path. When this value is not set, chroot is not used.
; Note: chrooting is a great security feature and should be used whenever
; possible. However, all PHP paths will be relative to the chroot
; (error_log, sessions.save_path, ...).
; Default Value: not set
; Note 2: Setting the chroot to the application root was not working in preliminary tests. It was returning 404s,
; chrooting is probably not absolutely necessary in the Nomad containers, but we should follow up and figure this out
; at some point.
;chroot = /dom877180
; Chdir to this directory at the start. This value must be an absolute path.
; Default Value: current directory or / when chroot
chdir = /dom877180
; Redirect worker stdout and stderr into main error log. If not set, stdout and
; stderr will be redirected to /dev/null according to FastCGI specs.
; Default Value: no
catch_workers_output = yes
; Limits the extensions of the main script FPM will allow to parse. This can
; prevent configuration mistakes on the web server side. You should only limit
; FPM to .php extensions to prevent malicious users to use other extensions to
; exectute php code.
; Note: set an empty value to allow all extensions.
; Default Value: .php
security.limit_extensions = .php
;; access logs
;; commented out on purpose, turn on if debugging. it's set to stderr, pointing to /proc/self/fd/1 was not working
;access.log = /proc/self/fd/2
;access.format = " %R - %u %t \"%m %r\" [REQUEST_METHOD=%{REQUEST_METHOD}e REQUEST_URI=%{REQUEST_URI}e DOCUMENT_URI=%{DOCUMENT_URI}e SCRIPT_FILENAME=%{SCRIPT_FILENAME}e SCRIPT_NAME=%{SCRIPT_NAME}e DOCUMENT_ROOT=%{DOCUMENT_ROOT}e SERVER_PROTOCOL=%{SERVER_PROTOCOL}e REQUEST_SCHEME=%{REQUEST_SCHEME}e HTTPS=%{HTTPS}e GATEWAY_INTERFACE=%{GATEWAY_INTERFACE}e SERVER_SOFTWARE=%{SERVER_SOFTWARE}e REMOTE_ADDR=%{REMOTE_ADDR}e REMOTE_PORT=%{REMOTE_PORT}e SERVER_ADDR=%{SERVER_ADDR}e SERVER_PORT=%{SERVER_PORT}e SERVER_NAME=%{SERVER_NAME}e QUERY_STRING=%{QUERY_STRING}e CONTENT_TYPE=%{CONTENT_TYPE}e CONTENT_LENGTH=%{CONTENT_LENGTH}e] %s"
; Pass environment variables like LD_LIBRARY_PATH. All $VARIABLEs are taken from
; the current environment.
; Default Value: clean env
;env[HOSTNAME] = $HOSTNAME
; WPAAS V2 specific environment variables
env[WPAAS_V2_SITE_ID] = $WPAAS_V2_SITE_ID
env[WPAAS_POD] = $WPAAS_POD
env[XID] = $XID
env[SERVER_ENV] = $SERVER_ENV
; Additional php.ini defines, specific to this pool of workers. These settings
; overwrite the values previously defined in the php.ini. The directives are the
; same as the PHP SAPI:
; php_value/php_flag - you can set classic ini defines which can
; be overwritten from PHP call 'ini_set'.
; php_admin_value/php_admin_flag - these directives won't be overwritten by
; PHP call 'ini_set'
; For php_*flag, valid values are on, off, 1, 0, true, false, yes or no.
; Defining 'extension' will load the corresponding shared extension from
; extension_dir. Defining 'disable_functions' or 'disable_classes' will not
; overwrite previously defined php.ini values, but will append the new value
; instead.
; Default Value: nothing is defined by default except the values in php.ini and
; specified at startup with the -d argument
;php_admin_value[sendmail_path] = /usr/sbin/sendmail -t -i -f www@my.domain.com
;php_flag[display_errors] = off
php_admin_value[error_log] = /proc/self/fd/2
php_admin_flag[log_errors] = on
; this value overrides the php.ini defaults and user.ini values, we should leave it unset.
;php_admin_value[memory_limit] = 320M
php_admin_value[auto_prepend_file] = '/platform/misc/prepend-web.php'