草庐IT

apache-http

全部标签

用于 HTTP keep-alive 的 PHP Guzzle 客户端

我正在尝试连接到保持连接事件并发送分块数据的API。我有一个使用fsockopen的解决方案,它写入和读取流并使用while(!$stream->eof())。我想知道是否可以使用Guzzle获得相同的结果?我看到了Async方法,但有人可以告诉我如何等待流吗? 最佳答案 Guzzle6+支持PRS-7,它将响应主体定义为流。您可以同步或异步请求数据,这无关紧要。设置streamoption也很重要为您的要求:$client=newClient(/*...*/);$response=$client->get('http://some

php - 如何在 HTTP 请求和 cli 类对象之间进行对话

我有一个正在运行的应用程序,它列出了HTTP请求。每个请求都传递到单个页面,其中实例化了一个框架对象$app,这负责路由/Controller/模型等。现在我有另一个类,它的对象是通过实例化的。一个CLI脚本可以调用它$cliApp现在的问题是我如何让两个对象相互交谈。每次有新请求时,$app都会被实例化。但是$cliApp只在脚本运行时实例化一次。此脚本通过PHPReactEventloop的$loop对象循环运行.CliApp正在运行websockets。所以基本上我希望通过http和套接字进行通信。http接口(interface)。附言:现在我有一个使用消息队列的解决方案,例如

php - Http认证,取消循环

Hello{$_SERVER['PHP_AUTH_USER']}.";echo"Youentered{$_SERVER['PHP_AUTH_PW']}asyourpassword.";}?>我正在使用这段代码,它只要求用户名和密码进行身份验证,但问题是当用户单击取消按钮时,它应该一次又一次地给出身份验证提示,直到没有提供正确的用户名和密码。 最佳答案 假设您的客户都拥有JavaScript,可以实现一个简单的修复。代替echo'TexttosendifuserhitsCancelbutton';:echo'window.locati

PHP mail()/sendmail 自 Apache 2.4 PHP7 升级后无法正常工作

自从升级到PHP7后,我服务器上使用PHP邮件功能的每个脚本都不再有效:​​-(同时,我也从Apache2.2升级到2.4,我感觉这可能是问题所在。我的php.ini文件包含:sendmail_path=/usr/sbin/sendmail-t-I如果我从命令行尝试,Sendmail确实会发送电子邮件,所以我知道它可以正常工作。我在exim_paniclog中发现了一个我认为可能与Apache和权限相关的错误:unabletosetgid=995oruid=0(euid=0):forcingreal=effective我希望有人可能遇到过这个问题,并且可能会为我提供一些启示。提前致谢!

php - 无法使用 Composer 下载和安装 Laravel 5。错误 : HTTP request failed

我无法使用composer1.2.0(最新版本)下载lavarvel安装程序收到的错误:无法打开流:HTTP请求失败!我用谷歌搜索,但找不到解决此问题的答案。如果可能,有人请尝试运行这个命令composerglobalrequire"laravel/installer"来检查它是否有效?我认为指向packaglist的链接不再有效,但我不确定。C:\wamp\www\st>composerself-update-vvvReading./composer.jsonLoadingconfigfile./composer.jsonCheckedCAfileC:\Users\Louis\App

php - 使用 Scotch Box/Vagrant 让 PHP 7 在 Apache 而不是 5.6 上运行

我已经安装了ScotchBox并将PHP版本更新到PHP7。但是,似乎我已经更新了PHPCLI,而不是Apache使用的PHP版本。我在SO上看到其他答案说在Apachehttpd.conf中有一行内容是loadModulephp5或其他内容。我已经检查过了,在我的httpd.conf中它根本没有说明任何关于loadModule的内容。我确实看到PHP7安装在/cli/的路径中,而PHP5.6安装在/apache2/或的路径中apache在里面。简而言之,如何让PHP7在安装在ScotchBox上的Apache上运行? 最佳答案 我

php - Apache 虚拟主机总是重定向到/dashboard

我遇到了一个看似常见的问题,但我发现的任何解决方案似乎都不适用于我的情况。我正在尝试设置一个虚拟主机,以便我可以通过转到“mytestdomain.local”来访问我的Laravel安装的公共(public)文件,但是当我在谷歌浏览器中输入这个地址时,我总是被重定向到xampp仪表板在这个地址“https://mytestdomain.local/dashboard/”。我已经在以下xampp目录中安装了Laravel:c:/xampp/htdocs/mytestdomain_uk。我将“C:\xampp\apache\conf\extra\httpd-vhosts.conf”设置如

php - 使用实时 HTTP header

在网站上,我在表单中输入一些参数,单击搜索,然后得到一个页面,其中包含一条消息“正在检索您的结果”。搜索完成后,我得到另一个显示结果的页面。我正在尝试以编程方式重新创建它,我使用实时HTTPheader来了解背后发生的事情,即url、表单变量等。但是,我只获得了显示“正在检索结果”页面上发生的事情的信息。LiveHTTPHeader没有给我包含最终结果的页面的信息。我该怎么做才能获得最后一点信息(即url、表单变量等) 最佳答案 我使用CharlesHTTPProxy满足我所有的HTTP故障排除需求。它有很多选项,适用于任何浏览器。

php - PHP/Apache 中的输出缓冲 block 如何工作?

假设我正在从PHP向浏览器回显随机数据。随机数据总量约为XGb,回显以YKbblock的形式完成。ob_start()未被使用。在PHP和Apache缓冲区已满后回显调用是否会阻塞(客户端无法以与生成数据相同的速度使用数据)?如果是这样,PHP和Apache缓冲区的大小是多少?我理解的对吗,过程:PHPecho正在将字节发送到php输出缓冲区,直到它已满。在那之后echo开始阻塞,直到一些缓冲区被发送到Apache并因此被清除PHP正在从它的输出缓冲区发送数据,直到Apache缓冲区已满。之后Apache停止从PHP接收数据并等待,直到部分缓冲区被发送到客户端并被清除。附言如果您对我要

使用表单的 PHP HTTP 基本身份验证

如何使用HTTP基本身份验证并让用户以HTML表单提交他们的用户名和密码并使用HTTP基本身份验证进行身份验证。我听说InternetExplorer不再支持使用http://user:password@website.com没有更多,所以我不知道解决这个问题的最佳方法。可以使用PHP、javascript和HTML。我不想使用PERL,也不喜欢大的JavaScript库。如果你不认为HTTPBasicAuth。是最好的方法,请推荐一些简单易行的方法。它只会是5-6人的登录站点。无需将其复杂化。 最佳答案 jQuery库具有ajax