修改php.ini配置PHP扩展模块教程
2014-02-14 16:16
399 查看
首先来看下一些php.ini的常用优化:
用记事本或者其他编辑打开php.ini查找。
找到后在“=”后面添加(这里都是通常禁止在php执行的函数)
上面内容请放到一行。因为保持帖子的整体效果作了换行
一般后台只用加:
查找:
这是错误显示功能,如果是做调试的话用on,其他改成off。
查找:
如果是off的话改成on
查找:
如果是on的话改成off
查找:
后面增加
这里是限制php可以访问的目录,后面一定要加上/,否则如果有/wwwabcd这个目录也会被访问得到
多个目录用英文:分隔。如果不添加/tmp/的话discuz!的上传功能就无法使用
注意:以上内容在php.ini的开头会有相关设置的提示,请按 ctrl+f 查找下一个,不要直接在上面修改
gd库的支持
将前面的分号“;”去掉
输出缓存允许你甚至在输出正文内容之后发送 header(标头,包括cookies)行 其代价是输出层减慢一点点速度。你可以使用输出缓存在运行时打开输出缓存, 或者在这里将指示设为 on 而使得所有文件的输出缓存打开。
你可以重定向你的脚本的所有输出到一个函数,那样做可能对处理或以日志记录它有用。例如若你将这个output_handler 设为ob_gzhandler, 则输出会被透明地为支持gzip或deflate编码的浏览器压缩。
设一个输出处理器自动地打开输出缓冲。
找到这个
修改为
注意,不要设置数值,只需要设置为on即可。
相应的,你还可以在你的discuz后台,打开gzip支持,也是优化的一项内容。
有些朋友为了安全,还启用了php的安全模式,这个也是一办法。
一些朋友经常反映无法上传较大的文件或者后台备份数据经常超时
这个是每个脚本运行的最长时间,可以自己修改加长,单位秒。
这是每个脚本可以消耗的时间,单位也是秒。
这个是脚本运行最大消耗的内存,也可以自己加大
上载文件的最大许可大小 ,自己改吧,一些图片论坛需要这个更大的值。
php报错显示php has encountered an access violation at xxxxxx解决办法
很多人说,是php版本的问题,其实不然,可以从四个地方来看这个问题
是否zend所需的dll文件所在目录给的权限不够,必须有读取和运行的权限
是否使用的2003,设置过应用池,比如池中限制了什么什么,调整一下再试试看,是否好了,呵呵
php.ini有两个地方没有设置,而且一些程序必须用到的
将
该行的注释符,使该行在php.ini文档中起作用。upload_tmp_dir是用来定义上传文件存放的临时路径,在这里你还可以给其定义一个绝对路径。
例如:
当然,此时你的d:upload目录必须有读写权限。
这里我设置为
出现这样的错误语句一般是因为你的php.ini中关于session.save_path一项没有设置好,解决的方法是将session.save_path和session.cookie_path 设置置为:
然后在c:目录下建立一个temp目录
用记事本或者其他编辑打开php.ini查找。
disable_functions =
找到后在“=”后面添加(这里都是通常禁止在php执行的函数)
disable_functions=exec,system,passthru,error_log,ini_alter,dl,openlog,syslog,readlink,symlink,link,leak,fsockopen,proc_open,popepassthru,chroot,scandir,chgrp,chown,escapeshellcmd,escapeshellarg,shell_exec,proc_get_status,popen
上面内容请放到一行。因为保持帖子的整体效果作了换行
一般后台只用加:
disable_functions =system,passthru,shell_exec,com,exec,shell
查找:
display_errors
这是错误显示功能,如果是做调试的话用on,其他改成off。
查找:
magic_quotes_gpc
如果是off的话改成on
查找:
register_globals
如果是on的话改成off
查找:
open_basedir
后面增加
/www/:/tmp/
这里是限制php可以访问的目录,后面一定要加上/,否则如果有/wwwabcd这个目录也会被访问得到
多个目录用英文:分隔。如果不添加/tmp/的话discuz!的上传功能就无法使用
注意:以上内容在php.ini的开头会有相关设置的提示,请按 ctrl+f 查找下一个,不要直接在上面修改
gd库的支持
;extension=php_gd2.dll
将前面的分号“;”去掉
output_buffering = off
输出缓存允许你甚至在输出正文内容之后发送 header(标头,包括cookies)行 其代价是输出层减慢一点点速度。你可以使用输出缓存在运行时打开输出缓存, 或者在这里将指示设为 on 而使得所有文件的输出缓存打开。
output_handler = ;
你可以重定向你的脚本的所有输出到一个函数,那样做可能对处理或以日志记录它有用。例如若你将这个output_handler 设为ob_gzhandler, 则输出会被透明地为支持gzip或deflate编码的浏览器压缩。
设一个输出处理器自动地打开输出缓冲。
找到这个
output_buffering = off
修改为
output_buffering = on
注意,不要设置数值,只需要设置为on即可。
相应的,你还可以在你的discuz后台,打开gzip支持,也是优化的一项内容。
有些朋友为了安全,还启用了php的安全模式,这个也是一办法。
一些朋友经常反映无法上传较大的文件或者后台备份数据经常超时
max_execution_time = 30 ;
这个是每个脚本运行的最长时间,可以自己修改加长,单位秒。
max_input_time = 60 ;
这是每个脚本可以消耗的时间,单位也是秒。
memory_limit = 8m ;
这个是脚本运行最大消耗的内存,也可以自己加大
upload_max_filesize = 2m ;
上载文件的最大许可大小 ,自己改吧,一些图片论坛需要这个更大的值。
php报错显示php has encountered an access violation at xxxxxx解决办法
很多人说,是php版本的问题,其实不然,可以从四个地方来看这个问题
是否zend所需的dll文件所在目录给的权限不够,必须有读取和运行的权限
是否使用的2003,设置过应用池,比如池中限制了什么什么,调整一下再试试看,是否好了,呵呵
php.ini有两个地方没有设置,而且一些程序必须用到的
将
;upload_tmp_dir
该行的注释符,使该行在php.ini文档中起作用。upload_tmp_dir是用来定义上传文件存放的临时路径,在这里你还可以给其定义一个绝对路径。
例如:
upload_tmp_dir = d:upload
当然,此时你的d:upload目录必须有读写权限。
这里我设置为
upload_tmp_dir = c:temp
出现这样的错误语句一般是因为你的php.ini中关于session.save_path一项没有设置好,解决的方法是将session.save_path和session.cookie_path 设置置为:
session.save_path = c:temp session.cookie_path = c:temp(我没有修改这项,我发现修改后的验证码不能用)
然后在c:目录下建立一个temp目录
相关文章推荐
- 一个关于if else容易迷惑的问题
- PHP5.2.*防止Hash冲突拒绝服务攻击的Patch
- 深入理解PHP之匿名函数
- Linux 与 Windows 对UNICODE 的处理方式
- Ubuntu12.04下QQ完美走起啊!走起啊!有木有啊!
- 解決Linux下Android开发真机调试设备不被识别问题
- 运维入门
- 运维提升
- Linux 自检和 SystemTap
- Ubuntu Linux使用体验
- JSP/PHP基于Ajax的分页功能实现
- c语言实现hashmap(转载)
- Linux 信号signal处理机制
- linux下mysql添加用户
- Scientific Linux 5.5 图形安装教程
- 关于PHP通过PDO用中文条件查询MySQL的问题。
- 什么是设计模式
- 基于 Linux 集群环境上 GPFS 的问题诊断