2015-09-25 3 views
0

Как я могу сделать этот файл перенаправлен или заблокирован, если он посещен с другого сайта.PHP отключает доступ с других сайтов

пример я хочу, чтобы этот скрипт будет доступен только с моего сайта example.com, и если какой-либо другой сайт, попробуйте открыть файл PHP это может быть заблокирован или перенаправлять

<?php 
if (isset($_GET['id'])) { 
if (isset($_SERVER['HTTP_RANGE']) && !empty($_SERVER['HTTP_RANGE'])) { 


    require_once './include/db.php'; 
    require_once './include/video-stream.php'; 
    $stm = $db->prepare("select * from video where code=?"); 
    $stm->execute(array($_GET['id'])); 

    if ($stm->rowCount() > 0) { 

     $row = $stm->fetch(); 


     $stream = new VideoStream($row->path); 
     $stream->start(); 
    } else { 
     header("message1"); 
     echo "message2"; 
     die(); 
    } 
} 
+0

Используйте реферера и проверить, если URL называется из вашего ш ebsite. $ _SERVER [ "HTTP_REFERER"]; – Hozikimaru

+0

if (isset ($ _ SERVER ['REFERER']) &&! Empty ($ _ SERVER ['HTTP_RANGE'])) { u подумайте об этом? –

+0

'$ _SERVER [" HTTP_REFERER "]' не является надежным; прочитайте это http://stackoverflow.com/a/6023980/ –

ответ

0

Создать файл .htaccess в этом каталоге, где находится файл и добавить

<Files "*"> 
Order deny, allow 
Deny from all 
Allow from .example.com 
</Files> 

, который будет блокировать этот каталог доступа с других сайтов

+0

я использую этот RewriteEngine On RewriteBase/ RewriteCond% {HTTP_REFERER}! Пример \ .com [NC] RewriteRule .? - [F] # Дружественный URL-часть RewriteCond% {REQUEST_FILENAME} -f RewriteCond% {REQUEST_FILENAME} -d RewriteRule^(. *) $ Index.php д = $ 1 [L, QSA] !? но как я могу исключить папку из папки здесь –