我已经建立了一个网站,我在我的php脚本中使用了很多include语句,以使一切变得更简单。
例如,我有一个index.php文件,如下所示:
<?php include 'script/uppage.php';?>
<div id='ContentArea' class="container">
<div class="row">
<div class="col-sm-8">
<?php
switch($page){
case 'register':
include 'pages/register.php';
break;
case 'fp':
include 'pages/forgotpassword.php';
break;
default:
include 'pages/main.php';
break;
}?>
</div>
<div class="col-sm-4">
<?php include 'script/side_menu.php' ?>
</div>
</div>
</div>
<?php include 'script/downpage.php';?>
如果有人试图直接从浏览器输入例如register.php,我想拒绝访问。因此,如果他们输入www.mywebsite.com/pages/register.php,则会显示错误。
是否有任何一般指导如何为大型网站和一些基本原则。任何帮助非常感谢!
答案 0 :(得分:0)
正如评论中已经提到的那样 - 您可以将此文件存储在您的网站文件夹之外,即DOCUMENT_ROOT
和include'em,如:
include $_SERVER['DOCUMENT_ROOT'] . '/../pages/main.php';
另一种选择是在顶级文件中定义一些特殊常量,例如
<?php
define('SOME_CONSTANT', true); // here, we define a constant
include 'script/uppage.php';?>
然后,如果您所包含的文件只是检查它,例如在pages/main.php
:
<?php
if (!defined('SOME_CONSTANT') || SOME_CONSTANT !== true) {
die();
}
// other code
答案 1 :(得分:-3)
所以,我使用.htaccess文件来执行此操作。
只需在.htaccess文件中添加行Options All -Indexes
。