Questions tagged «nginx»

Nginx(“ eNgine x”)是一种轻量级的高性能HTTP服务器,反向代理,TCP流代理和邮件代理,在类似BSD的许可证下发布。

2
如何在nginx中进行速率限制,但包括/排除某些IP地址?
我可以用来limit_req对服务器的所有请求进行速率限制。 但是,我想删除某些IP地址(即白名单)的速率限制,而对某些其他IP地址(即某些我希望低至1r / s的IP)使用不同的速率限制。 我尝试使用条件语句(例如if ( $remote_addr = "1.2.3.4" ) {}),但这似乎仅适用于重写规则,而不适用于速率限制规则。

1
反向代理-删除子目录
在不久的将来,我将拥有3台nginx服务器。一种是其他两种SSL的反向代理。因此,例如,我去: https://www.mysitename.com/site1 此示例中的其他两个服务器是site1和site2。我在代理服务器上安装了SSL证书,并且想使用反向代理服务器(因为全部3个都在内部网络上,所以不需要SSL)。出于测试目的,我让nginx在443上监听SSL /反向代理,在端口8081是用于site1的Rails应用程序,而8082是用于site2。 我有这个... server { listen 443; server_name mysitename.com; ssl on; ssl_certificate ssl/mysitename.com.crt; ssl_certificate_key ssl/mysitename.com.key; keepalive_timeout 60; location /site1 { proxy_pass http://localhost:8081; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_redirect http:// https://; } location /site2 { proxy_pass http://localhost:8082; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For …
27 nginx 

3
如何制作冗余负载均衡器?
我知道负载平衡器的目的是平衡服务器之间的负载并跟踪实例运行状况等。但是,如果负载平衡器本身发生故障怎么办?您如何设置冗余负载均衡器?(负载均衡负载均衡器?) 我可以看到DNS运行状况检查如何有用,但是显然存在主要的延迟问题,不是吗? 假设您没有使用任何第三方服务,例如AWS ELB或任何类似的东西。如果您仅使用说Nginx怎么办?

