首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

php安全配置记录和常见错误梳理

通常部署完php环境后会进行一些安全设置,除了熟悉各种php漏洞外,还可以通过配置php.ini来加固PHP的运行环境,PHP官方也曾经多次修改php.ini的默认设置。...下面对php.ini中一些安全相关参数的配置进行说明 register_globals 当register_globals = ON时,PHP不知道变量从何而来,也容易出现一些变量覆盖的问题。...sql.safe_mode = Off PHP安全模式是否应该开启的争议一直比较大。一方面,它会影响很多函数;另一方面,它又不停地被黑客们绕过,因此很难取舍。...文件上传的其他注意事项 : 在上传大文件时,你会有上传速度慢的感觉,当超过一定的时间,会报脚本执行超过 30秒的错误,这是因为在php.ini配置文件中 max_execution_time 配置选项在作怪...安全起见应当取消掉.user.ini文件的写权限。

2K70

PHP安全配置

一、屏蔽PHP错误信息 在配置文件中,设置display_errors=On,开启了PHP错误显示,在PHP程序遇到错误时,会暴露PHP文件和系统路径,从而容易被威胁,我们需要设置: ;默认开启 ;Default...之后的版本,官方已经将该配置去除: register_blobals=Off 四、PHP的访问限制 1.文件系统限制 配置 open_basedir 来限制PHP访问文件系统的位置: ;限定PHP的访问目录为...开启完全模式 PHP安全模式是为视图解决共享服务器(shared-server)的安全问题而设立的,开启之后,会对系统操作、文件、权限设置等方法产生影响,减少被黑客植入webshell所带来的安全问题...,system,chroot,scandir…… 参考:《PHP建议禁用的危险函数》 五、PHP中的Cookie安全 1.Cookie 的 HttpOnly HttpOnly 可以让 Cookie 在浏览器中不可见...性能的同时,也增加了安全性,使用 php -m 命令可以查看当前 PHP 所加载的模块

1.4K10
您找到你想要的搜索结果了吗?
是的
没有找到

PHP安全配置

一、屏蔽PHP错误信息 在配置文件中,设置display_errors=On,开启了PHP错误显示,在PHP程序遇到错误时,会暴露PHP文件和系统路径,从而容易被威胁,我们需要设置: ;默认开启 ;Default...在配置文件中找到 expose_php,将值设置为 Off expose_php=Off 三、防止全局变量覆盖 在全局变量功能开启的情况下,传递过来的数据会被直接注册为全局变量使用,需要关闭全局变量覆盖...,在PHP5.6之后的版本,官方已经将该配置去除: register_blobals=Off 四、PHP的访问限制 1.文件系统限制 配置 open_basedir 来限制PHP访问文件系统的位置: ;...PHP安全模式是为视图解决共享服务器(shared-server)的安全问题而设立的,开启之后,会对系统操作、文件、权限设置等方法产生影响,减少被黑客植入webshell所带来的安全问题,从而在一定程度上避免一些未知的攻击...本文链接:https://www.xy586.top/11480.html 转载请注明文章来源:行云博客 » PHP安全配置

2.3K21

PHP安全核心配置

PHP配置文件指令多达数百项,为了节省篇幅,这里不对每个指令进行说明,只列出会影响PHP脚本安全配置列表以及核心配置选项。 详细参阅官方文档,关于php.ini的配置选项列表。...file=http://test1/index.php,就能看到页面回显了ok,远程读取并执行了test1的index.php,这个配置选项对于PHP安全的影响不可小觑,在使用的时候必须慎之又慎。...该选项设置是否将错误信息作为输出的一部分打印到屏幕,或者对用户隐藏。...设置为Off时,将不会对用户显示错误信息。 error_reporting用于设置错误报告级别。该参数可以是表示二进制位字段的任意整数或者常量名称。...在设置display_errors=On时,还可以配置error_reporting,用来配置错误显示的级别。

14520

PHP安全配置小技巧

