Pregunta sobre WP Mail SMTP by WPForms de Wordpress:

Advertencia de PHP: problema de seguridad de open_basedir

Un usuario pregunt贸 馃憞

Hola,

WP Mail SMTP lleva la siguiente advertencia de PHP. Parece haber un problema con su c贸digo. La 煤nica forma de deshabilitar este error es establecer open_basedir en none (deshabilitar) o instalar un plugin SMTP diferente, que no causa este error. WP env铆a correo SMTP sin problemas incluso con advertencia de PHP

IIS 10 / Windows Server 2016 / WP 4.9.1 / PHP 7.1.13 / WP Mail SMTP 1.2.2

Advertencia de PHP: is_readable (): se aplic贸 la restricci贸n open_basedir. Archivo (C: Inetpub vhosts domain.com staging.domain.com/wp-content/plugins/C: Inetpub vhosts domain.com staging.domain.com wp-content plugins wp- mail-smtp / languages 鈥嬧/ wp-mail-smtp-en_US.mo) no est谩 dentro de las rutas permitidas: (C: /Inetpub/vhosts/domain.com ; C: Windows Temp ) en C: Inetpub vhosts domain.com staging.domain.com wp incluye l10n.php en l铆nea 584

Buena suerte, desafortunadamente no puedo usar WP Mail SMTP ni recomendarlo a mis clientes, ya que es un problema de seguridad establecer open_basedir en none (deshabilitar).

(@slaffik)

Hace 2 a帽os, 10 meses

Hola @ramseyb

Se debe al uso de la funci贸n predeterminada de PHP. is_readable() que compruebe que el archivo Y sea legible antes de intentar leerlo. file_exists() el uso puede solucionar este problema, pero no garantiza que el archivo sea legible.

Para su configuraci贸n particular, significa que tiene valores incorrectos open_basedir valor.

No digo deshabilitarlo, digo, d茅le los valores adecuados.

Adem谩s, veo que el error en realidad est谩 en WordPress y no en un plugin. Mira esto:

en C: Inetpub vhosts domain.com staging.domain.com wp includes l10n.php online 584

As铆 que definitivamente es un problema en la configuraci贸n del servidor, no en el plugin en s铆.

Tambi茅n su archivo de traducci贸n personalizado (wp-mail-smtp-en_US.mo) est谩 mejor ubicado all铆 /wp-content/languages/plugins/, por lo que la pr贸xima actualizaci贸n del plugin WP Mail SMTP no eliminar谩 sus archivos.

(@ramseyb)

Hace 2 a帽os, 10 meses

Gracias por la respuesta Slava,

He probado WP Mail SMTP en algunos otros sitios web y ejecuta las mismas alertas de PHP en el momento en que est谩 habilitado. Esto no sucede con otros plugins o plugins SMTP alternativos.

Es posible que haya habido una correlaci贸n entre el problema y el kit de herramientas de WordPress de Plesk Onyx porque todos los sitios web se instalaron con esta herramienta. El problema parece ser una restricci贸n de extensi贸n de archivo .mo.

Ruta鈥 wp incluye l10n.php en l铆nea 584

C贸digo en l铆nea 584
if ( !is_readable( $mofile ) ) return false;

===

Adem谩s, wp-mail-smtp-en_US.mo no existe en la ruta espec铆fica o cuando descargo el paquete WTP Mail SMTP directamente desde https://wordpress.org/plugins/wp-mail-smtp/

Ruta鈥 wp-content plugins wp-mail-smtp / language / wp-mail-smtp-en_US.mo

===

Espero que pueda resolver esta soluci贸n, el plugin funciona muy bien aparte de este problema.

Esta respuesta fue modificada hace 2 a帽os, 10 meses por.

(@slaffik)

Hace 2 a帽os, 10 meses

No hay nada que arreglar en un plugin. El problema est谩 en la configuraci贸n del servidor. El error NO aparece en un archivo de plugin, pero yo wp-includesl10n.php usar is_readable() funci贸n. Ser谩 mejor que establezcas las reglas open_basedir configurar entrar php.ini.

Esto no sucede con otros plugins o plugins SMTP alternativos.

