内容概要:
一.  php配置
1. 配置disable_function
disable_functions = eval,assert,popen,passthru,escapeshellarg,escapeshellcmd,passthru,exec,system,chroot,scandir,chgrp,chown,escapeshellcmd,escapeshellarg,shell_exec,proc_get_status,ini_alter,ini_restore,dl,pfsockopen,openlog,syslog,readlink,symlink,leak,popepassthru,stream_socket_server,popen,proc_open,proc_close

这些是php中不安全的函数,一般情况下是禁用,使之disable

2. 配置error_log,error_log经常用于分析页面白页(500,没有任何显示,可能是语法问题)
display_errors= Off
log_errors= On
error_log=/path/to/logfile
error_reporting = E_ALL | E_STRICT

注意:display_errors 一般情况是Off ,如果是打开On,报错日志(包括那个哪个目录下的php源码存在)都回显示在浏览器中,这样很不安全。Off之后

可以定义错误日志log_errors = On ,在服务器上然后定义错误日志路径及日志错误日志级别。(错误日志有时无法写入,记得把日志权限改为apache的damon用户,让其有写权限)

3.错误日志级别:

; E_ALL             所有错误和警告(除E_STRICT外)
; E_ERROR           致命的错误。脚本的执行被暂停。
; E_RECOVERABLE_ERROR    大多数的致命错误。
; E_WARNING         非致命的运行时错误,只是警告,脚本的执行不会停止。
; E_PARSE            编译时解析错误,解析错误应该只由分析器生成。
; E_NOTICE          脚本运行时产生的提醒(往往是我们写的脚本里面的一些bug,比如某个变量没有定义),这个错误不会导致任务中断。
; E_STRICT          脚本运行时产生的提醒信息,会包含一些php抛出的让我们要如何修改的建议信息。
; E_CORE_ERROR      在php启动后发生的致命性错误
; E_CORE_WARNING    在php启动后发生的非致命性错误,也就是警告信息
; E_COMPILE_ERROR    php编译时产生的致命性错误
; E_COMPILE_WARNING  php编译时产生的警告信息
; E_USER_ERROR       用户生成的错误
; E_USER_WARNING    用户生成的警告
; E_USER_NOTICE      用户生成的提醒
& 表示并且
~ 表示非
| 表示或者
比如: error_reporting  =  E_ALL & ~E_NOTICE  表示错误级别为E_ALL 并且除了E_NOTICE

3. 配置open_basedir

open_basedir, if set, limits all file operations to the defined directory  and below.  This directive makes most sense if used in a per-directory or per-virtualhost web server configuration file.

open_basedir 目录用来限制对定义的文件进行操作,他可以放在php的配置文件中,也可以放在虚拟主机配置文件中。

一般用于限制虚拟主机,使虚拟主机与虚拟之间彼此独立,这样更安全。

php.ini: open_basedir = /dir1/:/dir2
httpd.conf: php_admin_value open_basedir "/dir1/:/dir2/"  #

错误日志:

限制目录open_basedir= /data/1   存在错误,可能不在

