我有一个负载平衡和反向代理的nginx服务器。 现在它抛出另一个nginx,但我很快计划将它放在前面,它将以500req /秒的速度直接从客户端接收TCP连接 我在服务器上遇到了一些麻烦。 我在这里粘贴了我的configuration,而且我确定问题出在ipconntrac和类似的东西上 http://paste.org/pastebin/view/28543 root@load_balancer:/proc/sys/net/ipv4# netstat -an|awk '/tcp/ {print $6}'|sort|uniq -c 67 CLOSING 727 ESTABLISHED 173 FIN_WAIT1 183 FIN_WAIT2 19 LAST_ACK 5 LISTEN 447 SYN_RECV 1 SYN_SENT 27970 TIME_WAIT 它是一个主要安装了nginx(负载均衡器和反向代理)的ubuntu机器。 这当然不是很好。 你能帮我理解发生了什么,我该如何解决这个问题。 这是我的活服务器,我相信现在它的状态很糟糕。 任何文件或命令来解决这个问题,或者我应该做的设置,使之更好,减less等待时间和fin_wait1 / 2会更好。
当我运行下面的脚本 http = require('http'); http.createServer(function (req, res) { res.writeHead(200, {'Content-Type': 'text/plain'}); res.end('Hello World\n'); }).listen(80, "127.0.0.1"); console.log('Server running at http://127.0.0.1:80/'); 通过做: 节点hello.js& curl本地主机 我得到: Hello World 但是当我试图从我的电脑(这是不同于这台服务器的电脑)访问这个页面,它给了我一个“这个网页无法find”的错误。 这对防火墙不是问题,因为我可以在端口80上运行nginx。
我在我自己的服务器上使用nginx,我注意到前几天在我的access.log中有一些奇怪的请求: 77.50.217.37 – – [19/Aug/2011:17:50:50 +0200] "GET http://images.google.com/ HTTP/1.1" 200 151 "-" "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.0; WOW64; .NET CLR 1.1.4322; Media Center PC 5.0; .NET CLR 3.5.30729; .NET CLR 3.0.30729; .NET4.0C; .NET4.0E)" 174.142.123.42 – – [19/Aug/2011:17:51:59 +0200] "GET http://l08.member.ird.yahoo.com/?.src=ym&login=_420_club_chick_&passwd=112211 HTTP/1.0" 200 151 "-" "MobileRunner-J2ME" 65.52.227.217 – – [19/Aug/2011:17:52:30 +0200] "GET http://javaddiction.biz/index.php HTTP/1.1" […]
我有三个不同的目录内的不同的文件。 我想阻止访问这些内的所有文件(也阻止目录列表)。 这样,我会阻止,例如: / A / B /文件 / A / C /文件 / A / d /文件 无论文件扩展名如何 这就是我想要的: location /a/(b|c|d) { allow 1.2.3.4; #IP deny all; return 403; } 但它不工作。
如何在Nginxconfiguration文件中混合使用variables和string? 我有一个如下所示的configuration文件: server { listen 80; server_name example.org; root /var/www/comet; index index.htm; default_type text/plain; location /publish { push_stream_publisher admin; set $push_stream_channel_id $arg_id; } location /sub { push_stream_subscriber long-polling; set $callback "${arg_callback}({\"id\":~id~,\"data\":~text~});"; push_stream_message_template $callback; set $push_stream_channels_path "/channel1"; } } 这是一个推送服务器,它应该推送消息到客户端,取决于他们传递给callback参数。 也就是说,如果用户请求http://example.org/sub?callback=call&id=blah并给他们发送消息,它应该读取call({"id":0, "data":"blah"}); 上面的代码输出文字variables名称 tangrs@~ $ curl "http://example.org/sub?id=woo&callback=call" -D – && echo HTTP/1.1 200 OK Server: nginx/1.0.11 […]
有没有比较nginx和Apache之间交付pythonnetworking应用(Django在我的情况下)的性能(RPS,CPU,内存使用等)的研究? 有人可以用事实帮助我吗? 你会推荐哪种组合?
我想要支持SSL的客户端,缺乏SNI的支持(IE / FF / Safari的赢得XP,Android <2.2和其他)。 我select的解决scheme是让nginx在单独的端口上监听每个证书。 问题是:有没有其他的方法来解决这个问题,还是我做得很好?
我添加了一个用作“cgi-bin”的PHP脚本, 组态: location ~^/cgi-bin/.*\.(cgi|pl|py|rb) { gzip off; fastcgi_pass 127.0.0.1:9000; fastcgi_index cgi-bin.php; fastcgi_param SCRIPT_FILENAME /etc/nginx/cgi-bin.php; fastcgi_param SCRIPT_NAME /cgi-bin/cgi-bin.php; fastcgi_param X_SCRIPT_FILENAME /usr/lib/$fastcgi_script_name; fastcgi_param X_SCRIPT_NAME $fastcgi_script_name; fastcgi_param QUERY_STRING $query_string; fastcgi_param REQUEST_METHOD $request_method; fastcgi_param CONTENT_TYPE $content_type; fastcgi_param CONTENT_LENGTH $content_length; fastcgi_param GATEWAY_INTERFACE CGI/1.1; fastcgi_param SERVER_SOFTWARE nginx; fastcgi_param REQUEST_URI $request_uri; fastcgi_param DOCUMENT_URI $document_uri; fastcgi_param DOCUMENT_ROOT $document_root; fastcgi_param SERVER_PROTOCOL $server_protocol; fastcgi_param REMOTE_ADDR […]
我正在尝试安装SVN服务器,并使用它与我的NGINXnetworking服务器。 我已经试过了 在nginx / sites-enabled / svn中的服务器部分,我已经添加了这个 位置/ var / svn / repos { proxy_pass http://127.0.0.1:81; #include /etc/nginx/proxy.conf; 设置$ dest $ http_destination; 如果($ http_destination〜“^ https://(。+)”){ 设置$ dest http:// $ 1; } proxy_set_header目标$ dest; } 而且我在端口81上运行apache,并且已经在apache上运行了100%的虚拟主机。 现在每当我尝试svn结帐,我得到这个: $ svn co http://svn.mysite.com/myrepo svn:服务器发送意外的返回值(500内部服务器错误),以响应“http://svn.mysite.com/myrepo”的OPTIONS请求 并在错误日志中,我有这个 2012/04/18 07:43:36 [error] 9914#0:* 106重写或内部redirect周期内部redirect到“/index.html”,客户端:93.95.201.250,服务器:mysite.com,请求:“ GET / myrepo HTTP / 1.1“,主机:”svn.mysite.com“ 有谁知道如何在nginx上安装svn服务器? 任何想法是高度赞赏? […]
我有4个nginx驱动的图像服务器在他们自己的子域,用户随机访问。 我决定把它们全部放在HAProxy负载均衡器的后面,以提高可靠性,并从一个地方查看stream量统计信息。 这似乎是一个简单的方法。 不幸的是,这个举动完全失败了,因为负载平衡器的100mbit端口已经完全满足了所有的请求。 我想知道该怎么做 – 我可以得到一个端口升级($$)或返回到随机访问的4个独立的映像服务器。 我想把HAProxy放在每个映像服务器上,如果服务器的nginx服务有问题的话,映像服务器又会路由到另一台映像服务器。 你会怎么做? 我想不必花太多额外的钱。