标签: request

如何配置 nginx 以接受 gzip 请求?

我知道您可以使用nginx HttpGzipModule来 gzip响应。您是否也可以使用它来启用 nginx 处理 gzip 压缩的请求,即具有请求标头的请求:Content-Encoding: gzip

注意:Apache 借助mod_deflatecan 处理带有指令的 gzip 压缩请求SetInputFilter DEFLATE

有关的

http://forum.nginx.org/read.php?11,96472,214266

nginx gzip request

20
推荐指数
1
解决办法
1万
查看次数

我的 DNS 记录只能指向一个 IP 地址。我如何让它到达一个端口?

我对网络管理还很陌生,因此对成功设置 DNS 记录感到非常兴奋。

现在我有点困惑,因为我想要这个网址:

http://www.example.org:8080/fetch/characters/
Run Code Online (Sandbox Code Playgroud)

实际上可以通过这个到达

http://www.example.org/fetch/characters/
Run Code Online (Sandbox Code Playgroud)

因此用户可以在 8080 端口上访问服务,而无需显式设置端口。

我怎样才能做到这一点?我的服务器上需要一些特殊的应用程序吗?或者任何要应用于请求的重定向内容?

networking domain-name-system http request

13
推荐指数
4
解决办法
2万
查看次数

这些奇怪的访问请求是什么?

我在我的电脑上使用 WAMPServer 进行测试和开发。我忘了把它放在网上几天,我注意到一堆甚至不是来自我的 IP 的随机请求。这里有些例子。

77.73.69.127 - - [29/Apr/2012:08:22:20 -0700] "HEAD /manager/html HTTP/1.0" 200 -
58.218.199.250 - - [29/Apr/2012:08:31:54 -0700] "GET http://www.verysurf.com/proxyheader.php HTTP/1.1" 404 213
58.218.199.147 - - [29/Apr/2012:08:35:37 -0700] "GET http://www.travelimgusa.com/ip.php HTTP/1.1" 200 1340
58.218.199.250 - - [29/Apr/2012:10:03:53 -0700] "GET http://61.152.144.145/judge.php HTTP/1.1" 200 1355
58.218.199.227 - - [29/Apr/2012:12:04:07 -0700] "GET http://59.53.91.9/proxy/judge.php HTTP/1.1" 200 1335
58.218.199.250 - - [29/Apr/2012:13:08:29 -0700] "GET http://59.53.91.9/proxy/judge.php HTTP/1.1" 404 213
58.218.199.250 - - [29/Apr/2012:13:08:29 -0700] "GET http://59.53.91.9/proxy/judge.php HTTP/1.1" 200 1335
Run Code Online (Sandbox Code Playgroud)

其中很多来自这个 58.218.199.250 IP。

我注意到的另一个 IP …

web-server request apache-2.2

11
推荐指数
1
解决办法
2万
查看次数

为什么 PHP $_REQUEST 数组是空的?

我在 Ubuntu Hardy 上安装了 nginx 并立即意识到 PHP 脚本正在获取空的请求数组,即无论 GET 还是 POST 都没有通过,甚至 $_REQUEST 数组也是空的。

当我切换回 Apache 时一切正常。

安装nginx版本为0.6.35-0ubuntu1.1~hardy1,PHP为PHP Version 5.2.4-2ubuntu5.10。

可能有什么问题?

php nginx request

8
推荐指数
2
解决办法
2万
查看次数

IIS 的“SendResponse”状态下的请求卡住了很长时间;缓慢的 IIS 7.5/ASP.NET 4.0 Web 应用程序

我有一组非常强大、未充分利用的服务器,它们运行着几个带有 Windows Server 2008 R2 和 IIS 7.5 的虚拟机。

问题:有时请求需要很长时间来处理。用户看到他们的浏览器在旋转,显然没有从 IIS 得到任何响应。

一些统计数据和尝试解决:

  • 服务器(主机和虚拟机)上的负载可以忽略不计。CPU 永远不会超过 5%,有 10+ GB 的可用 RAM,一切都通过 MPIO 连接到快速 SAN。
  • 我每秒收到 30 到 50 个请求,混合了动态和静态内容,只有 GET 和 POST。大多数命中被缓存(80% 命中率),因此结构/SAN/IO 上的负载几乎为零。
  • 在主机和虚拟机上禁用 TCP 卸载,无论是在网络适配器上还是通过禁用 TCP 烟囱
  • Web 应用程序在 ASP.NET 4.0 集成模式下运行。他们不会对第三方 Web 服务等进行长时间的调用。
  • 我已经尝试过 processModel autoConfig,以及将 maxWorkerThreads、maxConnections、maxIOThreads 等设置为非常高的数字,没有任何区别。
  • 数据库查询都在不到 1 秒的时间内完成。我分析了一整天,并没有捕获一个需要更长时间的查询。
  • 我看过大量的性能监视器计数器;ASP.NET 队列和应用程序队列总是空的,似乎没有任何东西排队(考虑到服务器根本没有出汗,这没有任何意义)
  • 我已经确定使用 appcmd 列表请求有时请求在 IIS 的“SendResponse”阶段“卡住”20-60 秒。到目前为止,这是我能找到的唯一可以解释为什么我们看到用户在导航时卡住的原因。请注意,尽管大多数请求都得到了快速处理,但看起来就像来自不同应用程序池的随机请求卡在这里一样。

