我知道OPTIONS调用是正常的,我已经阅读了如何将它们排除在日志之外,但似乎有非常多的,例如。 过去10k次请求中的1525次是OPTION调用,多次在一秒之内大量涌入:
::1 - - [21/Feb/2017:18:22:02 +0000] "OPTIONS * HTTP/1.0" 200 - "-" "Apache/2.4.7 (Ubuntu) OpenSSL/1.0.1f (internal dummy connection)" ::1 - - [21/Feb/2017:18:22:02 +0000] "OPTIONS * HTTP/1.0" 200 - "-" "Apache/2.4.7 (Ubuntu) OpenSSL/1.0.1f (internal dummy connection)" ::1 - - [21/Feb/2017:18:22:02 +0000] "OPTIONS * HTTP/1.0" 200 - "-" "Apache/2.4.7 (Ubuntu) OpenSSL/1.0.1f (internal dummy connection)" ::1 - - [21/Feb/2017:18:22:02 +0000] "OPTIONS * HTTP/1.0" 200 - "-" "Apache/2.4.7 (Ubuntu) OpenSSL/1.0.1f (internal dummy connection)" ::1 - - [21/Feb/2017:18:22:02 +0000] "OPTIONS * HTTP/1.0" 200 - "-" "Apache/2.4.7 (Ubuntu) OpenSSL/1.0.1f (internal dummy connection)" ::1 - - [21/Feb/2017:18:22:02 +0000] "OPTIONS * HTTP/1.0" 200 - "-" "Apache/2.4.7 (Ubuntu) OpenSSL/1.0.1f (internal dummy connection)" ::1 - - [21/Feb/2017:18:22:02 +0000] "OPTIONS * HTTP/1.0" 200 - "-" "Apache/2.4.7 (Ubuntu) OpenSSL/1.0.1f (internal dummy connection)" ::1 - - [21/Feb/2017:18:22:02 +0000] "OPTIONS * HTTP/1.0" 200 - "-" "Apache/2.4.7 (Ubuntu) OpenSSL/1.0.1f (internal dummy connection)" ::1 - - [21/Feb/2017:18:22:02 +0000] "OPTIONS * HTTP/1.0" 200 - "-" "Apache/2.4.7 (Ubuntu) OpenSSL/1.0.1f (internal dummy connection)" ::1 - - [21/Feb/2017:18:22:02 +0000] "OPTIONS * HTTP/1.0" 200 - "-" "Apache/2.4.7 (Ubuntu) OpenSSL/1.0.1f (internal dummy connection)" ::1 - - [21/Feb/2017:18:22:02 +0000] "OPTIONS * HTTP/1.0" 200 - "-" "Apache/2.4.7 (Ubuntu) OpenSSL/1.0.1f (internal dummy connection)" ::1 - - [21/Feb/2017:18:22:02 +0000] "OPTIONS * HTTP/1.0" 200 - "-" "Apache/2.4.7 (Ubuntu) OpenSSL/1.0.1f (internal dummy connection)" ::1 - - [21/Feb/2017:18:22:02 +0000] "OPTIONS * HTTP/1.0" 200 - "-" "Apache/2.4.7 (Ubuntu) OpenSSL/1.0.1f (internal dummy connection)" ::1 - - [21/Feb/2017:18:22:02 +0000] "OPTIONS * HTTP/1.0" 200 - "-" "Apache/2.4.7 (Ubuntu) OpenSSL/1.0.1f (internal dummy connection)"
这是一个WPEngine专用服务器,但它是完全pipe理的,所以我没有root权限。 我只是想确认这些并不是真正对我们所遇到的性能问题的贡献。 我试图用curl来模拟一个调用,就像这样:
curl -i -v -X OPTIONS http://www.oursite.com/*
但是,这给了一个404,由于性能问题需要30秒产生。 有没有办法发送相同的请求,内部连接正在调用,只是为了确保它也没有吃掉资源?
问题第2部分:我明白这些调用是Apache轮询subprocess。 根据apache.org,在某些configuration中,这些调用用于引发问题,他们说如果是这样的话,你可以redirect它们:
https://wiki.apache.org/httpd/InternalDummyConnection
在2.2.6及更早版本中,在某些configuration中,这些请求可能会造成一个重量级的dynamic网页,并在服务器上造成不必要的负载。 你可以通过使用mod_rewrite来避免这种情况,当用特定的用户代理或IP地址访问时,使用redirect进行响应。
我知道这是2.4.7,但我正在考虑testingredirect这些只是为了看看它是否提高了性能。 假设它起作用,那么这样做的影响会是什么?