[PHP] swoole在daemonize模式下,chdir失效问题
2017-03-03 22:50
399 查看
swoole version: 1.9.6
其实跟swoole的版本无关,因为原代码体系,fpm模式下,在启动的时候,是使用 chdir 函数改变了当前目录的,而其它代码在做类的自动加载的时候,都是写的相对地址,而不是绝对地址。
问题就来了,swoole是多进程的,在daemonize模式下,chdir改变当前目录,在其它进程下是不生效的,所以有时候,不使用daemonize没问题,而使用daemonize会莫名的出现找不到类的情况。
解决方法是,在几个启动的回调里面同时也改变一下目录
相关文章:http://hongtoushizi.iteye.com/blog/2224764
Have fun with swoole!
其实跟swoole的版本无关,因为原代码体系,fpm模式下,在启动的时候,是使用 chdir 函数改变了当前目录的,而其它代码在做类的自动加载的时候,都是写的相对地址,而不是绝对地址。
问题就来了,swoole是多进程的,在daemonize模式下,chdir改变当前目录,在其它进程下是不生效的,所以有时候,不使用daemonize没问题,而使用daemonize会莫名的出现找不到类的情况。
解决方法是,在几个启动的回调里面同时也改变一下目录
$serv->on( 'workStart', function ($server, $fd) { chdir(ROOT_PATH); //假设前面已经设定了这个ROOT_PATH的常量 //其它代码 } ); $serv->on( 'tast', function ($server, $fd) { chdir(ROOT_PATH); //假设前面已经设定了这个ROOT_PATH的常量 //其它代码 } );
相关文章:http://hongtoushizi.iteye.com/blog/2224764
Have fun with swoole!
相关文章推荐
- 只有一个公网IP也可以使用LVS的DR模式!(外带php session粘滞问题解决)
- 经典j2ee设计模式Double-Checked Locking失效问题
- PHP中使用asort进行中文排序失效的问题处理
- UPUPW_NGINX_PHP5.3.29_1504.7z的问题 REQUEST 数字的时候,有时候会失效
- php path_info 在nginx中失效问题
- 关于php session自动失效的问题
- 解决 php-fpm php://stdout 命令行 打印 失效问题
- linux下给php安装pdo_mysql和zlib以及测试模式的选择(禅道安装过程中遇到的问题)
- swoole里面phpwebim的依赖composer生成问题
- linux下给php安装pdo_mysql和zlib以及测试模式的选择(禅道安装过程中遇到的问题)
- php中文汉字替换与模式匹配的问题!!请大家必看!
- php虚拟主机session失效/无法跨页传递问题解决
- [nginx] 关于解决nginx的php fastcgi模式PATH_INFO问题
- PHP中使用asort进行中文排序失效的问题处理
- 解决Ubuntu在laptop-mode(电池供电模式)下USB鼠标失效问题
- php初学者的问题-编码-设计模式-面向对象-算法-框架
- Ubuntu在laptop-mode(用电池的模式)下USB鼠标失效问题
- PHP-FPM模式下可怕的 MongoDB-PHP-Driver 连接池无节制连接问题
- 解决Nginx环境下PHP的flush失效问题
- php session 跨页失效问题