Make WordPress Core

Ticket #47320: 47320.diff

File 47320.diff, 2.1 KB (added by SergeyBiryukov, 5 years ago)
  • src/wp-admin/includes/class-wp-site-health.php

     
    10861086        }
    10871087
    10881088        /**
     1089         * Test if there's an active PHP session that can affect loopback requests.
     1090         *
     1091         * @since 5.5.0
     1092         *
     1093         * @return array The test results.
     1094         */
     1095        public function get_test_php_sessions() {
     1096                $result = array(
     1097                        'label'       => __( 'No PHP sessions detected' ),
     1098                        'status'      => 'good',
     1099                        'badge'       => array(
     1100                                'label' => __( 'Performance' ),
     1101                                'color' => 'blue',
     1102                        ),
     1103                        'description' => sprintf(
     1104                                '<p>%s</p>',
     1105                                sprintf(
     1106                                        /* translators: 1: session_start(), 2: session_write_close() */
     1107                                        __( 'PHP sessions created by a %1$s function call interfere with REST API and loopback requests. An active session should be closed by %2$s before making any HTTP requests.' ),
     1108                                        '<code>session_start()</code>',
     1109                                        '<code>session_write_close()</code>'
     1110                                )
     1111                        ),
     1112                        'test'        => 'php_sessions',
     1113                );
     1114
     1115                if ( PHP_SESSION_ACTIVE === session_status() ) {
     1116                        $result['status'] = 'critical';
     1117
     1118                        $result['label'] = __( 'An active PHP session detected' );
     1119
     1120                        $result['description'] = sprintf(
     1121                                '<p>%s</p>',
     1122                                sprintf(
     1123                                        /* translators: 1: session_start(), 2: session_write_close() */
     1124                                        __( 'A PHP session was created by a %1$s function call. This interferes with REST API and loopback requests. The session should be closed by %2$s before making any HTTP requests.' ),
     1125                                        '<code>session_start()</code>',
     1126                                        '<code>session_write_close()</code>'
     1127                                )
     1128                        );
     1129                }
     1130
     1131                return $result;
     1132        }
     1133
     1134        /**
    10891135         * Test if the SQL server is up to date.
    10901136         *
    10911137         * @since 5.2.0
     
    19441990                                        'label' => __( 'PHP Default Timezone' ),
    19451991                                        'test'  => 'php_default_timezone',
    19461992                                ),
     1993                                'php_sessions'         => array(
     1994                                        'label' => __( 'PHP Sessions' ),
     1995                                        'test'  => 'php_sessions',
     1996                                ),
    19471997                                'sql_server'           => array(
    19481998                                        'label' => __( 'Database Server version' ),
    19491999                                        'test'  => 'sql_server',