php fpm升级,PHP5.9 升级到PHP7 遇到的一些坑(php-fpm 图解)

apache_event_php-fpm 示意图:

741bf0b0ef8a9ec6f9ad7354e6e10f00.png

nginx-php-fpm示意图:

e7f1d7f641bb9d9618346644ebe72f9a.pngWorker-Master-Server

d5bd85e200b0891348ea000bcf424354.png

TCP-Nginx_PHP

2ae77102bcb3cc3747744f948e7532d8.png

Nginx-FastCGI

1e272208990d5b6cb9027b0801a741c2.png

1、使用$_GET 获取所有参数,php7 会多出一个参数:_url ,例如访问的地址http://127.0.0.1/Home/String/index2?a=12&b=19

此时的的参数_url = "Home/String/index2"

2、在PHP7 中为一个Error:PHP Notice: Undefined index: HTTP_USER_AGENT in line 2

php5.9则为一个notice2017/03/27 10:58:09 [error] 5286#0: *851 FastCGI sent in stderr: "PHP message: PHP Notice: Undefined index: HTTP_USER_AGENT in /home/UserAgent.php on line 9" while reading response header from upstream

解决:http://stackoverflow.com/questions/16330496/php-notice-undefined-index-http-user-agent-in-line-2if(!empty($_SERVER['HTTP_USER_AGENT'])){

$user_agent = $_SERVER['HTTP_USER_AGENT'];

} else {

$user_agent = '';

}

3、NULL 合并运算符 ,PHP7才正式加入了??这个运算符:// 获取user参数的值(如果为空,则用'nobody')

$username = $_GET['user'] ?? 'nobody';

// 等价于:

$username = isset($_GET['user']) ? $_GET['user'] : 'nobody';

4、php-fpm没有启动的后果2017/03/31 20:56:19 [crit] 19288#0: *1 connect() to unix:/var/run/php7.0.9-fpm.sock failed (2: No such file or directory) while connecting to upstream, client: 127.0.0.1,

server: www.phalcon3.com, request: "GET /index.php HTTP/1.1", upstream: "fastcgi://unix:/var/run/php7.0.9-fpm.sock:", host: "127.0.0.1"tinywan@tinywan:/usr/local/nginx/logs$ ll /var/run/php7.0.9-fpm.soc

ls: 无法访问'/var/run/php7.0.9-fpm.sock': 没有那个文件或目录

搞了半天,原来php-fmp 没有启动,贵在坚持,相信自己.

相关推荐:《PHP教程》

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值