日期:2014-05-16  浏览次数:20569 次

php 启动报错的解决办法
php 启动时报错的情况,如下:
[root@abc lnmp]# service php-fpm start 
Starting php-fpm eAccelerator: Could not allocate 67108864 bytes, the maximum size the kernel allows is 33554432 bytes. Lower the amount of memory request or increase the limit in /proc/sys/kernel/shmmax. 
[04-Dec-2013 19:06:44] NOTICE: PHP message: PHP Warning: [eAccelerator] Can not create shared memory area in Unknown on line 0 www.jbxue.com
[04-Dec-2013 19:06:44] NOTICE: PHP message: PHP Fatal error: Unable to start eAccelerator module in Unknown on line 0 
failed 


解决方法:
[root@abc lnmp]# vi /etc/sysctl.conf 
# Kernel sysctl configuration file for Red Hat Linux 
# 
# For binary values, 0 is disabled, 1 is enabled. See sysctl(8) and 
# sysctl.conf(5) for more details. 
# Controls IP packet forwarding 
net.ipv4.ip_forward = 0 
# Controls source route verification 
net.ipv4.conf.default.rp_filter = 1 
# Do not accept source routing 
net.ipv4.conf.default.accept_source_route = 0 
# Controls the System Request debugging functionality of the kernel 
kernel.sysrq = 0 
# Controls whether core dumps will append the PID to the core filename. 
# Useful for debugging multi-threaded applications. 
kernel.core_uses_pid = 1 
# Controls the use of TCP syncookies 
net.ipv4.tcp_syncookies = 1 
# Disable netfilter on bridges. 
net.bridge.bridge-nf-call-ip6tables = 0 
net.bridge.bridge-nf-call-iptables = 0 
net.bridge.bridge-nf-call-arptables = 0 
fs.file-max=65535 
net.ipv4.tcp_max_syn_backlog = 65536 
net.core.netdev_max_backlog = 32768 
net.core.somaxconn = 32768 
net.core.wmem_default = 8388608 
net.core.rmem_default = 8388608 
net.core.rmem_max = 16777216 
net.core.wmem_max = 16777216 
net.ipv4.tcp_timestamps = 0 
net.ipv4.tcp_synack_retries = 2 
net.ipv4.tcp_syn_retries = 2 
net.ipv4.tcp_tw_recycle = 1 
#net.ipv4.tcp_tw_len = 1 
net.ipv4.tcp_tw_reuse = 1 
net.ipv4.tcp_mem = 94500000 915000000 927000000 
net.ipv4.tcp_max_orphans = 3276800 
# TIME_OUT后等待时间 
#net.ipv4.tcp_fin_timeout = 30 
#net.ipv4.tcp_keepalive_time = 120 
net.ipv4.ip_local_port_range = 1024 65535 
kernel.shmmax = 128000000 


加上最后一句话 kernel.shmmax = 128000000
然后应用sysctl -p
[root@abc lnmp]# service php-fpm start 
Starting php-fpm done 
[root@abc lnmp]# /usr/bin/memcachedstart