Articles of http

几个请求/秒,但扼杀Apache和秒杀CPU

我们有两个运行HAProxy的负载均衡器,它们向应用服务器提供请求。 我们最近一直在从脚本小孩那里获取stream量的高峰,这些脚本小子对我们的基础设施进行漏洞检查 这只是一堆不存在的文件的GET请求(/ phpMyAdmin)。 他们只会导致我们的应用程序服务器15-20个请求/秒,但CPU负载高达100%。 有趣的是,我们通常有10-15个请求/秒,我们没有问题。 所以,我对这些请求是如何造成如此大的损害感到困惑。 负载平衡器高兴地通过stream量,但应用程序服务器扼杀和负载和CPU使用率飞涨。 我们希望得到一些build议 – 我们应该开始看Apacheconfiguration,还是可以有一些独特的关于这些请求,我们可以在负载平衡器级别阻止? 我发现奇怪的是,我们的正常请求以几乎相同的速率进来,但是它们不会导致额外的CPU负载。 任何帮助表示赞赏。

http代理如何确定单个端口的httpsstream量?

如果一个代理接收到这个tcp数据包,那么这个目的ip地址和端口就是这个代理的ip地址和端口。 在这种情况下,我想代理可以解决目标的唯一方法是通过路由源IP地址/端口或通过http头中的主机字段。 它是否正确? 在Fiddler和Charles http代理中,我注意到该工具通过一个可以指定的端口接受http和https连接。 这些工具做了什么来分辨这两种连接的区别?

可以ping ec2服务器(ubuntu / apache),但不会从http请求获得响应

背景: 操作系统:Ubuntu的 Web服务器:apache2 什么工作: 我可以ping服务器的弹性IP(并接收响应) 我可以SSH入服务器 什么不行: 我无法从服务器获得任何types的http响应 预期的行为: 当我去http://ec2-XXX-XX-XXX-XXX.compute-1.amazonaws.com/ ,它会服务我的网页,或者至less给我一个404,我可以debugging 实际行为: 当我去http://ec2-XXX-XX-XXX-XXX.compute-1.amazonaws.com/时 ,它说“糟糕!Google Chrome无法连接到ec2-XXX-XX-XXX-XXX.compute- 1.amazonaws.com”。 它甚至不给我一个404。 咆哮: 很明显,服务器在那里,因为我可以ssh到这个确切的地址,我可以ping通确切的IP,并得到一个回应。 但是,当我在我的Web浏览器中确切的地址,就好像它从来没有把它送到服务器。 或者就好像亚马逊不会让HTTP请求一样,但是在我的安全组中,我清楚地指定了来自所有源的HTTP请求都被允许通过。 Apache肯定是在运行,我的文档根目录已经正确设置,我的错误和访问日志不给我任何东西。 在Amazon和服务器之间是否有任何types的login,或者在请求到达服务器的请求和Apache接收到的请求之间,这些请求会指定为什么它返回“找不到”而不是404。是否可以使我的Apache日志更加冗长? 提前致谢! 我花了几个小时在这….

一个类似Sourceforge的镜像系统在我的服务器中使用?

我想在一个站点内build立一个下载区域(FTP或HTTP,并不重要),我想至less有一些散落在世界各地的镜子。 我希望下载链接为用户透明地select镜像。 它可能是随机的,循环的,或者它可能有一些智能的IP接近逻辑。 是否有一些很好的包(例如Python或PHP库),我可以使用它?

VPS服务器操作系统差异

我有两台VPS服务器。 其中一个运行Linux,另一个运行Windows。 我已经将相同的file upload到他们的public_html文件夹,并可以通过每个静态IP地址在我的浏览器中看到它们,如http://178.63.165.178/getorder/file.xml和http://178.63.165.178/getorder/file.xml 。 另一方面有一个名为SMSPrinter的设备,configuration为使用GPRS读取这些XML文件,并需要静态IP地址到达目标服务器。 不幸的是,这个设备只能从windows服务器读取文件,无法到达Linux服务器上的文件。 本手册中没有提供Windows服务器或特定操作系统的提示! 我也已经把Linux服务器上的文件权限设置为777,没有任何限制。 可能是我们问题的原因是什么? 谢谢。

Nginx的413错误没有得到浏览器

