PHP优化
-------------------------------------
尽量选择php5.4及以上的版本,里面很多优化参数已经移除了相比以前版本
1.引擎解析优化和加速
1)eaccelerator php解析cache加速
2)Xcache加速
3)opcache加速
4)使用tmpfs作为缓存文件目录
1
2
|
mount -t tmpfs tmpfs /dev/shm -o size=2048m mount -t tmpfs /dev/shm/ /tmp/eaccelerator/ |
2.一些php的安全配置,vim /usr/local/php/lib/php.ini
1)关闭PHP版本信息在http头中的显示信息
expose_php = Off
2)关闭日志
display_errors = Off
log_errors = On
error_log = /usr/local/nginx/log/php_error.log
chown root /usr/local/nginx/log/php_error.log
#建议将php错误日志放到和nginx日志一起的目录
#注意需要apache用户可以写日志到文件的权限
3)
max_execution_time = 30
#每个脚本允许运行的最长时间
max_input_time = 60
#等待输入数据的时间有多长(秒)
memory_limit = 32M
#在被取消前,一个脚本可以使用多少内存,需要在编译时使用--enable_memory_limit
upload_max_filesize = 2M
#上载文件的最大允许大小,可能图片论坛需要修改这个最大值
allow_url_fopen = Off
#有安全漏洞,但是又需要使用它来远程读取文件
3.php-fpm配置文件优化
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
|
cat > /usr/local/php/etc/php-fpm .conf <<EOF [global] pid = /usr/local/php/logs/php-fpm .pid error_log = /usr/local/php/logs/php-fpm .log log_level = error rlimit_files = 32768 events.mechanism = epoll [www] user = nginx group = nginx listen = 127.0.0.1:9000 listen.owner = nginx listen.group = nginx pm = dynamic pm.max_children = 1024 pm.start_servers = 16 pm.min_spare_servers = 5 pm.max_spare_servers = 20 pm.max_requests = 2048 slowlog = /usr/local/php/logs/ $pool.log.slow request_slowlog_timeout = 10 EOF |