Menu adicional

Obtenha o MemberPress hoje mesmo! Comece a ser pago pelo conteúdo que você cria! Obtenha o MemberPress agora

Proteção de arquivos

Observação: Embora essas instruções ainda sejam válidas, desde então lançamos o complemento MemberPress Downloads, que é uma maneira muito mais fácil de carregar e proteger seus arquivos. Clique aqui para ler mais sobre o assunto.

MemberPress has some powerful features to help you protect static files. MemberPress’s file protection works at the web-server level which provides absolute protection of each file. For example, even if a person without access to a file somehow managed to get a direct link to it, MemberPress would stop them in their tracks, and ask them to register or log in (if they’ve already registered) before being allowed to download that file.

Observação: Essa forma de proteção de arquivos exige que seu servidor use e permita o acesso a arquivos .htaccess. Alguns servidores, especialmente os servidores Ngnix, não o fazem. Se essas etapas não funcionarem em seu site, talvez seja necessário usar nosso Add-on de downloads para proteger os arquivos.

Que tipos de arquivos o MemberPress pode proteger?

O MemberPress pode proteger qualquer arquivo que não seja necessário para o funcionamento adequado de seu site.

Portanto, o MemberPress pode somente proteger os seguintes tipos de arquivos:

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

Se quiser proteger qualquer tipo de arquivo que não esteja listado acima, recomendamos apenas compactá-los e proteger um único arquivo .zip.

Additionally, you can add some custom code to your theme’s functions.php file if you have one, or to a plugin the
Código WPC (consulte este artigo para obter detalhes: Como adicionar trechos de código personalizados no WPCode). Aqui está um exemplo desse código:

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

After adding that custom code you will need to refresh your WordPress permalinks by going to your WordPress Dashboard > Settings > Permalinks > and simply clicking the ‘Save Changes’ button at the bottom of that page. 

Observação: we don’t recommend protecting PHP, HTML, images, javascript, css, fonts or other frequently accessed website files as it will hurt performance.

Voltar ao topo

Explicação das regras de URI personalizado do MemberPress

As regras de URI personalizadas preenchem as lacunas onde as regras padrão são insuficientes, garantindo uma proteção abrangente do conteúdo em todo o seu site.

Casos de uso comuns

Regras de URI personalizadas protect content that standard MemberPress rules cannot reach. Unlike regular rules that work through WordPress’s content processing, Custom URI rules protect URLs directly at the server level.

1. Páginas especiais do WordPress

Standard page rules don’t affect special pages like the homepage, posts page, category archives, or archive pages. Use Custom URI rules to protect these areas by targeting their specific URLs.

2. Conteúdo do construtor de páginas

As regras padrão MemberPress protegem apenas o conteúdo adicionado por meio da função de conteúdo do WordPress (o the_content() ). Muitos construtores de páginas e temas renderizam seu conteúdo fora dessa função.

Dessa forma, o conteúdo renderizado dessa maneira permanecerá desprotegido quando as regras padrão do MemberPress forem aplicadas. Em vez disso, você pode usar regras de URI personalizadas para proteger toda a página ou publicação.

3. Proteção de diretórios

