Pregunta sobre iThemes Security (formerly Better WP Security) de Wordpress:

Advertencia de PHP: preg_match (): Error de compilaci贸n

Un usuario pregunt贸 馃憞

Hola,

Tengo esta advertencia de PHP en bucle en mis archivos de registro, todos los d铆as (creo que es de la versi贸n 7.3, pero no estoy realmente seguro):

Advertencia de PHP: preg_match (): Error de compilaci贸n: rango no v谩lido en la clase de caracteres offset 29 en /wp-content/plugins/better-wp-security/core/modules/file-change/lib/package-factory.php en l铆nea 96

sabes cual es el problema?

(@nlpro)

Hace 1 a帽o, 8 meses

Este es probablemente un problema de incompatibilidad de php 7.3 con el plugin.

En bpp 7.3, PCRE (Expresiones regulares compatibles con Perl) se actualiz贸 a v2.

PCRE es una biblioteca que usa PHP para manejar expresiones regulares.

PCRE2 es m谩s estricto en las validaciones de patrones, por lo que despu茅s de una actualizaci贸n de php, es posible que algunos de los patrones que funcionaban anteriormente ya no se compilen.

Ahora un patr贸n de expresi贸n regular no aparece en la l铆nea 96 en el archivo package-factory.php … pero se est谩 ejecutando una expresi贸n regular:

95	if ( '@' === $search_path[0] ) {
96		if ( ! preg_match( $search_path, $file ) ) {

Tambi茅n inclu铆 la l铆nea anterior en el c贸digo anterior, porque nos dice qu茅 patr贸n de expresiones regulares buscar. Uno que comience con @. Solo hay un juego en el archivo completo package-factory.php:

32 $core_files = '@' . preg_quote( ABSPATH, '@' ) . '[w-_][email protected]';

Es el ‘[w-_]+ . @ ‘parte al final donde est谩 el problema. El gui贸n debe escapar. Entonces deber铆a ser ‘[w-_]+ . @ ‘.

Haga una copia de seguridad del archivo package-factory.php actual. Edite como se describe arriba y luego vea si las advertencias desaparecen en el hueco.

Para evitar confusiones, no soy iThemes.

Esta respuesta fue modificada hace 1 a帽o, 8 meses por.

(@juliemoynat)

Hace 1 a帽o, 8 meses

隆Gracias por su respuesta!

Ten铆as raz贸n, tengo PHP 7.3, as铆 que prob茅 tu soluci贸n y parece funcionar. Las advertencias de cambio de archivo ahora funcionan mejor.

Tambi茅n not茅 otra advertencia de PHP, pero tampoco conozco la incompatibilidad de PHP 7.3:

Advertencia de PHP: printf (): muy pocos argumentos en /wp-content/plugins/better-wp-security/core/modules/malware/settings-page.php en l铆nea 52

Espero que iThemes resuelva estos problemas pronto.

(@nlpro)

Hace 1 a帽o, 8 meses

Bien, excelente. Gracias por su confirmaci贸n. Por supuesto, iThemes tendr谩 que corregir este error en una versi贸n futura. Puede llevar alg煤n tiempo ya que iThemes no supervisa este foro.

En cuanto a la otra advertencia, probablemente est茅 utilizando el panel de WordPress en un idioma que no sea ingl茅s (supongo que franc茅s). As铆 que es b谩sicamente un problema de traducci贸n bien conocido (en la traducci贸n al franc茅s del plugin iTSec). Entonces no es un error en el c贸digo del plugin.

Como esta es una pregunta diferente, cree un tema aparte.

Oh (casi lo olvido) Creo que este tema se puede solucionar con Solution 馃槈

Esta respuesta fue modificada hace 1 a帽o, 8 meses por.

驴Solucion贸 tu problema??

0 / 0

Deja una respuesta 0

Tu direcci贸n de correo electr贸nico no ser谩 publicada. Los campos obligatorios est谩n marcados con *