2014-09-19 40 views
2

我正在開發一個小型PHP項目。我想包含很多PHP文件,但我想在通過其他人通過directlink打開之前保護它們。保護PHP文件以在其他人打開之前包含

例如:

<?php include 'content/scripts/php/sample.php'; ?> 

我不希望人們訪問sample.php通過

http://samplepage.com/content/scripts/php/sample.php 
+1

您可以爲此編寫'.htaccess'。只允許來自服務器的腳本。 – 2014-09-19 14:40:02

回答

3

如果您處於共享主機並且無法將文件放置在Web服務器文件夾之外或不能使用.htaccess,常用的方法是在您的主php文件中定義一個常量,然後檢查常量如果未定義,則包含每個包含文件的頂部和die()。通過這種方式,人們仍然可以通過路徑訪問文件,但他們只能看到空白頁面。例如,Wordpress使用這種方法。

define('APP', true); 
中包含的文件

if(!defined('APP')) die(); 
2

只需將您的web服務器的公共文件夾外(也許打了一下與set_include_path爲更容易從你的公共php文件訪問它們)。

0

而且你可以在PHP本身解決這個問題,就像這樣:

的index.php

在主PHP文件

<?php 

define('PARENT_AVAILABLE', true); 

inc lude.php

<?php 

if (!defined('PARENT_AVAILABLE')) die('Not allowed'); 
相關問題