Menú adicional

¡Consiga MemberPress hoy mismo! ¡Empieza a cobrar por los contenidos que creas! Obtenga MemberPress ahora

Protección de archivos

Nota: Aunque estas instrucciones siguen siendo válidas, desde entonces hemos lanzado el Complemento de Descargas MemberPress, que es una forma mucho más sencilla de subir y proteger tus archivos. Haga clic aquí para leer más.

MemberPress dispone de algunas potentes funciones que le ayudarán a proteger los archivos estáticos. La protección de archivos de MemberPress funciona a nivel del servidor web, lo que proporciona una protección absoluta de cada archivo. Por ejemplo, incluso si una persona sin acceso a un archivo consiguiera de alguna manera obtener un enlace directo a él, MemberPress le pararía en seco y le pediría que se registrara o iniciara sesión (si ya se ha registrado) antes de permitirle descargar ese archivo.

Nota: Esta forma de protección de archivos requiere que su servidor utilice y permita el acceso a los archivos .htaccess. Algunos servidores, especialmente los servidores Ngnix, no lo hacen. Si estos pasos no funcionan en su sitio es posible que tenga que utilizar nuestro Descargas Add-On para proteger los archivos.

¿Qué tipos de archivos puede proteger MemberPress?

MemberPress puede proteger cualquier archivo que no sea necesario para el correcto funcionamiento de su sitio web.

Por lo tanto, MemberPress puede
sólo proteger los siguientes tipos de archivos:

zip, gz, tar, rar, doc, docx, xls, xlsx, xlsm, pdf, mp4, m4v, mp3, ts, key, m3u8

Si desea proteger cualquier tipo de archivo que no figure en la lista anterior, le recomendamos que los comprima y proteja un único archivo .zip.

Además, puede añadir código personalizado al archivo functions.php de su tema, si dispone de uno, o a un plugin del tipo
WPCode (consulte este artículo para obtener más información: Cómo añadir fragmentos de código personalizados en WPCode). He aquí un ejemplo de ese código:

function add_types_protectable($types, $rules) {
  $types[] = 'csv';
  return $ipos;
}
add_filter('mepr_rewrite_rules_protect_types', 'add_types_protectable', 11, 2);

Después de añadir ese código personalizado tendrás que actualizar tus permalinks de WordPress yendo a tu panel de WordPress > Configuración > Permalinks > y simplemente haciendo clic en el botón "Guardar cambios" en la parte inferior de esa página. 

Nota: no recomendamos proteger PHP, HTML, imágenes, javascript, css, fuentes u otros archivos del sitio web a los que se accede con frecuencia, ya que afectaría al rendimiento.

Volver arriba

Proteger un único archivo

Si tiene un archivo que proteger, haga lo siguiente:

  1. Suba el archivo utilizando el cargador de medios de WordPress.
  2. Cree una regla URI personalizada para proteger el archivo.

Digamos que el archivo que subiste tenía esta URL:
http://example.com/wp-content/uploads/2015/10/report.pdf