打开php.ini,安全加固配置方式如下,关闭注册全局变量设置: register_globals = Off ? 注:默认php配置文件该选项是关闭的。 PHP 5.3.*与5.4....打开php.ini,安全加固配置方式如下,打开magic_quotes_gpc设置: magic_quotes_gpc = On ? 注:PHP5.3.*与5.4.*中已被移除。 6....关闭错误消息显示:php在没有连接到数据库或者其他情况下会有提示错误,一般错误信息中会包含php脚本当前的路径信息或者查询的SQL语句等信息,这类信息提供给黑客后,是不安全的,所以服务器建议禁止错误提示...打开php.ini,安全加固配置方式如下,关闭错误信息显示设置: display_errors = Off ?...打开php.ini,安全加固配置方式如下,打开错误日志记录并设置错误日志存放路径: log_errors = Onerror_log = /usr/local/apache2/logs/php_error.log

1.7K40

PHP安全编码规范之安全配置

因为配置不当引发的安全问题是屡见不鲜的,通过一系列的安全配置,可以很好的解决一些安全隐患,从而为系统增加安全系数。但是在开发过程中,因为需求的改变和编程的习惯可能会更改一些配置同时带来安全隐患。...在这种情况下,需要更加的了解配置带来的安全隐患,也就是漏洞的产生原理。同时需要了解在打开一些配置安全隐患之后,该如何通过一些其他手段解决安全问题是我们重点需要讨论的问题。...0×03 配置不显示错误信息,保存错误信息到本地 黑客在渗透过程中,因为错误信息的暴露,给黑客提供了很大的利用便利条件,所以在开发过程中,我们可以为了编程的方便,需要开启错误信息提示到浏览器,但是在程序上线后...,我们一定要关闭错误信息提示,这里提供一种一举两得的方式,关闭浏览器显示错误提示,记录错误提示到本地日志中。...expose_php =off 为开启 0×11 display_startup_errors 这个可以跟display_errors做比较,区别是这个是php程序启动时产生的错误,和display_errors

1.5K20

pcc —— PHP 安全配置检测工具

背景 在 PHP 安全测试中最单调乏味的任务之一就是检查不安全PHP 配置项。...作为一名 PHP 安全海报的继承者,我们创建了一个脚本用来帮助系统管理员如同安全专家一样尽可能快速且全面地评估 php.ini 和相关主题的状态。...在下文中,该脚本被称作“PHP 安全配置项检查器”,或者 pcc。...https://github.com/sektioneins/pcc 概念 一个便于分发的单文件 有对每个安全相关的 ini 条目的简单测试 包含一些其他测试 - 但不太复杂 兼容 PHP >= 5.4...保障措施 大多数情况下,最好是自己来关注与安全性相关的问题比如PHP配置。脚本已实现下列保障措施: mtime检查:脚本在非CLI环境中只能工作两天。

82610

提升PHP安全:8个必须修改的PHP默认配置

下面通过修改默认的配置文件加强PHP安全策略!...** 在默认设置中,php会向浏览器输出错误消息,在应用程序的开发过程中,这个默认设置是最合理的配置,然而,它也可以向用户泄漏一些安全信息,例如安装路径和用户名。...在已经开发完成的网站中,最好禁用错误消息然后把错误消息输出到日志文件中。...… 显然,我们不希望用户可以直接获取你网站服务器的PHP版本,幸运的是,在php.ini中有个开关可以禁用这个功能: 复制代码 代码如下: expose_php = Off 0x07**:安全模式配置*...* 在默认的情况下,php可以配置安全模式,在这种模式下,Apache禁止访问文件、环境变量和二进制程序,在安全模式下,存在的最大问题就是只有文件的所有者才能访问这写PHP文件,如果有很多开发者共同开发这个程序

69910

PHP错误实例详解错误级别配置项设置错误级别手动触发PHP错误自定义错误处理器脚本即将关闭前执行的函数