Eso es solo porque est谩n cargando los archivos de traducci贸n manualmente, utilizando t茅cnicas de carga autom谩tica integradas de WordPress para la traducci贸n.

Tambi茅n puedes eliminar en_US localidad de su wp-config.php archivo (o 谩rea administrativa). El propio WordPress ya usa la versi贸n estadounidense del ingl茅s, por lo que no hay valor real en el idioma del sitio de estos sitios.

(@ramseyb)

Hace 2 a帽os, 10 meses

Gracias por el acertijo, tendr茅 que buscar en Plesk la pregunta porque me est谩 diciendo que se trata de una configuraci贸n perdida en todo el servidor.

(@ramseyb)

Hace 2 a帽os, 9 meses

Hola Slava,

A continuaci贸n se muestra la respuesta de Plesk, 驴qu茅 agregar铆a a la gu铆a open_basedir para mitigar la advertencia de PHP y resolver este problema? Como se se帽al贸, deshabilitar open_basedir (establecido en none) no es una opci贸n.

=== Responder Plesk ===

S铆, si la opci贸n open_basedir est谩 configurada como 芦none禄, los scripts PHP tienen acceso a todos los directorios del servidor.

Adem谩s, como mencion贸 mi colega, si el c贸digo est谩 comprometido y open_basedir tiene un valor 芦none禄, esto resultar谩 en m谩s da帽o.

Reproduje el problema en mi entorno de prueba con 芦WPTP SMTP plugin禄 y aparece el siguiente error despu茅s de enviar el correo electr贸nico:

Advertencia de PHP: is_readable (): se aplic贸 la restricci贸n open_basedir. Archivo (C: Inetpub vhosts plesk888.com httpdocs / wp-content / plugins / C: Inetpub vhosts plesk888.com httpdocs wp-content plugins wp-mail-smtp / language / wp- mail-smtp-en_US.mo) no est谩 dentro de las rutas permitidas: (C: ) en C: Inetpub vhosts plesk888.com httpdocs wp-include l10n.php en l铆nea 584 Del error anterior es Puedo concluir que el camino se duplica, lo cual no es correcto.

Para una investigaci贸n m谩s profunda, le sugiero que se comunique con los desarrolladores del plugin 芦WP Mail SMTP禄 y obtenga una aclaraci贸n sobre la supuesta ruta que se agregar谩 a la gu铆a de PHP. Son expertos en este producto y lo ayudar谩n a resolver el problema de manera eficiente y en poco tiempo.

Mis mejores deseos, Ingeniero de soporte t茅cnico Ivan Kamnev Plesk

===

Gracias Ramsey

(@ramseyb)

Hace 2 a帽os, 9 meses

Hola Slava,

A continuaci贸n se muestran los pasos adicionales necesarios para mitigar la Advertencia de PHP causada por WP Mail SMTP, sin deshabilitarlo (sin configurar ninguno) open_basedir, que es un problema de seguridad. Si puede proporcionarme una gu铆a de open_basedir, ser铆a genial.

Debido a la inconsistencia, la ruta completa al archivo de localizaci贸n .mo se integra con la ruta al directorio del plugin y, como resultado, se restringe al par谩metro PHP open_basedir.

Para resolver el problema, instale el plugin Loco Translate y cree un archivo wp-mail-smtp-en_US.po a trav茅s del plugin. Coloque el archivo wp-mail-smtp-en_US.mo en el directorio / languages 鈥嬧/ plugins /.

Buena suerte resolviendo el problema, Ramsey

Esta respuesta fue modificada hace 2 a帽os, 9 meses por.

(@slaffik)

Hace 2 a帽os, 9 meses

No puedo hacer eso, porque no conozco los detalles de la configuraci贸n de su servidor y nunca he trabajado con servidores basados 鈥嬧媏n Windows. Yo solo puedo google (mismo que usted):
https://stackoverflow.com/questions/12546012/open-basedir-restriction-in-effect-but-file-is-in-the-correct-dir
https://stackoverflow.com/questions/12546012/open-basedir-restriction-in-effect-but-file-is-in-the-correct-dir

Registrarse open_basedir plantillas correctas, comillas, barras (que no deben ser ?) srl.

驴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 *