禁用特殊目录上的某些 php 功能

2023-11-22

我想禁用执行一些 php 函数,例如file_put_content,exec,eval在特殊目录上。

我可以用disable_functions在 php.ini 中,但如何定义一个特殊的文件夹,例如c:\poject\public


如果您的 php.ini 工作版本禁用了您想要的功能,那么您只需将该文件夹“链接”到该指定的 .ini 文件即可。这意味着您的 Web 服务器在从该目录提供文件时应该使用该特定的 .ini 文件而不是系统文件。

如果你使用Apache2作为服务器,可以找到解决方案here您可以为每个虚拟主机定义特定的 php.ini 文件。假设您的特定文件夹是/var/www/web1,您应该将禁用该功能的php.ini放入/var/www/web1并使用此Apache2配置

<VirtualHost 1.2.3.4:80>
[...]
PHPINIDir /var/www/web1
[...]
</VirtualHost>

如果您不熟悉或不使用 VirtualHosts(但仍在使用 Apache2),另一种可能的解决方案是将 PHP 配置放入文件夹中名为 .htaccess 的文件中,语法如下:

php_value disable_functions "file_put_content,exec,eval"
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

禁用特殊目录上的某些 php 功能 的相关文章

随机推荐

  • C++11 字符串开头的大小写不敏感比较(unicode)

    我必须检查特定字符串是否以另一个字符串开头 字符串使用 utf8 编码 比较应不区分大小写 我知道这与那个主题非常相似C 中不区分大小写的字符串比较但我不想使用 boost 库 我更喜欢便携式解决方案 如果 几乎 不可能 我更喜欢面向 Li
  • Angularjs 获取巨大 json 文件的请求

    我需要向用户显示数据库中的一些数据 数据位于 json 文件中 并且大小相当大 json 文件的大小大约在 15MB 左右 我创建了一个服务并使用 Promise api 发出成功的请求并加载数据并通过在 div 上执行 ng repeat
  • SFINAE 与以下 has_member 函数一起无法正常工作是什么?

    我正在尝试以下示例沃尔特 布朗 Walter Brown 的 TMP 演讲我正在努力得到他的has member实施工作 然而 实现似乎错误地返回 true 这让我相信 SFINAE 有一些我不理解的细节 include
  • 在 MATLAB 中使用 imshow 方法显示图像标题

    如何在 MATLAB 图形中显示图像标题 我有以下代码 I imread images pap png subplot 1 2 1 imshow I here I want to show labels Use the title命令 它的
  • 用于开发新的Windows Azure管理门户的框架?

    有谁知道微软使用什么框架在Windows Azure上开发类似Metro的Web管理门户 如果是这样 开发者可以使用吗 I 提出了同样的问题并因此受到很多仇恨 获胜的答案是地铁用户界面包 它完成了 Azure 中的许多工作 但您必须自己实现
  • 如何在 java 中使 JTable 可编辑

    我在 java 中使用 JTable 但它不允许我编辑单元格 private final TableModel dataModel new AbstractTableModel public int getColumnCount retur
  • proxyMode ScopedProxyMode.TARGET_CLASS 与 ScopedProxyMode.INTERFACE

    正如其他 SO 答案所建议的 根据您的需要使用代理模式类型 我仍然很困惑 Configuration ComponentScan public class Application public static void main String
  • Python:更新线程中的参数

    我想知道当该参数在程序主体中获得新值时是否可以启动一个新线程并更新其参数 所以像这样 i 0 def foo i print i time sleep 5 thread start new thread foo i while True i
  • SQL 选择 MAX(COUNT)

    我正在尝试选择具有 MAX 微帖子数的用户 SELECT name count FROM users INNER JOIN microposts ON microposts user id users id GROUP BY users i
  • IntegrityError:错误:列“user_id”中的空值违反了非空约束

    使用 postgres PostgreSQL 9 4 5 我刚刚迁移了一个sqlite3数据库到一个postgresqlD b 由于某种原因 自从这次迁移以来 当我尝试创建用户时 出现了有关user id 这是主键 正在被提升 以前这不是问
  • 当泛型类型设置为 never 时,泛型条件类型解析为 never

    我需要一个泛型类型 当 该属性的 泛型参数为时 该类型可以从指定类型中排除泛型属性never 为了实现这一点 我使用了Omit和条件类型 例如 当通用参数设置为number它的行为符合预期 但是当泛型类型设置为never 类型解析为neve
  • 更改 eclipse 创建 .eclipse、.p2 和其他文件夹的位置

    我看到 eclipse 在我的用户主文件夹中创建了一些文件夹 例如 eclipse p2 等 我想更改此默认文件夹 我想将所有内容保存在 D 位置 我读了这个在 Linux 中更改 eclipse 文件夹但我不明白我必须更改哪个文件 ini
  • 如何在 SQL 中创建 REPLACE PATTERN?

    我有一个很长的 NVARCHAR 变量 我需要在其中替换一些模式 如下所示 DECLARE data NVARCHAR 200 Hello PAT1 stackoverflow PAT2 world PAT3 我需要全部更换 PAT 带有空
  • 分配给设备内存的 CUDA 全局(如 C 语言)动态数组

    因此 我尝试编写一些利用 Nvidia CUDA 架构的代码 我注意到与设备进行复制确实损害了我的整体性能 因此现在我尝试将大量数据移动到设备上 由于这些数据被用于许多函数 我希望它是全局的 是的 我可以传递指针 但我真的很想知道在这种情况
  • 查找两个字符串共享的所有 n 个字长子串的最大长度

    我正在制作一个Python脚本 它可以找到两个字符串共享的所有n个字长的子字符串的 最长可能 长度 忽略尾随标点符号 给定两个字符串 这是一个示例字符串 这也是一个示例字符串 我希望脚本识别出这些字符串具有 2 个共同单词的序列 this
  • Spring Boot Jackson 日期和时间戳格式

    application yml配置 jackson date format yyyy MM dd timestamp format yyyy MM dd HH mm ss serialization write dates as times
  • 这是从文件中读取行并将其拆分为 Rust 中的单词的正确方法吗?

    编者注 此代码示例来自 Rust 1 0 之前的版本 在语法上不是有效的 Rust 1 0 代码 此代码的更新版本会产生不同的错误 但答案仍然包含有价值的信息 我已经实现了以下方法来以二维数据结构返回文件中的单词 fn read terms
  • 缓慢图像缩放的数学

    我有一个带有漫画书布局的 bmp 图像 目前我的代码是这样工作的 如果我右键单击并按住鼠标按钮 我可以在漫画书页面上的一个框架周围绘制一个选取框类型的框 当我释放按钮时 它将放大到该框架 但它是即时的 我希望它有动画效果 因此 不要将 Pi
  • 如何实现 ContentProvider 来向 Gmail、Facebook、Evernote 等提供图像

    我之前的问题 是否可以通过数据 URL 在 Android 上共享图像 与这个问题相关 我已经弄清楚如何在没有将文件写入外部存储的权限的情况下将图像从我的应用程序共享到另一个应用程序 但是 我仍然遇到一些问题行为 当我尝试从手机 Andro
  • 禁用特殊目录上的某些 php 功能

    我想禁用执行一些 php 函数 例如file put content exec eval在特殊目录上 我可以用disable functions在 php ini 中 但如何定义一个特殊的文件夹 例如c poject public 如果您的