草庐IT

http-alt

全部标签

Java EE 网络原理之HTTP 响应详解

文章目录1.认识"状态码"(statuscode)2.通过form表单构造HTTP请求3.通过ajax构造HTTP请求1.认识"状态码"(statuscode)表示了这次请求对应的响应,是什么样的状态(成功,失败,其他的情况,对应的原因…)这里的状态码非常多,我们需要了解里面常见的状态码2XX都表示成功200最常见3xx表示重定向请求中访问的是A这样的地址,响应返回了一个重定向报文,告诉你应该要访问B地址很多时候,页面跳转,就可以通过重定向来实现还有的时候,摸个网站,服务器迁移了(IP/域名改变了)就可以给旧的地址挂一个重定向响应,访问旧地址的用户就自定跳转到新的地址重定向的响应报文中,会带有

Server Name Indication(SNI),HTTP/TLS握手过程解析

ServerNameIndication(SNI)是一种TLS扩展,用于在TLS握手过程中传递服务器的域名信息。在未使用SNI之前,客户端在建立TLS连接时只能发送单个IP地址,并且服务器无法知道客户端请求的具体域名。这导致服务器需要使用默认证书进行握手,无法正确选择合适的证书。使用SNI扩展后,客户端在发送ClientHello消息时会包含所请求的服务器的域名。服务器根据该域名来选择对应的证书进行握手,从而实现了多个域名共享同一个IP地址并使用不同证书的能力。SNI对于虚拟主机或者CDN等场景特别有用,因为这些场景下,多个网站可能共享同一个IP地址。通过使用SNI,服务器能够正确地选择与域名

php - 从 HTTP_REFERER 中提取方案和主机

我有$_SERVER['HTTP_REFERER']—假设它是http://example.com/i/like/turtles.html.我需要做什么才能从字符串中获取http://example.com部分,并将其存储在自己的变量中? 最佳答案 在这个例子中,最好的解决方案是使用PHP的parse_urlmethod.这会将URL拆分为一个关联数组。然后,您可以通过将scheme与host相结合来构建您的最终值:if($parts=parse_url("http://example.com/i/like/turtles.html

php - HTTP header 未更改 : yii2

我的服务器使用yii2和apache。当我尝试更改HTTPheader时,没有任何变化。Yii::$app->response->headers->set('Pragma','cache');保留默认的Pragma:no-cache。这在我的Controller或配置文件上。我尝试了直接使用更改header的建议headers("Pragma:cache");这很完美,在Yii2中使用Response类时可能会出现什么问题? 最佳答案 您必须在更改header之前,在响应类中设置format属性。在yii2手册中:FORMAT_RA

php - 如何配置 Apache 让 PHP 处理 OPTIONS HTTP 请求?

关闭。这个问题是off-topic.它目前不接受答案。想改进这个问题吗?Updatethequestion所以它是on-topic用于堆栈溢出。关闭10年前。Improvethisquestion为了为CORS(跨域请求)设置适当的测试套件,我需要能够直接从脚本处理HTTPOPTIONS方法。因此,我有一个简单的PHP脚本来检测OPTIONS方法,并通过输出一些特定的header做出相应的react。PHP端没有问题。如果我使用curl发出GET/POST/HEAD/PUT/等。请求他们都转到脚本,它显然可以很好地处理它们。但是,如果我发出OPTIONS请求,它永远不会到达脚本:Apa

php - 如果 PHP 文件中出现任何错误,则强制 HTTP 状态为 500

首先我使用的是PHP5.4.3。我遇到的问题是,每当PHP文件发生错误(例如解析错误)时,它会在HTML中显示错误消息并且页面的HTTP状态将为200。我想知道的是如何将HTTP状态设置为500如果发生任何错误并且完全不显示任何错误。请记住,我不想为每个页面显示HTTP状态500,而只是为少数几个。 最佳答案 您可以使用寄存器关闭功能。来源:PHP:Customerrorhandler-handlingparse&fatalerrorsini_set('display_errors',0);functionshutdown(){if

php - Laravel guzzle cURL 错误 6 : Could not resolve host: http (see http://curl. haxx.se/libcurl/c/libcurl-errors.html)

在我的开发过程中,我的代码运行正常。当我推送到我的服务器时,它变成了错误。cURL错误6:无法解析主机:http(请参阅http://curl.haxx.se/libcurl/c/libcurl-errors.html)这是我的代码:useGuzzleHttp\Client;try{$client=newClient();$client->request('POST',env('API_DOMAIN').'/v1/user/auth/verified_email',['headers'=>['Authorization'=>'cm9vcGlhLnVzZXIud2ViOkY0RVN3VX

java - 用于在休息端点上传文件的正确 Http 状态代码

我们正在开发一个允许用户在rest端点上传文件的应用程序。有人可以指导以下验证场景失败时发送400错误代码是否正确:1)TheLengthoffilenameexceedspermissiblelimit.2)Filenamecontainsspecialcharacters3)Uploadedfilewasempty4)TheSystemfailedtoreadtheuploadedfilefromdisk.问候,塔伦 最佳答案 文件名的长度超过允许的限制。我认为400不合适,因为在这种情况下请求的语法是正确的。422Unproc

php - Django/Python 中是否有一个类似于 PHP flush() 的函数可以让我向客户端发送部分 HTTP 响应?

根据performancetipfromYahoo:Whenusersrequestapage,itcantakeanywherefrom200to500msforthebackendservertostitchtogethertheHTMLpage.Duringthistime,thebrowserisidleasitwaitsforthedatatoarrive.InPHPyouhavethefunctionflush().ItallowsyoutosendyourpartiallyreadyHTMLresponsetothebrowsersothatthebrowsercanst

php - 是否有用于显示 HTTP header 的 apache_request_headers 替代方案

我目前正在IGB(游戏内浏览器)中为在线MMO开发应用程序。对于第三方开发,浏览器发送带有游戏信息的HTTPheader,例如位置、元素ID、元素类型ID等。这是我一直用来练习的一个小脚本。这个脚本在我的本地服务器上工作,就像在这个问题上发布的其他人一样,它在我的网络服务器上不起作用。我得出的结论是,这是因为Apache没有作为模块安装。我和我的托管服务提供商谈过。他们说除了我需要找到“apache_request_headers”的替代品之外,他们不能告诉我任何事情。我已经查看了该站点上关于该主题的所有先前发布的问题,但我看不出它们是如何组合在一起的。如何使用此处的示例来完成我的最终