PDA

View Full Version : حرفه ای: دانلود وی آی پی از سرور دانلود



p30rex
پنج شنبه 09 بهمن 1393, 12:56 عصر
سلام
سایتی که در حال طراحیش هستم دو سرور داره
یکی برای خود سایت اون یکی برای قرار گرفتن فایل های دانلودی (یعنی سرور دوم دیتابیس نداره)
حالا میخوام فقط کاربران وی آی پی بتونند فایل ها رو دانلود کنند
از یه همچین کدی برای این منظور استفاده کردم:



<?php


require_once('config.php');

require_once('http.class.php');
$av_http = new av_httpdownload;


function av_remote_auth_check( $data ){
global $av_config;
$request = '';
$request .= 'action=vi_user_auth';
$request .= '&user_name='.$data[0];
$request .= '&user_password='.$data[1];
$request .= '&confirm_key='.$av_config['key'];
$response = '';
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $av_config['site_url'] );
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $request);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HEADER, false);
curl_setopt($ch, CURLOPT_TIMEOUT, 60);
$response = curl_exec($ch);
curl_close($ch);
$response = trim($response);
if($response == 'true'){
return true;
} else {
return false;
}
}

if( empty( $_SERVER['PATH_INFO'] ) )
return;



$fileData = explode( '/' , ltrim( $_SERVER['PATH_INFO'] , '/' ) );

$filePath = $av_config['files_path'] . $fileData[0];


if( file_exists( $filePath ) ) {
$LoginSuccessful = false;
if ( isset($_SERVER['PHP_AUTH_USER']) && isset($_SERVER['PHP_AUTH_PW']) ){
$Username = $_SERVER['PHP_AUTH_USER'];
$Password = $_SERVER['PHP_AUTH_PW'];
if ( av_remote_auth_check( array($Username,$Password) ) ){
$LoginSuccessful = true;
}
}
if ( ! $LoginSuccessful ){
header('WWW-Authenticate: Basic realm="Enter User name and Password for VIP Download."');
header('HTTP/1.0 401 Unauthorized');
print "Login failed!\n";
} else {
$av_http->set_byfile( $filePath );
$av_http->download( $fileData[0] );
}
} else {
header("HTTP/1.0 404 Not Found");
echo 'file not found';
}

die();


کد کار میکنه اما نمیدونم به چه دلیلی سرور ایراد گرفته گفته این کد غیر استاندارده و برای سرور مشکل ایجاد میکنه
حالا از اساتید تقاضا دارم مشکل کد رو بگید یا یه کد جایگزین بهم معرفی کنید، متشکرم

p30rex
جمعه 10 بهمن 1393, 22:53 عصر
کسی جواب منو نمیده؟؟ :(
دوستان خیلی فوریه، لطفا کمک کنید