无法设置php_value'soap.wsdl_cache_dir'

Arm*_* P. 4 php apache soap fastcgi

我有运行Apache 2.2.4和PHP-FPM(FastCGI Process Manager)的VPS服务器(CentOS 6.5).查看php-fpm error_log我发现每个spawn php-fpm子进程都出错了:

WARNING: [pool www] child 24086 said into stderr: "ERROR: Unable to set php_value 'soap.wsdl_cache_dir'"
Run Code Online (Sandbox Code Playgroud)

我找不到关于此警告谷歌搜索的任何信息.有人知道这意味着什么以及如何摆脱这种警告?

更新1:

apache的fastcgi.conf:

User apache                                                                                                                             
Group apache                                                                                                                            

LoadModule fastcgi_module modules/mod_fastcgi.so                                                                                        

<IfModule mod_fastcgi.c>                                                                                                                
    DirectoryIndex index.php index.html index.shtml index.cgi                                                                       
    AddHandler php5-fcgi .php                                                                                                       
    # For monitoring status with e.g. Munin                                                                                         
    <LocationMatch "/(ping|status)">                                                                                                
            SetHandler php5-fcgi-virt                                                                                               
            Action php5-fcgi-virt /php5-fcgi virtual                                                                                
    </LocationMatch>                                                                                                                

    Action php5-fcgi /php5-fcgi                                                                                                     
    Alias /php5-fcgi /usr/lib/cgi-bin/php5-fcgi                                                                                     
    FastCgiExternalServer /usr/lib/cgi-bin/php5-fcgi -socket /tmp/php5-fpm.sock -pass-header Authorization                          
</IfModule>

# global FastCgiConfig can be overridden by FastCgiServer options in vhost config                                                       
FastCgiConfig -idle-timeout 20 -maxClassProcesses 1
Run Code Online (Sandbox Code Playgroud)

这是PHP的php-fpm.conf和池配置:

pid = /var/run/php-fpm/php-fpm.pid
daemonize = yes

; Start a new pool named 'www'.                                                                                                         
[www]

listen = /tmp/php5-fpm.sock 
group = apache
pm = dynamic
pm.max_children = 8
pm.start_servers = 2
pm.min_spare_servers = 1
pm.max_spare_servers = 3
pm.status_path = /status
ping.path = /ping
catch_workers_output = yes
php_admin_value[error_log] = /var/log/php-fpm/www-error.log                                                                             
php_admin_flag[log_errors] = on
php_value[session.save_handler] = files                                                                                                 
php_value[session.save_path]    = /var/lib/php/session                                                                                  
php_value[soap.wsdl_cache_dir]  = /var/lib/php/wsdlcache
Run Code Online (Sandbox Code Playgroud)

其他一切都是违约的.

更新2:

/var/lib/php/wsdlcache按照建议手动创建目录并将权限设置为770和所有者之后root:apache,我希望我不会再次看到错误,但不幸的是在重新启动php-fpm进程后错误再次出现,这变得非常奇怪.

PS也许这个问题更适合于serverfault,但通常在stackoverflow上有更多的php和apache配置专家.

Arm*_* P. 16

我讨厌如此琐碎的解决方案.最后我自己找到了问题和解决方案.留在这里以供其他有史以来的人参考.

FastCGI配置文件是在首次配置FastCGI时从互联网上获取的,因为我之前没有使用它.显示FastCGI配置的教程包含该行php_value[soap.wsdl_cache_dir] = /var/lib/php/wsdlcache.我真的很感兴趣什么是SOAP,因为我没有在我在这台服务器上运行的网站上使用它,这种好奇心为我带来了解决方案.实际上我不需要SOAP,只需删除该行就可以解决我想的问题,但我决定将其留在那里,发现我只需要安装即可php-soap.

yum install php-soap
Run Code Online (Sandbox Code Playgroud)

对于RHEL/CentOS

重新启动后,php-fpm我没有收到重生fpm进程的错误.