Questions tagged «nginx»

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


3
仅允许Nginx中的本地用户
我想限制某些VHost的访问,以便只有127.0.0.1可以访问它。我一直使用这样的方法将VHost绑定到本地主机,而不是外部IP: server { listen 127.0.0.1; server_name myvhost.local; location / { .... } } 但我注意到,有些教程还包含allow针对localhost的显式指令,并明确拒绝所有其他指令: server { listen 127.0.0.1; server_name myvhost.local; location / { allow 127.0.0.1; deny all; ... } } 当我仅在127.0.0.1收听时,真的需要这些allow/ deny指令吗?
22 nginx 

6
增加PHP-FPM的最大上传/发布大小
我在Ubuntu 14.04上的Nginx下运行php5-fpm。我想增加最大上传大小。 我已经编辑/etc/php5/fpm/php.ini了以下几行: upload_max_filesize = 20M post_max_size = 25M 我重新启动了php5-fpm和nginx,但phpinfo()仍然显示分别限制为8M和2M,分别用于发布和上传。 我有什么想念的吗?
22 nginx  php-fpm  php.ini 

2
nginx反向代理-尝试上游A,然后尝试B,然后再次尝试A
我正在尝试将nginx设置为具有大量后端服务器的反向代理。我想按需启动后端(根据传入的第一个请求),因此我有一个控制过程(由HTTP请求控制),该过程根据后端收到的请求来启动后端。 我的问题是配置nginx来做到这一点。这是我到目前为止的内容: server { listen 80; server_name $DOMAINS; location / { # redirect to named location #error_page 418 = @backend; #return 418; # doesn't work - error_page doesn't work after redirect try_files /nonexisting-file @backend; } location @backend { proxy_pass http://$BACKEND-IP; error_page 502 @handle_502; # Backend server down? Try to start …
22 nginx  failover 

3
用于AWS Amazon ELB健康检查的Nginx解决方案-不带IF返回200
我有以下正在Nginx上运行的代码,以使AWS ELB运行状况检查保持满意。 map $http_user_agent $ignore { default 0; "ELB-HealthChecker/1.0" 1; } server { location / { if ($ignore) { access_log off; return 200; } } } 我知道Nginx最好避免使用“ IF”,我想问问是否有人会知道如何在没有“ if”的情况下重新编码? 谢谢

2
使用Nginx的Varnish是否比仅使用Nginx更好?[关闭]
按照目前的情况,这个问题不适合我们的问答形式。我们希望答案会得到事实,参考或专业知识的支持,但是这个问题可能会引起辩论,争论,民意调查或扩展讨论。如果您认为此问题可以解决并且可以重新提出,请访问帮助中心以获取指导。 7年前关闭。 我看到很多关于将Nginx与Varnish结合使用的讨论,但我不明白为什么。nginx还不够吗? Nginx具有SSI,具有反向代理缓存,重量轻,具有SSL,可以与cgi,fpm等配合使用。 Varnish具有相同的功能,但没有ssl,也没有cgi支持。
22 nginx  varnish 

5
Nginx set_real_ip_from AWS ELB负载均衡器地址
我在Amazon ELB负载均衡器后面有一组Nginx服务器。我正在使用set_real_ip(来自HttpRealIpModule),以便可以访问这些服务器上的原始客户端IP地址(用于传递到php-fpm并在HttpGeoIPModule中使用)。 似乎set_real_ip_from在nginx配置中只能接受一个I​​P地址。但是,关于ELB机器,亚马逊说: 注意:由于与LoadBalancer关联的IP地址集会随着时间而变化,因此您永远不要使用任何特定IP地址创建“ A”记录。如果要为您的LoadBalancer使用友好的DNS名称,而不是由Elastic Load Balancing服务生成的名称,则应为LoadBalancer DNS名称创建CNAME记录,或使用Amazon Route 53创建托管区域。有关更多信息,请参阅在弹性负载平衡中使用域名 但是,如果我需要输入IP地址,则不能使用CNAME(亚马逊的或我自己的)。有解决这个问题的方法吗?


2
Nginx Config:前端反向代理到另一个端口
我有一个小型Web服务器,可在端口5010而不是80上提供请求。 我想使用nginx作为前端代理,以在端口80上接收请求,然后让这些请求由端口5010处理。 我已经成功安装了nginx,它可以在Ubuntu Karmic上顺利运行。 但是,我尝试重新配置默认的nginx.conf失败。 我尝试在服务器指令中包括端口5010的listen参数。 我也尝试过proxy_pass指令。 为了只进行端口转发,需要对更改做出任何建议或需要设置指令。

2
Nginx通配符/正则表达式在位置路径中
我的Nginx配置抛出404,.php例如: ## Any other attempt to access PHP files returns a 404. location ~* ^.+\.php$ { return 404; } 但是我在子文件夹中有一些index.php文件要运行。当前配置如下: location = /sitename/subpage/index.php { fastcgi_pass phpcgi; #where phpcgi is defined to serve the php files } location = /sitename/subpage2/index.php { fastcgi_pass phpcgi; } location = /sitename/subpage3/index.php { fastcgi_pass phpcgi; } …
22 nginx  regex  wildcard 

5
如何强制NGINX加载新的静态文件?
我最近在网站上发布了一个重大更新,但遇到了一些人无法登录的问题,因为他们的浏览器正在加载旧的 javascript文件。我所做的一些事情包括: 缓存清除所有JavaScript文件 sendfile off在nginx.conf中设置 expires 1s在mysite.conf中设置 明确设置Cache-Control标头: add_header Cache-Control no-cache; 波纹管是我的nginx conf文件。任何帮助将非常感激。 /etc/nginx/sites-enabled/mysite.conf proxy_cache_path /var/cache/nginx levels=1:2 keys_zone=one:8m max_size=3000m inactive=600m; server { listen 80; server_name mysite.com; return 301 https://www.mysite.com$request_uri; } server { # listen for connections on all hostname/IP and at TCP port 80 listen *:80; # name-based virtual hosting …
22 nginx  cache 

3
nginx打开的文件太多,似乎无法提高限制
服务器是Ubuntu 13.04(GNU / Linux 3.9.3-x86_64-linode33 x86_64)。 nginx是nginx / 1.2.6。 我已经为此工作了几个小时,所以这就是我得到的,这也是我所做的。 tail -f /usr/local/nginx/logs/error.log 2013/06/18 21:35:03 [crit] 3427#0: accept4() failed (24: Too many open files) 2013/06/18 21:35:04 [crit] 3427#0: accept4() failed (24: Too many open files) 2013/06/18 21:35:04 [crit] 3427#0: accept4() failed (24: Too many open files) 2013/06/18 21:35:04 [crit] 3427#0: …

5
如何在Nginx中指定Windows文件路径
我正在使用Nginx的官方Windows版本。我想指定与此配置等效的Windows location /static/ { alias /home/user/staticfiles/; } 如何在别名指令中指定Windows文件路径?这有可能吗?
22 windows  nginx 

3
在NGINX中禁用TLS 1.0
我有NGINX充当我们网站的反向代理,并且运行良好。对于需要ssl的网站,我关注了raymii.org以确保获得尽可能高的SSLLabs评分。其中一个站点需要符合PCI DSS的要求,但是基于最新的TrustWave扫描现在由于启用了TLS 1.0而失败。 在nginx.conf中的http级别上,我有: ssl_protocols TLSv1 TLSv1.1 TLSv1.2; 对于特定的服务器,我有: ssl_protocols TLSv1.1 TLSv1.2; 我更改了密码,将内容从http级别移到了每个ssl站点服务器,但是无论何时运行: openssl s_client -connect www.example.com:443 -tls1 我获得了TLS 1.0的有效连接。SSLLabs将网站的nginx设置作为A放置,但使用TLS 1.0,因此我相信其余设置是正确的,只是不会关闭TLS 1.0。 对我可能会想念的东西有什么想法? openssl version -a OpenSSL 1.0.1f 6 Jan 2014 built on: Thu Jun 11 15:28:12 UTC 2015 platform: debian-amd64 nginx -v nginx version: nginx/1.8.0
22 nginx  tls  pci-dss 

6
Nginx设置server_names_hash_max_size和server_names_hash_bucket_size
我们正在使用Nginx作为Apache的反向代理,该服务可以为任何人提供自己的网站。在创建帐户时,系统会为该域创建一个新的nginx conf文件,其中包含两个条目,一个条目用于端口80,另一个条目用于443。我们注意到,在每30个左右的域中,都会出现错误: Restarting nginx: nginx: [emerg] could not build the server_names_hash, you should increase either server_names_hash_max_size: 256 or server_names_hash_bucket_size: 64. 随着大约200个域的增长,我们不得不将server_names_hash_max的大小增加到4112,并且担心这不能很好地扩展。我希望了解这些配置如何工作以及最佳设置是什么,以确保我们可以使用此方法扩展到数千个域。 同样,以该哈希大小,nginx开始花费数秒来重新加载,这导致系统在重新启动时不可用。 以下是总体设置(在Ubuntu服务器10.10 nginx / 1.0.4上运行): user www-data; worker_processes 4; pid /var/run/nginx.pid; events { worker_connections 4096; # multi_accept on; } http { ## # Basic Settings ## sendfile on; tcp_nopush …
22 nginx 

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.