我有一个字体(字体真棒)的问题。 我已经search了一个修复程序,我发现导致问题的是版本查询('../fonts/fontawesome-webfont.woff2?v=4.7.0')但在我的情况下,不解决问题。 我注意到这个问题来自nginx的conf文件: location / { try_files $uri $uri/ /index.php?$args; rewrite ^/(.*)$ /index.php?p=$1 last; } 如果我删除rewrite ^/(.*)$ /index.php?p=$1 last; 行字体加载就好了。 这里是Firefox的说: 可下载字体:被sanitizer拒绝(font-family:“FontAwesome”风格:正常体重:正常舒展:正常src索引:1)来源: http : //example.com/assets/font-awesome/fonts/fontawesome-webfont。 woff2 这是什么铬说: 无法解码下载的字体: http : //example.com/assets/font-awesome/fonts/fontawesome-webfont.woff2 (index):1 OTSparsing错误:无效的版本标记
我在3个不同的主机上运行nginx作为反向代理。 DNS将production.example.comparsing为所有3个主机的IP地址。 因此,如果一个主机不可用,我有一些负载平衡和回退。 每个主机都运行多个docker集装箱。 其中一些在所有三个主机上运行,一些仅在两个或甚至仅一个主机上运行。 利用nginx的proxy_pass我把所有的请求转发到容器的内部名称(我正在使用Rancher,因此每个容器都可以通过内部DNS通过container_name.stack_name访问)。 时不时地,容器不可用或不响应,因此nginx返回错误502。 有什么办法可以自动回退吗? 不幸的是, nginx忽略内部Docker容器名称的所有其他parsing地址,因此不会将请求转发到其他地址。
我们目前使用NGINX服务器作为各种服务和应用程序的反向代理。 它正在处理和代理我们创build的Web应用程序的stream量,一个API代理服务器,以及一个单独的程序化API。 下面是一个示例代码示意图,显示代理的资源。 foobar.com |-foobar.com/api |-foobar.com/webapp |-foobar.com/proxy 我们拥有一个具有单点loginfunction的公司AD系统。 我试图将这个与NGINX反向代理整合,以在NGINX后面访问这些服务中的一个或多个服务时validation用户。 我已经看到像https://www.nginx.com/blog/nginx-plus-authenticate-users/这样的post描述了如何让NGINX通过让用户填写login表单来使用AD身份validation,但是这不适用于我们的用例。 这是因为其中一些用户将通过HTTP CRUD操作和/或curl命令与API服务和代理服务进行交互。 另外,这些API和代理用户可能属于其他应用程序而不属于人类。 从这个意义上说,他们完全是程序化的交互。 我如何configurationNGINX来支持人性化和程序化的ADauthentication?
如何将每个虚拟主机redirect到https,但不重复configuration。 我在运行Nginx的同一vps上有4个网站,我想将所有内容redirect到https。
我在我的网站前面使用了cloudflare的nginx来保护他们免受第7层攻击,但是现在一些攻击者发现了这种新的方式,他们每天直接用第7层攻击攻击我的默认IP,而不是攻击这些站点。 当他们在直接IP地址上打开默认页面时,我将返回444响应,但仍然是攻击太大,所以他们正在使所有的站点/服务器在几分钟之内不可用,并在一段时间内取决于攻击使Nginx繁忙。 所以我想问是否有可能禁用端口80访问默认IP而不影响我的其他网站和服务? 这些攻击太大了,我的默认虚拟主机的日志文件在1小时内就变成了1GB,所以即使返回444也没有工作,为什么我认为在防火墙级别阻止它会更好? 任何build议如何与iptables实现这一点? 我用Ngiinx 1.13使用CentOS 6.9。 再有想法? 还在等待!
我有一个站点使用标准的nginx方法来通过/index.php指导stream量而不pipeurl如何: location / { try_files $uri $uri/ /index.php?$args; } location ~ \.php$ { fastcgi_pass unix:/run/php/php7.0-fpm.sock; fastcgi_split_path_info ^(.+\.php)(/.+)$; fastcgi_index index.php; include fastcgi_params; } 但是我想为一个特定的URL使用一个不同的php-fpm池(但是仍然通过/index.php)。 我可以,我想,在.php $位置块中使用“if”子句,以根据URL使用不同的fastcgi_pass,但不鼓励“if”,所以还有其他方法吗?
Nginx被用作Node服务器前面的反向代理。 节点服务器有一个使用WebSocket的path( /ws ),这个path需要特殊的设置。 /ws不是一个目录,因此对它的请求不能有一个结尾的斜杠。 什么是正确的方式来configuration这个? 以下configuration不起作用,但显示了意图。 location /service/ { proxy_read_timeout 30s; proxy_pass http://service:8080/; # not working, requests are sent to http://service:8080/service/ws # instead http://service:8080/ws location /service/ws { proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; proxy_read_timeout 36000s; } }
我试图解决nginxredirect到https,但是当我使用www.ozkandurakoglu.com我得到414请求 – URI太大的错误。 这是我对nginx的设置: upstream ozkan_server { server unix:/home/ytsejam/public_html/ozkansimple/run/gunicorn.sock fail_timeout=10s; } server { listen 80; server_name ozkandurakoglu.com www.ozkandurakoglu.com; return 301 $scheme:https://ozkandurakoglu.com$request_uri; } server { listen 443 ssl; listen [::]:443 ssl; ssl on; ssl_certificate /etc/letsencrypt/live/ozkandurakoglu.com/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/ozkandurakoglu.com/privkey.pem; ssl_trusted_certificate /etc/letsencrypt/live/ozkandurakoglu.com/chain.pem; ssl_session_timeout 1d; ssl_session_cache shared:SSL:50m; ssl_session_tickets off; ssl_prefer_server_ciphers on; add_header Strict-Transport-Security max-age=15768000; ssl_stapling on; ssl_stapling_verify on; server_name www.ozkandurakoglu.com; […]
我google了,但我不明白nginxstream和上游块之间的负载平衡的区别。 stream { upstream { } } 我显示谷歌,有些人使用stream块,有些人忽略了http负载平衡,但所有人使用stream块阻止tcp / udp负载。 当我必须使用stream块? 当我可以忽略stream块?
我有两台服务器,称为NGinxServer和AppServer。 NGinxServer是所有AppServer调用的可访问入口点。 出于安全原因,我修改了AppServer的安全组,不允许任何连接,除了那些来自NGinxServer安全组(NGinxServer-SG)的连接。 但是,当我这样做时,我无法完成从Web浏览器 – > NGinxServer – > AppServer的任何代理请求。 我可能做错了什么? 我认为NGinx代表了整个连接的持续时间,但是我只能认为,NGinx要么是阻止了被安全组规则阻止的连接,要么是AWS看到的代理stream量仍然有数据显示起源于Web浏览器,而不是NGinx,并相应地阻止它。 任何帮助是极大的赞赏。 编辑解决scheme:由Michael – sqlbot提供的评论/答案是正确的解决scheme。 我正在使用公共IP而不是私有IP 。