🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
**封装协议概要** | 属性 | 支持 | | --- | --- | | 受[allow\_url\_fopen](https://www.php.net/manual/zh/filesystem.configuration.php#ini.allow-url-fopen)限制 | Yes | | 允许读取 | Yes | | 允许写入 | No | | 允许添加 | No | | 允许同时读和写 | N/A | | 支持[stat()](https://www.php.net/manual/zh/function.stat.php) | No | | 支持[unlink()](https://www.php.net/manual/zh/function.unlink.php) | No | | 支持[rename()](https://www.php.net/manual/zh/function.rename.php) | No | | 支持[mkdir()](https://www.php.net/manual/zh/function.mkdir.php) | No | | 支持[rmdir()](https://www.php.net/manual/zh/function.rmdir.php) | No | >[danger]**Note**:[openssl](https://www.php.net/manual/zh/book.openssl.php)扩展启用后才能够支持 HTTPS 协议。 HTTP 连接是只读的;还不支持对一个 HTTP 资源进行写数据或者复制文件。 发送*POST*和*PUT*请求, 可以在[HTTP Contexts](https://www.php.net/manual/zh/context.http.php)的支持下实现。 ``` $postdata = http_build_query( array( 'var1' => 'some content', 'var2' => 'doh' ) ); $opts = array('http' => array( 'method' => 'POST', 'header' => 'Content-type: application/x-www-form-urlencoded', 'content' => $postdata ) ); $context = stream_context_create($opts); $result = file_get_contents('http://example.com/submit.php', false, $context); ``` **HTTP协议是无状态的和Connection: keep-alive的区别** 无状态是指协议对于事务处理没有记忆能力,服务器不知道客户端是什么状态。从另一方面讲,打开一个服务器上的网页和你之前打开这个服务器上的网页之间没有任何联系 HTTP是一个无状态的面向连接的协议,无状态不代表HTTP不能保持TCP连接,更不能代表HTTP使用的是UDP协议(无连接) 从HTTP/1.1起,默认都开启了Keep-Alive,保持连接特性,简单地说,当一个网页打开完成后,客户端和服务器之间用于传输HTTP数据的TCP连接不会关闭,如果客户端再次访问这个服务器上的网页,会继续使用这一条已经建立的连接 Keep-Alive不会永久保持连接,它有一个保持时间,可以在不同的服务器软件(如Apache)中设定这个时间