php - 有什么办法可以防止请求 .php 文件吗?

标签 php

我有某些文件,如 header.phpfooter.php。我想禁止从浏览器地址栏直接请求这些文件。

如果我在代码中有 include 'file.php',那么它应该被包含,但如果它是直接请求的,我不希望它显示,因为它没有任何用处。是否可以?

提前致谢:)

最佳答案

您可以按照可取性(从“好”到“它有点管用”)的顺序执行以下任何操作:

  • 在您的网络根目录之外创建它们。例如,假设 /somepath/example.com/htdocs/映射到 http://example.com/ :

/somepath/example.com/htdocs/index.php
/somepath/example.com/includes/header.php
/somepath/example.com/includes/footer.php

索引.php:

<?php require_once('../includes/header.php') ?>
  • 阻止通过 .htaccess 访问

<Files (header|footer).php>
Deny from all
</Files>

  • (如果其他一切都失败了,就 hack)在主文件中设置一个常量,如果找不到则静默死去。

索引.php:

<?php define('INCLUDED_FROM_MAIN_FILE_EXAMPLE_COM',true) ?>

header.php:

<?php if (!defined('INCLUDED_FROM_MAIN_FILE_EXAMPLE_COM')) { die(); }

关于php - 有什么办法可以防止请求 .php 文件吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3265465/

相关文章:

php - 如何从准备好的语句中获取 assoc 数组中的所有内容?

PHP 在 PDO 语句准备时崩溃

php - --shell 停止执行,适用于命令提示符、批处理文件、PHP exec() 等

php - CURDATE() 12 月不工作

php - 从一个表中选择不在另一个表中但具有特定条件的记录

php - 在 PHP 和 MySQL 中组织和管理数千个 PDF 文件

php - 使用 PHP 将 javascript 数组添加到数据库的想法

PHPUnit 数据提供者错误

php - DateTime方法链接问题

php - Zend db - 我什么时候应该引用以避免 sql 注入(inject)?