Nginx link módulo seguro com problemas de php?

1

Configuração Nginx

server {
listen  80;
server_name 173.249.40.xxx;

root /var/www/files.com/html;
index  index.html index.htm;

location / {        
    try_files $uri $uri/ =404;
}

location /securetest {
    alias /var/www/files.com/html;
    secure_link $arg_md5,$arg_expires;
    secure_link_md5 "$secure_link_expires$uri$remote_addr the_secret_key_configured_in_nginx";

    if ($secure_link = "") { return 403; }
    if ($secure_link = "0") { return 410; }    
}


error_page  500 502 503 504  /50x.html;
location = /50x.html {
    root  /usr/share/nginx/html;
 }
}

Arquivo PHP

function buildSecureLink($baseUrl, $path, $secret, $ttl, $userIp)
{
    $expires = time() + $ttl;
    $md5 = md5("$expires$path$userIp $secret", true);
    $md5 = base64_encode($md5);
    $md5 = strtr($md5, '+/', '-_');
    $md5 = str_replace('=', '', $md5);
    return $baseUrl . $path . '?md5=' . $md5 . '&expires=' . $expires;
}
$secret = 'the_secret_key_configured_in_nginx';
$baseUrl = 'http://173.249.40.xxx';
$path = '/securetest/'.$filename;
$ttl = 120; //no of seconds this link is active 
$userIp = '39.47.109.140';
$secure_Link_created = buildSecureLink($baseUrl, $path, $secret, $ttl, $userIp);
redirect($secure_Link_created);

Aqui está o problema, quando eu escrevo o caminho exato do arquivo, todos podem acessar o arquivo enquanto eu quero, o link só pode ser acessado pelo meu site. qual será o URL para acessar o arquivo eu também estou confuso com isso. %código% ou http://173.249.40.xxx/nj_folder/myfile.zip

Quando tento acessar o arquivo com URL de segurança, ocorreu um erro 404. O código de redirecionamento também cria o link, mas funciona para todos e tem o caminho completo exato http://173.249.40.xxx/securetest/myfile.zip O caminho completo deve estar escondido o que eu estou perdendo? Por favor, explique isso em detalhes.

Obrigado

    
por NomanJaved 29.03.2018 / 19:12

0 respostas