PHP 通过浏览器访问时执行提前终止
PHP execution terminating early when accessing via browser
我正在努力了解 PHP 并在 Apache/Linux 上设置一个小脚本。
如果我从 shell 中将其称为 php index.php
,它执行得很好。但是如果我通过我的浏览器调用它,它就无法执行。 apache 错误日志中没有信息。
这可能是什么原因造成的?
脚本正在通过 Goutte
和 curl
抓取另一个 url,因此执行大约需要 3 秒。
-- 回复评论--
我省略了代码,因为它很简单,一个 Goutte 客户端,一个请求然后提取 h1
标签。
它在控制台中工作,但通过 Chrome 调用告诉我我缺少 curl - 它是用 apt-get install php-curl
安装的
首先,显示 php 个错误...将其粘贴到页面的最顶部
ini_set('display_errors',1);
ini_set('display_startup_errors',1);
error_reporting(-1);
然后查看,根据情况应该会看到errors/warnings的列表。否则将需要查看您的一些代码才能知道您在处理什么。
如果失败并且仍然给你 nothing/blank 页面..确保一个非常基本的 php 脚本通过网络浏览器在你的服务器上运行。
<?php
echo 'Hello World From PHP';
?>
我现在找到原因了。安装 php5-curl 后我没有重新启动 apache。
我正在努力了解 PHP 并在 Apache/Linux 上设置一个小脚本。
如果我从 shell 中将其称为 php index.php
,它执行得很好。但是如果我通过我的浏览器调用它,它就无法执行。 apache 错误日志中没有信息。
这可能是什么原因造成的?
脚本正在通过 Goutte
和 curl
抓取另一个 url,因此执行大约需要 3 秒。
-- 回复评论--
我省略了代码,因为它很简单,一个 Goutte 客户端,一个请求然后提取 h1
标签。
它在控制台中工作,但通过 Chrome 调用告诉我我缺少 curl - 它是用 apt-get install php-curl
首先,显示 php 个错误...将其粘贴到页面的最顶部
ini_set('display_errors',1);
ini_set('display_startup_errors',1);
error_reporting(-1);
然后查看,根据情况应该会看到errors/warnings的列表。否则将需要查看您的一些代码才能知道您在处理什么。
如果失败并且仍然给你 nothing/blank 页面..确保一个非常基本的 php 脚本通过网络浏览器在你的服务器上运行。
<?php
echo 'Hello World From PHP';
?>
我现在找到原因了。安装 php5-curl 后我没有重新启动 apache。