La regla que crearía para este archivo sería un tipo de URI personalizado que apunte sólo a la ruta (parte después de
http://example.com) al archivo. Por lo tanto, en el cuadro de texto de esta regla, escriba lo siguiente:

/wp-content/uploads/2014/12/informe.pdf

Aunque se trata de un proceso relativamente sencillo para un número reducido de archivos, puede llevar mucho tiempo si se aplica a un número mayor de archivos. Veamos cómo crear una regla para proteger varios archivos.

Volver arriba

Varios archivos

Supongamos que tiene 10 archivos y desea que el mismo nivel de afiliación tenga acceso a cada uno de ellos.

La idea es que pongas cada archivo en una carpeta especial con FTP (recomendado), o te asegures de que cada archivo que subas a través del cargador multimedia tenga un prefijo común (no recomendado a menos que FTP no sea una opción).

Aunque no recomendamos proteger múltiples archivos subidos usando el Media Uploader de WordPress, entendemos que puede haber ocasiones en las que quiera/necesite hacerlo. Por lo tanto, si subes estos archivos a través de Media Uploader, tendrán las siguientes URL:

http://example.com/wp-content/uploads/2015/10/bronze_report.pdf
http://example.com/wp-content/uploads/2015/10/bronze_report.doc
http://example.com/wp-content/uploads/2015/10/bronze_report.docx
http://example.com/wp-content/uploads/2015/10/bronze_analysis.pdf
http://example.com/wp-content/uploads/2015/10/bronze_analysis.doc
http://example.com/wp-content/uploads/2015/10/bronze_analysis.docx
http://example.com/wp-content/uploads/2015/10/bronze_groupings.pdf
http://example.com/wp-content/uploads/2015/10/bronze_groupings.doc
http://example.com/wp-content/uploads/2015/10/bronze_groupings.docx
http://example.com/wp-content/uploads/2015/10/bronze_archive.zip

Ahora todo lo que tiene que hacer es crear una regla de tipo URI personalizada con esta ruta:

/wp-content/uploads/2015/10/bronze_

Esto protegerá cualquier archivo en la carpeta /wp-content/uploads/2015/10/ que tenga un nombre que empiece por "bronze_".

Volver arriba

Múltiples archivos con FTP

FTP/SFTP es una forma robusta de transferir archivos desde tu ordenador local a tu sitio web. La mayoría de los alojamientos web ofrecen servicios FTP gratuitos para que puedas acceder a los archivos de tu sitio de forma remota desde tu propio ordenador. La disponibilidad de FTP puede variar de un alojamiento web a otro y puede tener diferentes requisitos.

Normalmente necesitarás un cliente FTP como FileZilla o Cyberduck para conectarte a tu servidor vía FTP/SFTP. Esto te permitirá tener acceso al sistema de archivos de tu servidor web para crear carpetas y subir archivos de forma similar a como copiarías archivos entre carpetas en tu propio ordenador local.

En este ejemplo usaremos FTP para crear una carpeta llamada protected e importar nuestros archivos en ella, de modo que ahora tenemos las siguientes URLs:

Nota: Las reglas URI personalizadas no funcionarán para los archivos si su sitio se ejecuta en Servidores Nginx. Si crea la carpeta bajo wp-content/uploads entonces las reglas URI pueden funcionar para usted. Le recomendamos que utilice las reglas Complemento de descargas MemberPress para proteger archivos en servidores Ngnix. 

http://example.com/protected/report.pdf
http://example.com/protected/report.doc
http://example.com/protected/report.docx
http://example.com/protected/analysis.pdf
http://example.com/protected/analysis.doc
http://example.com/protected/analysis.docx
http://example.com/protected/groupings.pdf
http://example.com/protected/groupings.doc
http://example.com/protected/groupings.docx
http://example.com/protected/archive.zip

Este escenario puede ser superior al uso del Media Uploader de WordPress si está planeando añadir archivos a su carpeta más tarde porque el Media Uploader de WordPress a veces pondrá los archivos subidos en diferentes momentos en diferentes carpetas.

En este ejemplo, todo lo que tiene que hacer es crear una regla de tipo URI personalizada con esta ruta (introducida en el cuadro de texto de la regla):

/protegido/

Nota: Si esto no funciona y usted está en un servidor Apache. Asegúrese de que las reglas de reescritura MemberPress no se han desactivado yendo a MemberPress->Configuración->General y desmarcando la casilla "Desactivar reglas de reescritura" y, a continuación, guarde los cambios.

Veamos ahora cómo utilizar algunas coincidencias más avanzadas con Expresiones Regulares.

Volver arriba

Expresiones regulares

Expresiones regulares es una sintaxis de búsqueda única y descriptiva que se utiliza habitualmente en todos los lenguajes de programación modernos para seleccionar y procesar texto. Le permitirá proteger grupos muy específicos de archivos con facilidad.

La idea aquí es que le permitirá hacer coincidir patrones en una URL dada y proteger la URL si coincide con una de sus Reglas personalizadas de tipo URI con expresión regular activada.

Por ejemplo, en el ejemplo de FTP anterior, si desea permitir que algunos usuarios tengan acceso sólo a los archivos pdf y que otros tengan acceso a sus archivos pdf, doc, docx y zip, podría crear 2 reglas de expresión regular diferentes: la primera para un nivel de miembro y la segunda para otro.

La primera Regla para su primer nivel de afiliación tendría una ruta de algo como:

^/protegido/.*\.pdf

La segunda Regla para su otro nivel de membresía tendría una ruta de algo como:

^/protegido/.*\(pdf|doc|docx|zip)

Es cierto que las Expresiones Regulares pueden ser difíciles de dominar, pero pueden proporcionar algunas potentes capacidades de coincidencia y protección de archivos en las Reglas Personalizadas de tipo URI de MemberPress. Hemos descubierto que
http://www.regular-expressions.info/ es un buen recurso para cualquiera que quiera descubrir esta potente tecnología. Además, si tienes necesidades más complejas, nuestro equipo de soporte es bastante experto en expresiones regulares para lo que necesites proteger. solicitud de asistencia si necesitas ayuda con esta función.

Volver arriba

Explicación de las normas URI de MemberPress

Lo que verás en el vídeo: una explicación más detallada de las reglas URI personalizadas de MemberPress.

Requisitos técnicos

Debido a que esta función utiliza el servidor web subyacente de su sitio web para proteger los archivos, hay algunos requisitos técnicos que deben cumplirse para que esta función funcione correctamente. Hemos escrito MemberPress para que funcione con las configuraciones de servidor más comunes, pero si no funciona correctamente, aquí tienes algunas cosas que debes comprobar:

  1. Su sitio web debe ser servido por Apache o un servidor web compatible con Apache como Litespeed. Las reglas de reescritura que MemberPress instala son específicas para Apache. Si no está seguro de qué servidor web está utilizando, probablemente sea Apache, pero para estar seguro, puede ponerse en contacto con su proveedor de alojamiento web. MemberPress no es compatible con la protección de archivos en otros servidores web como Nginx, IIS u otros servidores no basados en Apache. Sin embargo, si tu servidor web utiliza Nginx como proxy (delante de Apache), puedes utilizar el código de desvío de proxy de Nginx descrito en la sección de Nginx en esta página.
  2. Su instalación de WordPress debe tener privilegios suficientes para realizar cambios en su archivo .htaccess. Si su archivo .htaccess no puede ser escrito por WordPress, puede editarlo manualmente siguiendo nuestros pasos. instrucciones avanzadas de reescritura.
  3. Su instalación de WordPress debe tener la capacidad de escribir archivos en su carpeta /wp-content/uploads. Esto también es un requisito para que WordPress Media Uploader suba archivos, así que si eso funciona, entonces esto también debería funcionar.
  4. Cloudflare y otros CDN's y el almacenamiento en caché tienen el potencial de interponerse en el camino de la protección de archivos. Esto se debe a que o bien almacenan en caché el archivo para que no pueda ser protegido, o interfieren con nuestras cookies de protección y causan bucles de redirección infinitos.

Nota: Por este motivo, si tiene problemas con la protección de archivos, debería desactivar cualquier CDN y caché para ver si es una posible causa. antes de poniéndose en contacto con nuestro servicio de asistencia.

  1. Las reglas de reescritura de MemberPress deben estar activadas. Vaya a MemberPress->Configuración->General, desmarque la casilla "Desactivar reglas de reescritura" y guarde los cambios.

También hemos visto usuarios con reglas de reescritura personalizadas que han interferido con las reglas de reescritura de MemberPress. Así que si esta característica no parece estar funcionando y usted siente que ha pasado por todos estos pasos, por favor póngase en contacto con nuestro equipo de apoyo y le ayudaremos.

Volver arriba

Proteger otros tipos de archivos

MemberPress puede proteger tipos de archivo adicionales. Tenga en cuenta que cada petición HTTP de tipo de archivo protegible provocará una segunda petición al sitio para comprobar si el archivo está protegido o no. Por esta razón, no recomendamos proteger archivos como imágenes (jpg, png, gif, etc), scripts (css, js), o archivos de fuentes ya que podría causar una carga significativa a su servidor.

Utilice el siguiente código personalizado en un plugin como el WPCode para añadir tipos de archivo adicionales. Consulte este artículo para obtener más información: Cómo añadir fragmentos de código personalizados en WPCode.

El siguiente código añade los tipos de archivo "html" y "htm" a la lista de archivos protegidos. Una vez añadido este código, también tendrá que actualizar la configuración de permalink de WordPress para forzar WordPress para actualizar el archivo .htaccess para su sitio.

function add_types_protectable($types, $rules) {
  $types[] = 'htm';
  $types[] = 'html';
  return $ipos;
}
add_filter('mepr_rewrite_rules_protect_types', 'add_types_protectable', 11, 2);
¿Le ha resultado útil este artículo?

Artículos relacionados

chica del ordenador

¡Consiga MemberPress hoy mismo!

Empieza a cobrar por los contenidos que creas.