知道我还能看什么吗?什么会导致请求卡在 IIS 的“SendResponse”阶段?

iis asp.net iis-7.5 response-time request

7
推荐指数
1
解决办法
1万
查看次数

仅针对某些请求单独的 Nginx 访问日志文件

据我所知,Nginx 默认支持 2 个日志文件:(error_log跟踪与 Nginx 服务器本身相关的问题)和access_log(跟踪 Nginx 处理的请求)。虽然可以access_log使用log_format指令控制 的格式,但我一直未能找到一种仅将某些请求记录到单独文件的方法,因此想在 SF 上提出问题作为未来读者的参考:

有没有办法将某些请求记录到与 定义的不同的日志文件中access_log

仅供参考,这个问题背后的原因是我有一个规则,拒绝访问带有 200 的不需要的爬虫(因为 403 会提示他们被阻止),并且从 中过滤这些请求access_log变得更加困难。

ubuntu nginx logging blocking request

7
推荐指数
2
解决办法
1万
查看次数

需要将 HTTP 请求复制到两台服务器

我们正在开发一个新服务器来替换旧服务器,并希望在测试前后并排放置 - 以便我们可以比较最终结果并找出差异。

两个服务(旧的和新的)的输入都是 HTTP 请求(如果不是全部是 GET,但也可能是 POST),我们需要将到达旧服务器的流量复制并发送到新服务器(而不是替代)。当然,我们需要对请求中的主机名和端口进行一些轻微的重写,以避免无限循环。

旧服务器在 Apache (PHP) 上运行,新服务器是 Jetty(Java、Dropwizard)

必须有办法做到这一点,我猜我找不到谷歌搜索的关键字......

http replication testing request apache-2.2

7
推荐指数
1
解决办法
6175
查看次数

这个 HTTP POST 请求有什么问题?

我正在尝试使用 Sulley 模糊测试框架对服务器进行模糊测试。

我在 Wireshark 中观察到以下流。该错误涉及 JSON 解析问题,但是,当我使用 Google Chrome 的 Postman 扩展尝试相同的 HTTP POST 请求时,它成功了。

谁能解释一下这个 HTTP POST 请求可能有什么问题?JSON 似乎有效。

POST /restconf/config HTTP/1.1
Host: 127.0.0.1:8080
Accept: */*
Content-Type: application/yang.data+json
{ "toaster:toaster" : { "toaster:toasterManufacturer" : "Geqq", "toaster:toasterModelNumber" : "asaxc", "toaster:toasterStatus" : "_." }}


HTTP/1.1 400 Bad Request
Server: Apache-Coyote/1.1
Content-Type: */*
Transfer-Encoding: chunked
Date: Sat, 07 Jun 2014 05:26:35 GMT
Connection: close

152
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<errors xmlns="urn:ietf:params:xml:ns:yang:ietf-restconf">
    <error>
        <error-type>protocol</error-type>
        <error-tag>malformed-message</error-tag>
        <error-message>Error parsing input: Root element of Json …
Run Code Online (Sandbox Code Playgroud)

http http-headers request json

7
推荐指数
1
解决办法
2万
查看次数

通过 nginx 获取分块请求

首先是一些背景:我们有一个嵌入式设备,可以将许多小事件上传到 Web 服务器。分块编码用于发布此信息。每个事件都作为一个单独的块发送,因此网络服务器 (node.js) 可以立即对事件做出反应。所有这一切都像一种魅力。

禁用服务器并在服务器上运行 netcat 显示设备发送的内容:

sudo nc -l 8080
POST /embedded_endpoint/ HTTP/1.1
Host: url.com
User-Agent: spot/33-dirty
Transfer-Encoding: chunked
Accept: text/x-events
Content-Type: text/x-events
Cache-Control: no-cache

120
{"some","json message"}
232
{"other","json event"}
232
{"and a lot more","up to 150 messages per second!"}
0
Run Code Online (Sandbox Code Playgroud)

现在我在我的网络服务器上安装了 nginx(版本 1.6.0)。最后我希望它处理 SSL 并且我想处理加速正常的网络流量。

如果我现在使用此服务器配置启用 nginx:

server {
  listen 8080;

  location / {
    proxy_http_version 1.1;
    expires off;
    proxy_buffering off;
    chunked_transfer_encoding on;
    proxy_pass http://localhost:5000;
  }
}
Run Code Online (Sandbox Code Playgroud)

然后我收到这个:

sudo nc -l 8080
POST /embedded_endpoint/ HTTP/1.1
Host: localhost:5000 …
Run Code Online (Sandbox Code Playgroud)

http nginx reverse-proxy request chunked

7
推荐指数
1
解决办法
2万
查看次数

Chrome DevTools - 请求标头大小

有没有办法获得浏览器为每个请求发送到服务器的请求标头的总大小(以字节为单位)?

headers chrome request

7
推荐指数
1
解决办法
5921
查看次数