• 0
Sign in to follow this  
laio

BLOQUEAR ACESSO A UM ARQUIVO NO SERVIDOR

Question

Galera, preciso "proteger" um arquivo de um servidor. A um tempo atras eu tinha visto isso em um site, mas não me recordo onde foi. Vou tentar ser bem claro no exemplo.

No meu servidor tem a pasta: www/arquivos

Dentro da pasta arquivos tem um vídeo por exemplo: www/arquivos/video.mp4

ai no banco de dados eu cadastro o nome do vídeo, o autor e uma key para ele.

TABELA conteudo:

conteudo_id: auto_increment

conteudo_autor: autor1

conteudo_nome: video

conteudo_key: 1a2B3c (chave aleatória para esse conteúdo)

 

na hora de exibir esse vídeo na pagina do site, era mais ou menos assim:

<?php
$sqlConteudo    = ("SELECT * FROM conteudo WHERE conteudo_autor = 'autor1'");
$queryConteudo  = mysql_query($sqlConteudo,$conexao);
while($conteudo = mysql_fetch_array($queryConteudo)){
	$nome_video = $conteudo['conteudo_nome'];
	$key_video  = $conteudo['conteudo_key'];

	echo"<video width='1024px' height='768px' controls>
  			<source src='arquivos/$nome_video.mp4?key=$key_video' type='video/mp4'>
		 </video>"
}
?>

Eu não me recordo se usava .HTACCESS ou só PHP, mas quando a pessoa digitava a url: www.meusite.com/arquivo/video.mp4 o site era redirecionado para o index.php. Era possível acessar o vídeo direto pela URL se digitasse www.meusite.com/arquivo/video.mp4?key=1a2B3c.

 

Se alguém puder ajudar! Obrigado. 

Share this post


Link to post
Share on other sites

5 answers to this question

Recommended Posts

  • 0

Aproveitando o tópico, gostaria de fazer uma pergunta sobre segurança de arquivos. Se eu tenho um site (PHP) de video aula por exemplo e eu libero o video somente para um determinado usuario. Ex:


Tabela usuarios:

user_id: 1
login: usuario1
liberacao: 1   (0 = não liberado / 1 = liberado)
----
user_id: 2
login: usuario2
liberacao: 1   (0 = não liberado / 1 = liberado)
----
user_id: 3
login: usuario3
liberacao: 0   (0 = não liberado / 1 = liberado)

Ai quando a pessoa fazer login no site. eu vou mostrar um vídeo somente para quem tem liberacao = 1. Ex:

<?php
    $sqlInfosUser   = ("SELECT * FROM usuarios WHERE user_id = '". $_SESSION['user_id'] ."'");
    $queryInfosUser = mysql_query($sqlInfosUser,$conexao);
    $infosUser      = mysql_fetch_array($queryInfosUser);
    $liberacao      = $infosUser['liberacao'];

    if($liberacao == 0){
        //exibe uma imagem com a thumb do vídeo
    }elseif($liberacao >= 1){
        //exibe o video
    }
?>

Esse vídeo estaria no meu servidor dentro da pasta www/videos por ex.

Isso é seguro, tendo em vista que eu quero deixar somente alguns usuários verem o conteúdo do vídeo??

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this