错误级别 在php.ini中可查看PHP的各个错误级别 ; Error Level Constants: ; E_ALL - All errors and warnings (includes...php 配置php.ini与错误相关的配置项: 选项 描述 error_reporting 设置错误报告的级别 display_errors 是否显示错误 log_errors 是否将错误记录到日志中...是否忽略重复信息的来源 error_reporting = E_ALL & ~ E_NOTICE # 表示除了NOTICE之外的所有错误 设置错误级别 可通过以下三种方法修改 修改php.ini...; // Fatal error,此行不会运行 手动触发PHP错误 除了PHP解释器能触发错误外,开发人员也可以通过trigger_error函数触发 header('content-type:text...; // 不会运行 自定义错误处理器 我们可以通过set_error_handler函数接管php错误处理方法 header('content-type:text/html;charset=utf-8

1.3K20

PHP与500错误

display_errors选项的配置需要通过ini_set来实现,PHP文档中关于display_errors的配置表明该值为字符串类型,实际使用中数字和布尔类型也可以打开或关闭该配置。...打开值 关闭值 'On'、1、'1'、true 'Off'、0、'0'、false error_reporting配置 display_errors控制了PHP脚本发生错误时是否显示错误详情以及是否返回错误状态码...需要注意的是,PHP本身是有错误日志的(error_log和log_errors两个配置项目),若发生错误PHP会将改错误写入错误日志中,而哪些错误需要被写入是受error_reporting项的控制的...PHP自带错误日志 PHP本身已经带了错误日志的记录,可以在php.ini中将log_errors项设置为On,并配合error_log配置项来指定错误日志的存放路径。...错误日志输出错误信息级别的函数或配置,而display_errors则是控制是否向浏览器输出错误和告警信息。

7.5K40

PHP错误与异常

图片 这篇文章基于PHP7 从PHP7起,PHP对异常做了较大改变,引入了Error,调整了继承结构Stringable这是个interface,只要能转字符串的类都应该实现这个接口Throwable能被...throw抛出的最基本的接口,但是PHP不允许直接实现这个接口Exception所有用户级异常的基类,想要自定义异常就可以继承这个LogicException代码逻辑错误,就是代码写的不对BadFunctionCallException...相当于编译期间的DomainExceptionUnderflowException空对象上的无效操作,eg: 删除元素UnexpectedValueException值不在可接受集合ErrorException错误异常...Error内部错误的基类TypeError类型不匹配ArgumentCountError参数数量不匹配ArithmeticError数学运算错误DivisionByZeroError除零错误AssertionError...断言失败错误CompileError编译错误ParseError解析PHP代码错误ValueError传值错误UnhandledMatchErrormatch未被匹配到任何分支FiberError在纤程上执行无效操作

2.2K10

php】关闭PHP错误提示方法,防止错误信息泄露

关闭PHP错误提示方法,防止错误信息泄露 我们都知道,php代码有时候可能因为我们的一些操作失误,导致报错,然后会暴露错误信息。 为了防止错误信息泄露,需要关闭php错误提示。...方法一:修改PHP配置文件php.ini 首先打开配置文件php.ini 然后查找 ‘display_errors’,将display_errors = On 修改为 display_errors =...(Off为关闭错误提示,On为打开错误提示) 注意:如果你已经把PHP.ini文件复制到windows目录下,那么必须同时把c:windows/php.ini里的display_errors = On修改为...方法二:ini_set()函数 PHP ini_set用来设置php.ini的值,在函数执行的时候生效,脚本结束后,设置失效。无需打开php.ini文件,就能修改配置,对于虚拟空间来说,很方便。...(E_ALL^E_NOTICE^E_WARNING); 可以关闭所有notice 和 warning 级别的错误

1.9K50

Apache配置+php配置

一、apache配置 首先下载apache安装包,下载地址:http://httpd.apache.org/download.cgi 我的是win7系统,所以下载windows的安装包,点击我圈出的地方...ApacheHaus 根据自己的电脑选择64位还是32的安装包,进行下载 然后解压文件,我解压到E:\Apache\Apache24 然后打开文件夹找到conf文件夹下的httpd.conf文件,打开进行配置...然后将 PHP 的根目录下的 php.ini-development 复制一份并改名为 php.ini,作为PHP配置文件 4.打开php.ini,修改配置信息: 说明:ini文件的注释是分号...(英文分号),所以取消注释就删除分号; ${phphome}是PHP的根目录,即:E:\PHP配置文件中写成绝对路径。...,要慢慢仔细找找 6.修改 Apache24\conf\ 目录下的 httpd.conf 配置 Apache ,让 Apache 和 PHP 协同工作 修改默认的索引,以支持 PHP 修改前: #

4.2K10
领券