Você também pode proteger vários arquivos de forma eficiente, direcionando diretórios inteiros com uma única regra usando curingas (por exemplo, /downloads/*).

Proteção de um único arquivo

If you have one file to protect then here’s how you’d do it:

  1. Carregue o arquivo usando o Media Uploader do WordPress.
  2. Crie uma Custom URI Rule para proteger o arquivo.

Digamos que o arquivo que você carregou tinha este URL:
http://example.com/wp-content/uploads/2015/10/report.pdf

The Rule you’d create for this file would be a Custom URI type pointing at just the path (part after
http://example.com) para o arquivo. Assim, na caixa de texto dessa regra, você digitaria o seguinte:

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

Though this is a relatively simple process for a small number of files, it can become time-consuming if applied to a larger number of files. So let’s see how you can create 1 Rule to protect multiple files.

Voltar ao topo

Vários arquivos

Now let’s say you have 10 files and want the same membership level to have access to each.

The idea here is that you’d want to either put each file in a special folder with FTP (recommended), or make sure that each file you upload via the Media Uploader has a common prefix (not recommended unless FTP isn’t an option).

Even though we don’t recommend protecting multiple files uploaded using the WordPress Media Uploader, we do understand that there may be times you want/need to. Therefore, if you upload these files via the Media Uploader they’d have the following URLs:

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

Now all you’d have to do is create 1 Custom URI type Rule with this as its path:

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

Isso protegerá qualquer arquivo na pasta /wp-content/uploads/2015/10/ que tenha um nome que comece com "bronze_".

Voltar ao topo

Vários arquivos com FTP

O FTP/SFTP é uma maneira robusta de transferir arquivos do seu computador local para o seu site. A maioria dos hosts da Web oferece serviços de FTP gratuitos para que você possa acessar os arquivos do seu site remotamente a partir do seu próprio computador. A disponibilidade do FTP pode variar de um host da Web para outro e pode ter requisitos diferentes.

Typically you’ll need an FTP client like FileZilla ou Cyberduck to connect to your server via FTP/SFTP. This will allow you to have filesystem access to your webserver to create folders and upload files in a way similar to how you’d copy files between folders on your own local computer.

In this example we’ll use FTP to create a folder named protected and import our files into it so we have the following URLs now:

Observação: As regras de URI personalizadas não funcionarão para arquivos se o seu site estiver sendo executado em Servidores Nginx. Se você criar a pasta em wp-content/uploads, as regras de URI poderão funcionar para você. Recomendamos o uso da tag MemberPress Complemento para downloads para proteger arquivos em 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

This scenario can be superior to using the WordPress Media Uploader if you’re planning on adding files to your folder later because WordPress’s Media Uploader will sometimes put files uploaded at different times in different folders.

So with this example, all you’d have to do is create a Custom URI type Rule with this as the path (typed into the text box for the Rule):

/protected/

Observação: Se isso não funcionar e você estiver em um servidor Apache. Certifique-se de que as regras de reescrita do MemberPress não tenham sido desativadas, acessando MemberPress->Configurações->Geral e desmarcando a opção "Desativar regras de reescrita" e, em seguida, salve as alterações.

Now let’s look at using some more advanced matching with Regular Expressions.

Voltar ao topo

Expressões regulares

Expressões regulares é uma sintaxe de pesquisa exclusiva e descritiva comumente usada em todas as linguagens de programação modernas para selecionar e processar texto. Isso permitirá que você proteja grupos muito específicos de arquivos com facilidade.

Observação: as expressões regulares são mais bem utilizadas nos casos em que você precisa proteger vários URLs de uma só vez.

A ideia aqui é permitir a correspondência de padrões em um determinado URL e proteger o URL se ele corresponder a uma de suas regras personalizadas do tipo URI com expressão regular ativada.

For example, in the FTP example from above, if you wanted to allow some users to have access to just the pdf’s and others to have access to your pdf, doc, docx, and zip files you could create 2 different regular expression Rules — the first for one membership level and the second for another.

A primeira regra para seu primeiro nível de associação teria um caminho semelhante:

^/protected/.*\.pdf

A segunda regra para seu outro nível de associação teria um caminho semelhante:

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

Granted, Regular Expressions can be difficult to master, but they can provide some powerful matching and file-protecting capabilities in MemberPress Custom URI type Rules. We’ve found that
http://www.regular-expressions.info/ é um bom recurso para quem deseja conhecer essa tecnologia avançada. Além disso, se você tiver necessidades mais complexas, nossa equipe de suporte é bastante competente em descobrir expressões regulares para o que você precisa proteger - portanto, fique à vontade para enviar um solicitação de suporte se você precisar de ajuda com esse recurso.

Voltar ao topo

Requisitos técnicos

Because this feature utilizes your website’s underlying webserver to protect files, there are some technical requirements that must be met in order for this feature to work properly. We’ve written MemberPress to work with the most common server configurations out there but if things aren’t working fully for you, here are some things to check:

  1. Your website must be served by Apache or an Apache-compatible web server like Litespeed. The rewrite rules that MemberPress installs are specific to Apache. If you’re unsure what web server you’re using then it’s probably Apache, but to be sure, you can contact your web host. MemberPress does not support file protection on other web servers like Nginx, IIS, or other non-Apache-based servers. However, if your webserver is using Nginx as a proxy (in front of Apache), you may be able to use the Nginx proxy bypass code outlined in the Nginx section on esta página.
  2. Sua instalação do WordPress deve ter privilégios suficientes para fazer alterações em seu arquivo .htaccess. Se o seu arquivo .htaccess não puder ser gravado pelo WordPress, você poderá editá-lo manualmente seguindo nosso Instruções avançadas de reescrita.
  3. Your WordPress install must have the ability to write files in your /wp-content/uploads folder. This is also a requirement for the WordPress Media Uploader to upload files so if that’s working then this should be working as well.
  4. Cloudflare and other CDN’s and caching have the potential of getting in the way of file protection. This is because they either cache the file so it can not be protected, or they interfere with our protection cookies and cause infinite redirect loops.

Observação: Por isso, se estiver tendo problemas com a proteção de arquivos, desligue qualquer CDN e cache para ver se essa é uma possível causa antes de entrando em contato com nosso suporte.

  1. As Rewrite Rules do MemberPress devem estar ativadas. Vá para MemberPress->Settings->General (Configurações->Geral), desmarque a caixa de seleção "Disable Rewrite Rules" (Desativar regras de reescrita) e salve as alterações.

We’ve also seen users with custom rewrite rules that have interfered with the MemberPress rewrite rules. So if this feature doesn’t seem to be working and you feel like you’ve gone through all of these steps, please contact our equipe de suporte and we’ll help.

Voltar ao topo

Proteger tipos de arquivos adicionais

O MemberPress pode proteger outros tipos de arquivos. Lembre-se de que cada solicitação HTTP de tipo de arquivo protegido causará uma segunda solicitação ao site para verificar se o arquivo está protegido ou não. Por esse motivo, não recomendamos a proteção de arquivos como imagens (jpg, png, gif, etc.), scripts (css, js) ou arquivos de fonte, pois isso poderia causar uma carga significativa em seu servidor.

Use o seguinte código personalizado em um plug-in como o Código WPC para adicionar outros tipos de arquivos. Consulte este artigo para obter detalhes: Como adicionar trechos de código personalizados no WPCode.

The code below adds “html” and “htm” file types to the list of protected files. Once adding this code, you’ll also need to refresh your WordPress permalink settings to force WordPress to update the .htaccess file for your site.

function add_types_protectable($types, $rules) {
  $types[] = 'htm';
  $types[] = 'html';
  return $types;
}
add_filter('mepr_rewrite_rules_protect_types', 'add_types_protectable', 11, 2);
Este artigo foi útil?

Artigos relacionados

garota do computador

Obtenha o MemberPress hoje mesmo!

Comece a ser pago pelo conteúdo que você cria.