5
如何禁用Nginx日志记录?
我在配置文件中有以下内容 server { listen 80; server_name _; access_log /var/log/nginx/access.log main; ... server { listen 80; server_name example.com access_log off; error_log off; 但是它仍然保持example.com虚拟主机的日志记录。我究竟做错了什么?
27 nginx 

2
Nginx的配置文件行继续?
我有一个nginx config节,看起来像: server { listen *:80; server_name domain1.com domain2.com domain3.com domain4.com .... domainN.com; rewrite ^(.*) http://my_canonical_domain.com permanent; } 有很多不同的领域。有什么办法可以将其分解为多行?我没有在解决此问题的nginx配置文档中看到任何东西。
26 nginx 

3
防止默认服务器的最佳方法?
我有许多虚拟主机,我想通过空白页,错误页面或通常最有效地使用Nginx资源的方式来“关闭”默认虚拟主机,同时仅允许通过以下方式访问其他虚拟主机:预定义的域。


3
如何在Nginx上为特定的虚拟主机设置favicon.ico?
我第一次使用Nginx作为我的网络服务器。我没有任何麻烦设置它,一切都很好。问题出在设计师问我是否可以将“标题栏中的图标”发送给我“放在那里”。 # /opt/nginx/conf/nginx.conf ... server { listen 80 ; server_name *.website.com website.com; root /home/webuser/sites/website; } 我的目录: /home/webuser/sites/website/ |_ index.html |_ main.css |_ favicon.ico 是否可以在每个虚拟主机上放置一个特定的favicon.ico?您应该将该文件放在哪里以及如何配置它? 编辑: 我只是意识到这是一个完全不同的问题。两个答案都是正确的,但我的问题是许可。我不知道为什么文件favicon.ico最终拥有600的权限,而我这样做的那一刻当然是这样: chmod +r favicon.ico 像魅力一样工作。如果其他人碰巧,我将把它留在这里。

3
替代Apache基准测试?[关闭]
关闭。这个问题是题外话。它当前不接受答案。 想改善这个问题吗? 更新问题,使它成为服务器故障的主题。 4年前关闭。 我想要一些用于ubuntu的工具,可以用来测试服务器,可以处理多少服务器。 有什么建议么?我以前使用过Apache基准测试,但我想尝试其他方法。 (作为一个附带的问题,如果仅使用nginx,apache基准测试是否有效?)

4
为jboss / tomcat配置nginx
此问题已从堆栈溢出迁移,因为可以在服务器故障时回答。 迁移 8年前。 为了使用Apache将流量通过端口80传递到JBoss / TomCat,我们使用安装和配置mod_jk。 Nginx是否具有等效功能?基本上希望所有端口80流量都传递给jboss。

1
如何解决gunicorn关键工人超时错误?
我曾使用nginx和gunicorn在两个服务器上托管我的网站, 两台服务器具有相同版本的软件包,并且网站已成功托管, 但是在我的一台服务器中,gunicorn总是超时并且出现错误 [CRITICAL]Worker Timeout Booting worker with pid Worker cannot boot with pid 之后,我在网页中收到502 Badgateway错误。我必须重启gunicorn程序才能打开网站。 以下是错误日志: 2014-02-16 14:29:53 [1267] [CRITICAL] WORKER TIMEOUT (pid:4994) 2014-02-16 14:29:53 [1267] [CRITICAL] WORKER TIMEOUT (pid:4994) 2014-02-16 14:29:53 [22140] [INFO] Booting worker with pid: 22140 我收到这样的continueos错误, 2014-02-16 14:29:53 [22140] [DEBUG] Ignoring EPIPE Ignoring EPIPE 2014-02-16 …
26 nginx  gunicorn 

3
Nginx-如何将具有特定IP的用户重定向到特殊页面
我经营一个很大的图片库,每天有5位访客使用webcopiers下载整个网站,从而创造了巨大的流量。这些访问者似乎具有静态IP。我要实现的是,一旦这5个IP访问该网站,它们就会被重定向到某个页面(这说明了它们的行为有问题的原因)。所有其他访问者都应该能够正常浏览该站点。 该服务器正在运行CentOS(5.8)和Nginx(1.0.15)作为Web服务器。有什么方法可以通过您知道的nginx.conf中的条目来实现此目的? 预先非常感谢您的提示和支持! 亲切的问候-亚历克斯
26 nginx  ip  redirect 

3
是否在整个网站上启用基本身份验证,然后在子页面上禁用它?
我有一个相对简单的配置: upstream appserver-1 { server unix:/var/www/example.com/app/tmp/gunicorn.sock fail_timeout=0; } server { listen 80; server_name example.com; location / { proxy_pass http://appserver-1; proxy_redirect off; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; auth_basic "Restricted"; auth_basic_user_file /path/to/htpasswd; } location /api/ { auth_basic off; } } 目标是在整个网站上使用基本身份验证,除了在/api/子树上。虽然它确实适用于基本身份验证,但其他指令(例如)proxy_pass也未生效/api/。 是否可以仅禁用基本身份验证,同时保留其他指令,而无需复制粘贴所有内容?

3
如何在Nginx反向代理中重写Set-Cookie的域部分?
此问题已从堆栈溢出迁移,因为可以在服务器故障时回答。 迁移 8年前。 我有一个简单的nginx反向代理: server { server_name external.domain.com; location / { proxy_pass http://backend.int/; } } 问题在于Set-Cookie响应头包含;Domain=backend.int,因为后端不知道它是否被反向代理。 如何使nginx重写Set-Cookie响应标头的内容,替换;Domain=backend.int为;Domain=external.domain.com? 路过Host头不变的是不会在这种情况下的一个选项。 Apache httpd拥有此功能已有一段时间了,请参阅参考资料ProxyPassReverseCookieDomain,但是我似乎找不到在nginx中实现此功能的方法。

3
如何编写具有命名位置的DRY模块化nginx conf(反向代理)
我主要将nginx用作几个gunicon / mod_wsgi应用程序前面的逆向代理,当然还用于服务器静态文件。 我发现我的nginx conf很快变得无法维护。问题是我有一些相似(甚至相同)的模式,但是我无法使其变得干净。 我遇到的最大问题之一是,我很想使用命名位置作为对一组conf进行分组的方法。 location @django_modwsgi { include proxy.conf; proxy_pass http://127.0.0.1:8080; } location @django_gunicorn { include proxy.conf; # this could also be included directly in the server {} block? proxy_pass http://gunicorn_builder; } 注意 问题不在于同时拥有gunicorn和wsgi。这只是一个例子。另一个是: location @namedlocation_1 { some cache settings; some cache_key settings; ignore some headers; expires; proxy_pass …

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.