���� JFIF �� �
"" $(4,$&1'-=-157:::#+?D?8C49:7
7%%77777777777777777777777777777777777777777777777777�� { �" �� �� 5 !1AQa"q�2��BR��#b������� �� �� ? ��D@DDD@DDD@DDkK��6 �UG�4V�1��
�����릟�@�#���RY�dqp�
����� �o�7�m�s�<��VPS�e~V�چ8���X�T��$��c�� 9��ᘆ�m6@ WU�f�Don��r��5}9��}��hc�fF��/r=hi�� �͇�*�� b�.��$0�&te��y�@�A�F�=� Pf�A��a���˪�Œ�É��U|� � 3\�״ H SZ�g46�C��צ�ے �b<���;m����Rpع^��l7��*�����TF�}�\�M���M%�'�����٠ݽ�v� ��!-�����?�N!La��A+[`#���M����'�~oR�?��v^)��=��h����A��X�.���˃����^Æ��ܯsO"B�c>;
�e�4��5�k��/CB��.
�J?��;�҈�������������������~�<�VZ�ê¼2/)Í”jC���ע�V�G�!���!�F������\�� Kj�R�oc�h���:Þ I��1"2�q×°8��Р@ז���_C0�ր��A��lQ��@纼�!7��F�� �]�sZ
B�62r�v�z~�K�7�c��5�.���ӄq&�Z�d�<�kk���T&8�|���I���� Ws}���ǽ�cqnΑ�_���3��|N�-y,��i���ȗ_�\60���@��6����D@DDD@DDD@DDD@DDD@DDc�KN66<�c��64=r�����
Ď0��h���t&(�hnb[� ?��^��\��â|�,�/h�\��R��5�?
�0�!צ܉-����G����٬��Q�zA���1�����V��� �:R���`�$��ik��H����D4�����#dk����� h�}����7���w%�������*o8wG�LycuT�.���ܯ7��I��u^���)��/c�,s�Nq�ۺ�;�ך�YH2���.5B���DDD@DDD@DDD@DDD@DDD@V|�a�j{7c��X�F\�3MuA׾hb� ��n��F������ ��8�(��e����Pp�\"G�`s��m��ާaW�K��O����|;ei����֋�[�q��";a��1����Y�G�W/�߇�&�<���Ќ�H'q�m���)�X+!���=�m�ۚ丷~6a^X�)���,�>#&6G���Y��{����"" """ """ """ """ ""��at\/�a�8 �yp%�lhl�n����)���i�t��B�������������?��
%s
', __( 'The value, WP_DEBUG_LOG, has been added to this website’s configuration file. This means any errors on the site will be written to a file which is potentially available to all users.', 'really-simple-ssl' ) ), 'actions' => sprintf( '', /* translators: Documentation explaining debugging in WordPress. */ esc_url( add_query_arg( array( 'page' => 'really-simple-security#settings/hardening' ), rsssl_admin_url() ) ), __( 'Remove from public location with Really Simple SSL', 'really-simple-ssl' ), /* translators: Accessibility text. */ __( '(opens in a new tab)' )// phpcs:ignore WordPress.WP.I18n.MissingArgDomain ), 'test' => 'rsssl_debug_log', ); return $result; } /** * Explain users about risks of debug display * */ public function site_health_debug_display_test() { $result = array( 'label' => __( 'Your site is set to display errors on your website', 'really-simple-ssl' ), 'status' => 'critical', 'badge' => array( 'label' => __( 'Security' ), // phpcs:ignore WordPress.WP.I18n.MissingArgDomain 'color' => 'blue', ), 'description' => sprintf( '%s
', __( 'The value, WP_DEBUG_DISPLAY, has either been enabled by WP_DEBUG or added to your configuration file. This will make errors display on the front end of your site.', 'really-simple-ssl' ) ), 'actions' => sprintf( '', /* translators: Documentation explaining debugging in WordPress. */ esc_url( 'https://really-simple-ssl.com/security/debug-display-enabled' ), __( 'Read more about security concerns with debug display enabled', 'really-simple-ssl' ), /* translators: Accessibility text. */ __( '(opens in a new tab)' )// phpcs:ignore WordPress.WP.I18n.MissingArgDomain ), 'test' => 'rsssl_debug_display', ); return $result; } /** * Test to check if the recommended security headers are present * @return array */ public function headers_test() { $result = array( 'label' => __( 'Recommended security headers installed', 'really-simple-ssl' ), 'status' => 'good', 'badge' => array( 'label' => __( 'Security' ), // phpcs:ignore WordPress.WP.I18n.MissingArgDomain 'color' => 'blue', ), 'description' => sprintf( '%s
', __( 'The recommended security headers are detected on your site.', 'really-simple-ssl' ) ), 'actions' => '', 'test' => 'headers_test', ); //returns empty for sites without .htaccess, or if all headers are already in use $recommended_headers = RSSSL()->admin->get_recommended_security_headers(); if ( ! empty( $recommended_headers ) ) { $style = ''; $list = '%s
', __( 'Your website does not send all recommended security headers.', 'really-simple-ssl' ) . $style . $list ); $result['actions'] = sprintf( '', 'https://really-simple-ssl.com/site-health-recommended-security-headers/', __( 'Learn more about security headers', 'really-simple-ssl' ) ); } return $result; } /** * Some basic SSL health checks * @return array */ public function ssl_tests() { $url = add_query_arg( array( 'page' => 'really-simple-security' ), rsssl_admin_url() ); $result = array( 'label' => __( '301 SSL redirect enabled', 'really-simple-ssl' ), 'status' => 'good', 'badge' => array( 'label' => __( 'Security' ), // phpcs:ignore WordPress.WP.I18n.MissingArgDomain 'color' => 'blue', ), 'description' => sprintf( '%s
', __( 'You have set a 301 redirect to SSL. This is important for SEO purposes', 'really-simple-ssl' ) ), 'actions' => '', 'test' => 'rsssl_ssl_health', ); if ( ! rsssl_get_option( 'ssl_enabled' ) ) { if ( rsssl_get_option( 'site_has_ssl' ) ) { $result['status'] = 'critical'; $result['label'] = __( 'SSL is not enabled.', 'really-simple-ssl' ); $result['description'] = sprintf( '%s
', __( 'Really Simple SSL detected an SSL certificate, but has not been configured to enforce SSL.', 'really-simple-ssl' ) ); $result['actions'] .= sprintf( '', $url, __( 'Activate SSL', 'really-simple-ssl' ) ); } else { $result['status'] = 'critical'; $result['label'] = __( 'No SSL detected.', 'really-simple-ssl' ); $result['description'] = sprintf( '%s
', __( 'Really Simple SSL is installed, but no valid SSL certificate is detected.', 'really-simple-ssl' ) ); } } else { if ( ! RSSSL()->admin->has_301_redirect() ) { $result['status'] = 'recommended'; $result['label'] = __( 'No 301 redirect to SSL enabled.', 'really-simple-ssl' ); $result['description'] = sprintf( '%s
', __( 'To ensure all traffic passes through SSL, please enable a 301 redirect.', 'really-simple-ssl' ) ); $result['actions'] .= sprintf( '', $url, __( 'Enable 301 redirect', 'really-simple-ssl' ) ); } elseif ( RSSSL()->server->uses_htaccess() && rsssl_get_option( 'redirect' ) !== 'htaccess' ) { $result['status'] = 'recommended'; $result['label'] = __( '301 .htaccess redirect is not enabled.', 'really-simple-ssl' ); $result['description'] = sprintf( '%s
', __( 'The 301 .htaccess redirect is the fastest and most reliable redirect option.', 'really-simple-ssl' ) ); $result['actions'] .= sprintf( '', $url, __( 'Enable 301 .htaccess redirect', 'really-simple-ssl' ) ); } } return $result; } } }