V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
nonozone
V2EX  ›  问与答

求助FastCGI sent in stderr: "PHP message: PHP Fatal error: Call to undefined function curl_setopt()

  •  
  •   nonozone · 2012-11-04 21:44:21 +08:00 · 27458 次点击
    这是一个创建于 4197 天前的主题,其中的信息可能已经有所发展或是发生改变。
    网站首页显示不完整,看日志提示有这么一条,请问这个是什么原因呢?LNMP...
    14 条回复    1970-01-01 08:00:00 +08:00
    Shared
        1
    Shared  
       2012-11-04 21:47:16 +08:00
    你机器上的 PHP 没有打开 curl 扩展
    nonozone
        2
    nonozone  
    OP
       2012-11-04 22:11:42 +08:00
    @Shared nginx要怎么打开啊...貌似这个我已经安装了。
    Shared
        3
    Shared  
       2012-11-05 01:43:06 +08:00
    @nonozone 检查 php.ini 文件里的设置,和 nginx 无关
    nonozone
        4
    nonozone  
    OP
       2012-11-05 09:20:48 +08:00
    @Shared 又好像不是这个问题啊,我弄了一个wordpress,固定链接都可以使用了,但是这个网站就是首页显示不完整。
    revlis7
        5
    revlis7  
       2012-11-05 10:56:51 +08:00
    从报错信息来看,应该是缺少了curl扩展,可以用phpinfo()看一下是不是确实少了这个扩展,如果没有的话需要在php.ini里添加一下,并确认curl.so或者.dll文件能正常工作就可以了。

    至于wp的问题是不是因为这个就不得而知了。
    nonozone
        6
    nonozone  
    OP
       2012-11-05 11:35:26 +08:00
    @revlis7 phpinfo显示这样应该是没问题吧。
    nonozone
        7
    nonozone  
    OP
       2012-11-05 11:36:28 +08:00
    在网上搜索的时候,说short_open_tag这个参数要设置on,不过貌似on了,一样会出错。
    nonozone
        8
    nonozone  
    OP
       2012-11-05 11:47:30 +08:00
    完整的错误日志是:

    2012/11/05 11:43:20 [error] 29929#0: *118 FastCGI sent in stderr: "PHP message: PHP Parse error: syntax error, unexpected T_ENDIF in /xxx/www/xxx.com/pu blic_html/_____.phtml on line 152" while reading response header from upstream, client: xx.xx.xx.xx, server: www.xxx.com, request: "GET / HTTP/1.0", upstream: "fastcgi://127.0.0.1:9000", host: "www.xxx.com", referrer: "http://www.xxx.com/customer/account/login/"
    chenz
        9
    chenz  
       2012-11-05 12:48:18 +08:00
    1. PHP话题应发在PHP节点
    2. 你所发的"完整错误日志"和主题里的错误没有任何关系。一个是语法错误,一个是模块未安装错误
    3. 这都是很基本的手册和Google问题,我很惊讶在v2ex能看到质量如此低的话题。RTFM
    nonozone
        10
    nonozone  
    OP
       2012-11-05 13:31:28 +08:00
    LS我简直真的无语了...
    可以放到php节点,问与答节点不能发,那问与答可以放什么内容?
    我要是能找到主题的错误还需要到这里问么,只是在log里看到大量类似的错误日志,才拿过来问问是不是这个问题。
    你怎么就不知道我没Google了...

    说了半天,你一个问题也没帮别人回答过,就知道数落人家哪里哪里不对,你到底干点正事儿啊!

    @chenz
    chenz
        11
    chenz  
       2012-11-05 15:31:09 +08:00
    1. PHP Parse error: syntax error, unexpected T_ENDIF in /xxx/www/xxx.com/pu blic_html/_____.phtml

    你只需要在运行前做一下语法检查,就能解决问题了。这是一个再基本不过的PHP错误了。PHP程序,在运行前要做一次php -l检查,是一个基本常识。而且字面上已经说得清清楚楚 - "syntax error"

    如果这个文件是别的程序动态生成,那另当别论

    2. Fatal error: Call to undefined function

    这依然是一个很基本的PHP错误,虽然语法检查不出来。从字面上就可以理解是这个函数不存在,而函数不存在,有两个可能的原因,一个是你写错函数名,第二是这个模块没安装或者没启用。当然很显然这里是第二个原因。

    3. 去搜索提问的艺术这篇文章

    4. 其实,我是对v2ex平均讨论质量期待太高了。我应该能想到,一个稍微有水准的人,是不会在v2ex这样的非专业论坛提问问题的。其实大多数稍微有点水准的人,甚至不会在任何中文社区提问技术问题。我之所以不再v2ex回答过任何技术问题,是因为v2ex大多数技术问题不值得讨论。v2ex给我的最大帮助,是能了解到国内一些比较酷的应用或者物件。我来v2ex的主要目的并非讨论技术问题。如果我有比较酷的内容分享,我甚至会发帖分享我所知道的东西。但是我绝对不会在v2ex问技术问题。当然,我这里的技术问题,是特指软件开发的技术问题


    针对主题再说一次,Read The Fucking Manual

    如果Manual和Google无法解决,Read the fucking code And show your code/configuration.

    @nonozone
    nonozone
        12
    nonozone  
    OP
       2012-11-05 15:38:43 +08:00
    @chenz 这个回答我就比较喜欢...
    solf
        13
    solf  
       2012-11-05 15:44:51 +08:00
    @chenz 我很赞同你的观点,特别是第四条,一直将这里当作是分享平台, a way to explore

    不过觉得你的语气有点冲了,这样下去怕最后又成战贴。当然,这可能是我个人观点问题,勿怪。

    --------------------------------------------
    @nonozone 其实 @chenz 说得对,你贴的2个错误确实不相关,而他上面其实都解析清楚
    nonozone
        14
    nonozone  
    OP
       2012-11-05 18:09:09 +08:00
    最后终于知道问题出在哪里了。由于网站数据太大,一起打包了30多个网站,不仅导致服务器无法访问,并且耗时太久,偷懒直接用scp命令传输过去,可能之间就存在文件不完整的情况。

    今天重新小批量重新打包转移,就没有上述问题了。

    还是谢谢各位了,半罐子有时候确实学费比较贵。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   1931 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 37ms · UTC 00:18 · PVG 08:18 · LAX 17:18 · JFK 20:18
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.