LAMP中php配置

内容概要:
一.  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   存在错误,可能不在

时间: 2024-11-18 09:57:36

LAMP中php配置的相关文章

lamp 中基本配置常识

// apache// 禁止访问目录// 开启 url重写// 重写定义错误页面// 日志分页// 增加并发连接数// 设置连接连接的时间 // threadsPerChild // 每个进程的线程数 默认 64,最大 1920,所以 100-500为好// maxRequestsPerChild // 每个子进程能够处理的最大请求数, 0 表示无限制 // MPM Multi-processing-Module MPM Multi-processing-module // 开启 gzip压缩传

在CentOS6.4中安装配置LAMP环境的详细步骤

原文:在CentOS6.4中安装配置LAMP环境的详细步骤 本文详细介绍了CentOS6.4系统中安装LAMP服务并对其进行配置的过程,即安装Apache+PHP+Mysql,参照了网上大神的设置,其他Linux发行系统可以参考~ 在本文中部分命令操作需要root权限,输入‘su -’命令后输入密码即可切换root身份. 一.修改设置对安装做准备 1. 防火墙设置 设置/etc/sysconfig/iptables文件允许80端口和3306端口.因为80端口是http协议所使用的端口,如果防火墙

Linux之LAMP架构搭建配置

Linux之LAMP架构搭建配置 LAMP简介 LAMP定义指Linux(操作系统).ApacheHTTP 服务器,MySQL(有时也指MariaDB,数据库软件) 和PHP(有时也是指Perl或Python) 的第一个字母,一般用来建立web应用平台. 对于大流量.大并发量的网站系统架构来说,除了硬件上使用高性能的服务器.负载均衡.CDN 等之外,在软件架构上需要重点关注下面几个环节: 使用高性能的操作系统 (OS) . 高性能的网页服务器 (Web Server) .高性能的数据库(Data

Lamp(Fpm-Php)基本配置

LAMP简介 LAMP(Linux- Apache-MySQL-PHP)网站架构是目前国际流行的Web框架,该框架包括:Linux操作系统,Apache网络服务器,MySQL数据库,Perl.PHP或者Python编程语言,所有组成产品均是开源软件,是国际上成熟的架构框架,很多流行的商业应用都是采取这个架构.LAMP具有通用.跨平台.高性能.低价格的 优势,因此LAMP无论是性能.质量还是价格都是企业搭建网站的首选平台. 二 Mysql 配置 1首先下载mysql-5.5.33包组(mariad

lamp中分离mysql

apahce和php的结合方式有两种 1 php作为模块与apache结合 2 php作为一个独立进程与apache结合,这种方式就需要通过反向代理的方式处理php脚本 lamp中mysql的分离,一般使用的是第二种方式! 参考帖子:http://chenpipi.blog.51cto.com/8563610/1381835  感谢发帖人 装载请标明来源:http://www.cnblogs.com/xiaoxiaoguixia/p/4045396.html  谢谢 支持笔者的汗水 本实验 一

JNDI在Tomcat中的配置

使用JNDI获取连接对象 java:comp/env/jdbc/news 这段为固定写法java:comp/env/ 在Tomcat中的配置 配置在:context.xml文件内 F:\apache-tomcat-7.0.68-windows-x64\apache-tomcat-7.0.68\conf\context.xml ---------mySQL<Resource name="jdbc/news"auth="Container" type="

DICOM医学图像处理:DCMTK在VS2012中的配置

背景: 最近由于项目需要,将原本的开发IDE环境由VS2008升级到了VS2012.本以为编译完成后的DCMTK开源库可以直接从VS2008移植到VS2012.但是通过项目属性添加完包含目录和依赖库后,编译会出现大量的链接错误(大多是跟dcmdata.lib.oflog.lib有关). 解决方法: 重新按照原本的博客前辈柳北风儿(大神目前已经博客转移到网易:http://blog.163.com/[email protected]/),利用CMake工具,选择VS2012本地编译器对DCMTK3

web.xml的配置中&lt;context-param&gt;配置作用

<context-param>的作用: web.xml的配置中<context-param>配置作用1. 启动一个WEB项目的时候,容器(如:Tomcat)会去读它的配置文件web.xml.读两个节点: <listener></listener> 和 <context-param></context-param> 2.紧接着,容器创建一个ServletContext(上下文),这个WEB项目所有部分都将共享这个上下文. 3.容器将&l

Tomcat插件与Jetty插件在MyEclipse中的配置

-Djetty.port=8101 jetty:run tomcat6:run <plugin> <groupId>org.apache.tomcat.maven</groupId> <artifactId>tomcat6-maven-plugin</artifactId> <version>2.2</version> <configuration> <port>8888</port>