Chinaunix首页 | 论坛 | 博客
  • 博客访问: 156329
  • 博文数量: 36
  • 博客积分: 372
  • 博客等级: 一等列兵
  • 技术积分: 282
  • 用 户 组: 普通用户
  • 注册时间: 2012-03-28 17:04
文章分类

全部博文(36)

文章存档

2012年(36)

分类: 系统运维

2012-12-25 08:41:39

转自:


首先来看下一些php.ini的常用优化:

用记事本或者其他编辑打开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目录

阅读(2379) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~