LAMP中php配置的更多相关文章

  1. lamp 中基本配置常识

    // apache// 禁止访问目录// 开启 url重写// 重写定义错误页面// 日志分页// 增加并发连接数// 设置连接连接的时间 // threadsPerChild // 每个进程的线程数 ...

  2. windows下配置lamp环境(3)---配置PHP5.4

    下面配置php Php文件夹里有两个php.ini-*文件,随便修改一个,去掉后缀,变成php.ini (如图) 打开php.ini ,添加php扩展目录723行左右(其实放哪都无所谓,只不过php. ...

  3. windows下配置lamp环境(2)---配置Apache服务器2.2.25

    配置Apache 配置Apache时,先要找到安装目录中的主配置文httpd.conf,使用文本编辑器打开,最好不要使用windows自带的编辑器,可以使用NotePad++, vim,或者subli ...

  4. linux下lamp.sh一键配置lamp环境流程

    linux下lamp.sh一键配置lamp环境流程 一.总结 一句话总结: 2.将网站从github上clone到/data/www/网站域名/ 3.更改网站目录权限:chown -R apache: ...

  5. Linux在fstab中因配置错误导致服务器主机无法重启的问题应该如何解决

    fstab中配置错误导致系统无法启动的恢复方案 1制造错误的案例发生,在/etc/fstab中配置如下内容 结尾的倒数第一个为1表示进行磁盘检查,为0表示不进行磁盘检查,倒数第二个为0表示不备份,为1 ...

  6. Eclipse中安装配置Tomcat

    Eclipse(4.4.x及以上)中安装配置Tomcat 以下配置说明全部针对免安装版本 基于tomcat的安装目录和运行目录是可以不同的,本文都会进行说明 首先简单介绍一下tomcat的目录结构,一 ...

  7. Hadoop在eclipse中的配置

    在安装完linux下的hadoop框架,实现完所现有的wordCount程序,能够完美输出结果之后,我们开始来搭建在window下的eclipse的环境,进行相关程序的编写. 在网上有很多未编译版本, ...

  8. Tesseract API在VS 2013中的配置以及调用

    [Tesseract]Tesseract API在VS 2013中的配置以及调用 时间:2016-05-31 20:35:19      阅读:127      评论:0      收藏:0      ...

  9. Mybatis中SqlMapper配置的扩展与应用(2)

    三.子表删除兼容问题 这个问题,使用SQL配置函数不太好处理,而且就算使用SQL配置函数,也不够直观,有点自动生成SQL的意味,太Hibernate了(不过要是可以兼收Hibernate和Mybati ...

随机推荐

  1. CF 1103B Game with modulo

    题目 $a, x$ 是正整数.显然有 \begin{aligned} x \ge 2x \pmod{a} \implies a \le 2x \end{aligned} 若 $x \le a$ 则 \ ...

  2. [poj] 3090 Visible Lattice Points

    原题 欧拉函数 我们发现,对于每一个斜率来说,这条直线上的点,只有gcd(x,y)=1时可行,所以求欧拉函数的前缀和.2*f[n]+1即为答案. #include<cstdio> #def ...

  3. Topcoder SRM 602 div1题解

    打卡- Easy(250pts): 题目大意:rating2200及以上和2200以下的颜色是不一样的(我就是属于那个颜色比较菜的),有个人初始rating为X,然后每一场比赛他的rating如果增加 ...

  4. PriorityQueue详解(一)

    在Java SE 5.0中,引入了一些新的Collection API,PriorityQueue就是其中的一个.今天由于机缘巧合,花了一个小时看了一下这个类的内部实现,代码很有点意思,所以写下来跟大 ...

  5. [ CodeVS冲杯之路 ] P1011

    不充钱,你怎么AC? 题目:http://codevs.cn/problem/1011/ 一开始以为是道数学题,列出了一个公式 后面验证,发现只能推出第一次,后面的还需要迭代,推翻这个公式 又去瞟了一 ...

  6. 《Linux命令行与shell脚本编程大全 第3版》创建实用的脚本---11

    以下为阅读<Linux命令行与shell脚本编程大全 第3版>的读书笔记,为了方便记录,特地与书的内容保持同步,特意做成一节一次随笔,特记录如下:

  7. Appium+python自动化22-Appium Desktop【转载】

    Appium Desktop 原滋原味的官方文档 Appium Desktop是一款用于Mac.Windows和Linux的开源应用,它提供了Appium自动化服务器在一个漂亮灵活的UI中的强大功能. ...

  8. Centos7下zabbix部署(四)定义报警媒介-邮件

    1.安装发送邮件工具mailx [root@zabbix-server ~]# yum install mailx -y 2.自定义使用163邮箱为默认发件人(避免被当作垃圾邮件) set from= ...

  9. Jekyll搭建个人博客

    网上也有HEXO 搭建的博客,有人说使用 HEXO 在多台电脑上发布博客,操作起来并不是那么方便,所以使用Jekyll 来搭建. Jekyll配置 1,安装ruby环境 Windows系统使用Ruby ...

  10. 【转载】SQL server connection KeepAlive

    1.什么是SQL server TCP连接的keep Alive? 简单说,keep alive 是SQL server在建立每一个TCP 连接的时候,指定了TCP 协议的keepaliveinter ...