我觉得我的情况非常相似, 为什么一个413不能立即刷新到客户端呢? ,缩进的地方是我的情况不同 我有我的本地开发服务器返回状态413超大file upload和客户正在接收这些立即 – 根据我的要求。 我的错误和访问日志都显示这一点,但它需要大约6秒,所以我不知道我的浏览器是否正在等待发送图像? 然后收到它的413错误? 我的远程服务器与Nginx的版本相同,configuration也差不多,但413永远不会到达浏览器。 指示数据过大的错误将立即显示在错误日志中,并且访问日志中不显示任何内容。 浏览器继续发送数据,并且在30秒之后,413状态出现在访问日志中(并且再次出现在错误日志中),并且浏览器由于内部“连接重置”错误而超时。 这是我的情况与这个问题不同的地方。 我仍然得到(客户端旨在发​​送太大的身体:)在access.log中error.log和(POST / path / to / my / imageupload HTTP / 1.1 413),但我也得到一个没有状态的回应(在Chrome中状态失败或0) 当我curl相同的请求,我得到413错误响应。 哪个比赛在这个职位上回应了mgorven。 我看到mgorven说,在从服务器接收任何东西之前,浏览器等待发送所有内容。 这就是为什么它不接受413? 任何想法如何解决它? 如果我设置keepalive_requests为0会破坏什么? 像上传大图片(小于5MB)? 那么如何处理nginx 413错误而不显示nginx 413错误页面呢? 同样沿着同一个话题,当我尝试通过JavaScript上传时发生上述情况。 我的应用程序的一部分有一个Rails的上传,当它上传一个大文件,它只是丢弃连接。 但是我的本地盒子显示了nginx 413错误页面。 任何想法如何解决这个问题,只发送一个JSON回应?

如何使用Cloud Flare完全IPv6,一个兼容ipv4和ipv6的Web服务器?

我已经在同时拥有ipv4和ipv6地址的机器上安装了Nginx服务器。 目前,它连接到CloudFlare,只使用ipv4。 我有1个IPV4地址分配给Web服务器。 现在我想要的是,完全成为ipv6。 然后连接到CloudFlare。 所以,如果一个ipv4用户来到这个站点,CloudFlare会确保他可以访问我的ipv6 only站点! 这是否发生? 在我的服务器上实现ipv6的最佳方式是什么? 只有ipv6或两个版本? 如何实现它(在CloudFlare的DNS和在Nginx的configuration文件)。 请帮忙!

netstat显示多次deploy.akamaitechnologies.com连接到我的服务器

很多时候,在我的服务器上运行netstat后,我发现其中一个属于deploy.akamaitechnologies.com的IP地址连接到我的服务器上,有人对我的服务器上发生了什么有一个想法吗? 这是一个案例: TCP xxx.xxx.xxx.xxx:49189 a184-25-107-184:http ESTABLISHED 什么可以服务的端口:49189当源机运行http?

第一次访问时网站页面加载非常缓慢

我有一个生产网站服务器,使网站在第一次加载时非常缓慢。 所有连接第一次正常和快速。 在下面的屏幕中,您可以看到我为服务器中的随机站点运行的第一个testing: 在这里你可以看到第二次请求的结果: 正如你所看到的,同一页面的第二次加载有很大的改变。 这是页面加载时间图: 我的问题是,我不知道什么关于红色的Linux服务器,也不知道我可以从哪里开始。 有人可以帮我吗? 我喜欢长时间地找出解决scheme“等待”。 我知道我的问题是非常小的,但你总是可以问我给你关于服务器的信息。

lighttpd的mod_access会导致所有POST请求发生403错误

我在我的debian服务器上发现,运行lighttpd模块mod_access导致服务器响应403所有POST请求。 这是非常奇怪的,因为我有两台服务器,一台正在运行,另一台服务器一直在返回这些403 。 他们运行lighttpd和php相同的configuration。 我的lighttpd.conf是: https : //gist.github.com/4269500 还有一个自定义的conf: https : //gist.github.com/4269508 我已经打开服务器的请求,直到我得到这个修复,工作的服务器是http://mercury.isitup.org/和失败的是http://venus.isitup.org/ 。 在解决这个问题之后, mod_access解决了这个问题,我把所有的lighttpdconfiguration文件 ( docs )都加了进去。 禁用每行我发现没有帮助,导致我认为这可能是一些默认行为(或错误?)… 有没有人遇到过,或知道什么configuration的价值,我错了? 版本 Debian: Debian GNU/Linux 6.0.6 (squeeze) Lighttpd: lighttpd/1.4.28 (ssl) PHP: PHP 5.3.19-1~dotdeb.0 with Suhosin-Patch (cli) Lighttpd论坛上的交叉post http://redmine.lighttpd.net/boards/2/topics/5431 parsing度 使用lighttpd -p -f /etc/lighttpd/lighttpd.conf并查找仍旧加载的旧值。 原来没有syslinks,而是完整的文件,而不是启用conf。