所以我正在尝试从我的 Html 文件中制作一个主题。使用require('file.php')
其中file.php
是我主题的一系列不同组件。现在,当我直接访问该文件时,我仍然看到html。如何使其在用户直接访问file.php
时显示空白页?
解释所以假设我做了索引.php我想包含头文件( header.php
)
当我require('header.php')
时,一切都很完美。现在当我尝试访问header.php
时,我可以看到它的html内容。如何使它显示为空白而不是看到header.php
片?谢谢
在这种情况下,如果要在index.php
内执行header.php
或等。您需要在父文件中添加或define
一个标志(无论您要执行header.php
在哪里执行,或者只是添加到所有父文件中调用的公共文件中),在头文件中.php您需要检查定义的标志是否设置或具有一些值。如果未设置,则使用die();
函数停止执行。
在索引.php中,
<?php $HeaderAllow ='1'; ?>
在头文件中,
<?php
if($HeaderAllow=='' or !isset($HeaderAllow)){
die();
}
?>
您可以使用此处的$_SERVER['SCRIPT_FILENAME']
进行检查,然后在header.php
中使页面空白。
<?php
if($_SERVER['SCRIPT_FILENAME'] == 'header.php') {
exit();
}
将
包含文件放在单独的文件夹中并使用.htaccess
进行保护是个好主意。
同样的问题在这里。
拒绝 HTaccess 对文件夹和文件的直接访问
最简单的方法是将包含放在目录中,并在 .htaccess 文件中拒绝对该目录的访问