2019-11-09 00:13:01 +00:00
|
|
|
#!/usr/bin/env bash
|
2024-04-04 05:21:38 +00:00
|
|
|
# shellcheck disable=SC1083,SC2312
|
2019-06-11 14:59:58 +00:00
|
|
|
|
2024-04-04 05:21:38 +00:00
|
|
|
# Create the log file to be able to run tail without errors
|
2024-04-03 20:55:34 +00:00
|
|
|
touch /var/log/php{{PHP}}-fpm.log
|
|
|
|
|
|
2024-02-07 15:21:14 +00:00
|
|
|
# Load envs into PHP-fpm's env.conf.
|
|
|
|
|
env | sed "s/\(.*\)=\(.*\)/env[\1]='\2'/" >/etc/php/{{PHP}}/fpm/conf.d/env.conf
|
2021-01-16 17:18:29 +00:00
|
|
|
|
2024-02-07 15:21:14 +00:00
|
|
|
if [[ ${DEBUG_MODE,,} == "on" ]]; then
|
|
|
|
|
ENABLE_DEBUG_MODE=true
|
|
|
|
|
PHP_MEMORY_LIMIT="${PHP_MEMORY_LIMIT:-1024M}"
|
2021-01-16 17:18:29 +00:00
|
|
|
else
|
2024-02-07 15:21:14 +00:00
|
|
|
ENABLE_DEBUG_MODE=false
|
|
|
|
|
PHP_MEMORY_LIMIT="${PHP_MEMORY_LIMIT:-128M}"
|
2021-01-16 17:18:29 +00:00
|
|
|
fi
|
|
|
|
|
|
2024-02-07 15:21:14 +00:00
|
|
|
PHP_CLI_MEMORY_LIMIT="${PHP_CLI_MEMORY_LIMIT:-${PHP_MEMORY_LIMIT}}"
|
2022-05-18 09:31:37 +00:00
|
|
|
|
2021-04-19 14:24:47 +00:00
|
|
|
sed -i "s|memory_limit = .*|memory_limit = ${PHP_MEMORY_LIMIT}|g" /etc/php/{{PHP}}/fpm/php.ini
|
|
|
|
|
sed -i "s|\[memory_limit\] = .*|\[memory_limit\] = ${PHP_MEMORY_LIMIT}|g" /etc/php/{{PHP}}/fpm/pool.d/www.conf
|
2022-05-18 09:31:37 +00:00
|
|
|
sed -i "s|memory_limit = .*|memory_limit = ${PHP_CLI_MEMORY_LIMIT}|g" /etc/php/{{PHP}}/cli/php.ini
|
2021-04-19 14:24:47 +00:00
|
|
|
|
2024-02-07 15:21:14 +00:00
|
|
|
if [[ ${ENABLE_DEBUG_MODE} == true ]]; then
|
|
|
|
|
echo -e "#Controlled via DEBUG_MODE environment variable\nzend_extension=xdebug.so\n[xdebug]\n\
|
2021-04-12 12:03:33 +00:00
|
|
|
xdebug.mode=debug\n\
|
2023-06-06 14:44:31 +00:00
|
|
|
xdebug.discover_client_host=true\n\
|
2024-02-07 15:21:14 +00:00
|
|
|
xdebug.client_host=host.docker.internal\n" >/etc/php/{{PHP}}/mods-available/xdebug.ini
|
|
|
|
|
ln -s /etc/php/{{PHP}}/mods-available/xdebug.ini /etc/php/{{PHP}}/fpm/conf.d/20-xdebug.ini || true
|
|
|
|
|
sed -i "s|php_flag\[display_errors\].*|php_flag\[display_errors\] = on|g" /etc/php/{{PHP}}/fpm/pool.d/www.conf
|
|
|
|
|
echo -e "PHP is running in \e[31mDEBUG MODE\e[0m\nError output will be VISIBLE."
|
2021-01-16 17:18:29 +00:00
|
|
|
else
|
2024-02-07 15:21:14 +00:00
|
|
|
rm -f /etc/php/{{PHP}}/mods-available/xdebug.ini /etc/php/{{PHP}}/fpm/conf.d/*-xdebug.ini
|
|
|
|
|
touch /etc/php/{{PHP}}/mods-available/xdebug.ini
|
|
|
|
|
sed -i "s|php_flag\[display_errors\].*|php_flag\[display_errors\] = off|g" /etc/php/{{PHP}}/fpm/pool.d/www.conf
|
|
|
|
|
echo -e "PHP is running in \e[32mPRODUCTION MODE\e[0m\nError output will be suppressed."
|
2021-01-16 17:18:29 +00:00
|
|
|
fi
|
2021-10-03 11:12:23 +00:00
|
|
|
echo "To change this, change the value of DEBUG_MODE to either 'on' or 'off'"
|
2021-01-16 17:18:29 +00:00
|
|
|
|
2024-02-07 15:21:14 +00:00
|
|
|
# shellcheck disable=SC2288
|
2019-11-09 00:13:01 +00:00
|
|
|
/usr/sbin/php-fpm{{PHP}} -F -R
|