mirror of
https://github.com/php/php-src.git
synced 2025-08-20 09:24:05 +02:00
- Implemented FR #54172 (Overriding the pid file location of php-fpm)
This commit is contained in:
parent
6d64b2a4c9
commit
74b693f16b
5 changed files with 20 additions and 4 deletions
1
NEWS
1
NEWS
|
@ -25,6 +25,7 @@ PHP NEWS
|
|||
. Fixed missing Expires and Cache-Control headers for ping and status pages.
|
||||
(fat)
|
||||
. Implemented FR #54499 (FPM ping and status_path should handle HEAD request). (fat)
|
||||
. Implemented FR #54172 (Overriding the pid file location of php-fpm). (fat)
|
||||
|
||||
- SPL extension:
|
||||
. Fixed bug #54971 (Wrong result when using iterator_to_array with use_keys
|
||||
|
|
|
@ -29,6 +29,7 @@ struct fpm_globals_s fpm_globals = {
|
|||
.argv = NULL,
|
||||
.config = NULL,
|
||||
.prefix = NULL,
|
||||
.pid = NULL,
|
||||
.running_children = 0,
|
||||
.error_log_fd = 0,
|
||||
.log_level = 0,
|
||||
|
@ -38,7 +39,7 @@ struct fpm_globals_s fpm_globals = {
|
|||
.test_successful = 0
|
||||
};
|
||||
|
||||
int fpm_init(int argc, char **argv, char *config, char *prefix, int test_conf) /* {{{ */
|
||||
int fpm_init(int argc, char **argv, char *config, char *prefix, char *pid, int test_conf) /* {{{ */
|
||||
{
|
||||
fpm_globals.argc = argc;
|
||||
fpm_globals.argv = argv;
|
||||
|
@ -46,6 +47,7 @@ int fpm_init(int argc, char **argv, char *config, char *prefix, int test_conf) /
|
|||
fpm_globals.config = strdup(config);
|
||||
}
|
||||
fpm_globals.prefix = prefix;
|
||||
fpm_globals.pid = pid;
|
||||
|
||||
if (0 > fpm_php_init_main() ||
|
||||
0 > fpm_stdio_init_main() ||
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
#include <unistd.h>
|
||||
|
||||
int fpm_run(int *max_requests);
|
||||
int fpm_init(int argc, char **argv, char *config, char *prefix, int test_conf);
|
||||
int fpm_init(int argc, char **argv, char *config, char *prefix, char *pid, int test_conf);
|
||||
|
||||
struct fpm_globals_s {
|
||||
pid_t parent_pid;
|
||||
|
@ -16,6 +16,7 @@ struct fpm_globals_s {
|
|||
char **argv;
|
||||
char *config;
|
||||
char *prefix;
|
||||
char *pid;
|
||||
int running_children;
|
||||
int error_log_fd;
|
||||
int log_level;
|
||||
|
|
|
@ -1206,6 +1206,10 @@ int fpm_conf_init_main(int test_conf) /* {{{ */
|
|||
}
|
||||
}
|
||||
|
||||
if (fpm_globals.pid && *fpm_globals.pid) {
|
||||
fpm_global_config.pid_file = strdup(fpm_globals.pid);
|
||||
}
|
||||
|
||||
if (fpm_globals.config == NULL) {
|
||||
char *tmp;
|
||||
|
||||
|
|
|
@ -155,6 +155,7 @@ static const opt_struct OPTIONS[] = {
|
|||
{'y', 1, "fpm-config"},
|
||||
{'t', 0, "test"},
|
||||
{'p', 1, "prefix"},
|
||||
{'g', 1, "pid"},
|
||||
{'-', 0, NULL} /* end of args */
|
||||
};
|
||||
|
||||
|
@ -961,7 +962,7 @@ static void php_cgi_usage(char *argv0)
|
|||
prog = "php";
|
||||
}
|
||||
|
||||
php_printf( "Usage: %s [-n] [-e] [-h] [-i] [-m] [-v] [-t] [-p <prefix> ] [-c <file>] [-d foo[=bar]] [-y <file>]\n"
|
||||
php_printf( "Usage: %s [-n] [-e] [-h] [-i] [-m] [-v] [-t] [-p <prefix>] [-g <pid>] [-c <file>] [-d foo[=bar]] [-y <file>]\n"
|
||||
" -c <path>|<file> Look for php.ini file in this directory\n"
|
||||
" -n No php.ini file will be used\n"
|
||||
" -d foo[=bar] Define INI entry foo with value 'bar'\n"
|
||||
|
@ -972,6 +973,8 @@ static void php_cgi_usage(char *argv0)
|
|||
" -v Version number\n"
|
||||
" -p, --prefix <dir>\n"
|
||||
" Specify alternative prefix path to FastCGI process manager (default: %s).\n"
|
||||
" -g, --pid <file>\n"
|
||||
" Specify the PID file location.\n"
|
||||
" -y, --fpm-config <file>\n"
|
||||
" Specify alternative path to FastCGI process manager config file.\n"
|
||||
" -t, --test Test FPM configuration and exit\n",
|
||||
|
@ -1587,6 +1590,7 @@ int main(int argc, char *argv[])
|
|||
fcgi_request request;
|
||||
char *fpm_config = NULL;
|
||||
char *fpm_prefix = NULL;
|
||||
char *fpm_pid = NULL;
|
||||
int test_conf = 0;
|
||||
|
||||
fcgi_init();
|
||||
|
@ -1670,6 +1674,10 @@ int main(int argc, char *argv[])
|
|||
fpm_prefix = php_optarg;
|
||||
break;
|
||||
|
||||
case 'g':
|
||||
fpm_pid = php_optarg;
|
||||
break;
|
||||
|
||||
case 'e': /* enable extended info output */
|
||||
CG(compiler_options) |= ZEND_COMPILE_EXTENDED_INFO;
|
||||
break;
|
||||
|
@ -1815,7 +1823,7 @@ consult the installation file that came with this distribution, or visit \n\
|
|||
}
|
||||
}
|
||||
|
||||
if (0 > fpm_init(argc, argv, fpm_config ? fpm_config : CGIG(fpm_config), fpm_prefix, test_conf)) {
|
||||
if (0 > fpm_init(argc, argv, fpm_config ? fpm_config : CGIG(fpm_config), fpm_prefix, fpm_pid, test_conf)) {
|
||||
return FAILURE;
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue