Articles of nginx

Web请求是否logging到访问日志和错误日志?

我正在计算在过去30天内我的nginx反向代理服务器请求的数量。 我通过计算访问日志中的所有行和循环访问日志来完成此操作。 我有30天的日志。 cd /var/log/nginx for file in access.log*.gz; do zcat $file | wc -l; done wc -l access.log 然后我总结所有的结果数字。 我是否也应该在错误日志中添加这行? 有没有更好的方法来计算请求总数? 有什么我应该知道的陷阱?

AWS EC2,Ubuntu:上游超时(110:连接超时),从上游读取响应标头

我在几个EC2实例上有很多NGINX错误: 2016/10/28 15:50:46 [error] 2879#0: *31351 upstream timed out (110: Connection timed out) while reading response header from upstream, client: 10.0.0.74, server: www.myhost.com, request: "POST /someurl HTTP/1.1", upstream: "fastcgi://unix:/var/run/php/php7.0-fpm.sock", host: "www.myhost.com", referrer: "https://www.myhost.com/other-url" 我不知道在哪里调查… Nginx的? AWS?

Nginx服务器主机头server_name

在本教程中 ,写入了与listen指令匹配后, nginx将再次匹配server_name指令,该指令可以是IP地址或域名。 但是当你使用一个域名的时候怎么会这样呢? 当我到我的浏览器并写入http://myserver/ ,这将会去我的ISP的DNS服务器,并会告诉我,有没有http://myserver/任何地方被发现。 它是如何工作的?

单个Nginx网站可以有自己的http块吗?

比方说,我有一个网站的Nginxconfiguration。 # /etc/nginx/sites-available/my-site server { … } 但我想sendfile off; 为该网站设置。 我可以在文件的开头添加一个http块吗? # /etc/nginx/sites-available/my-site http { sendfile off; } server { … } 这甚至会工作吗? 它会对所有网站产生全球影响吗?

基于uripath的Nginx SSL传递

我想知道是否有可能configurationNginxdynamic发送请求(无SSL终止)到给定的微服务? 在我的架构中,我有两个微服务。 让我们假设他们是localhost:5000和localhost:5100。 我想发送所有以/api开头的请求(以Nginx代理)到localhost:5000和/services到localhost:5100。 我已经在两个微服务上configuration了SSL,所以我不需要在Nginx上使用SSL终止。 这可能吗?

nginx服务其他领域,然后我自己的

我有一些问题与nginx传递stream量到我的网站,而不是我自己的域名。 似乎'fb.citroen.nl'有他们的DNS设置错误(对我的服务器)。 我想阻止除了bginnne.sanderdeclerck.be和www.bviaene.sanderdeclerck.be以外的所有stream量,以减less服务器负载。 search后,我已经看到它应该在/ etc / nginx / sites-enabled / default中完成。 我以为它已被正确设置,但仍然,stream量fb.citroen.nl显示我的网站。 这是我的/ etc / nginx / sites-enabled / default: # bviaene server { listen 80 default_server; listen [::]:80 default_server ipv6only=on; server_name bviaene.sanderdeclerck.be www.bviaene.sanderdeclerck.be; location / { proxy_pass http://localhost:5000; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection keep-alive; proxy_set_header Host $host; proxy_cache_bypass $http_upgrade; } } 有没有人有一个想法,我在做什么错了? […]

rm -rf不能删除会话文件

1.在会话目录中列出文件 $ /var/lib/php/sessions$ sudo ls -la total 20 drwx-wx-wt 2 root root 12288 May 20 14:26 . drwxr-xr-x 4 root root 4096 Feb 26 21:15 .. -rw——- 1 www-data www-data 0 May 20 14:26 sess_716a24lf4tsnmfucpq50uf1pk7 -rw——- 1 www-data www-data 124 May 20 14:26 sess_fkif8ed8k85olh53q9so1cd6s3 -rw——- 1 www-data www-data 0 May 20 14:25 sess_ov6nrn16gg81i44u9angk3bls6 2. sudo删除所有文件 […]

如何configurationNginx来从CDN提供静态文件

我有一个SPA(使用React-Router ReactJS ),它使用index.html作为入口点。 为了使前端路由器正常工作,我需要为所有匹配的URL返回index.html文件。 我已经尝试使用proxy_pass和失败(见下文), server { listen 80; proxy_set_header Host $http_host; proxy_set_header x-forwarded-for $remote_addr; location /appname/(?<section>.*) { proxy_pass http://cdn.us-west-2.edge.aws/666/index.html; } } 我也准备好了关于try_files但似乎只有本地文件(S)。 我想达到的效果, 当用户访问http://example.com/appname 应提供http://cdn.us-west-2.edge.aws/666/index.html的静态内容 当用户访问http://example.com/appname/abc 应提供http://cdn.us-west-2.edge.aws/666/index.html的静态内容 当用户访问http://example.com/appname/abc/def 应提供http://cdn.us-west-2.edge.aws/666/index.html的静态内容

如何使用ubuntu和nginx在AWS EC2上托pipe静态网站?

我需要使用Ubuntu和NGINX在AWS EC2 micro上托pipe一个网站。 所以我用dot.tk获得免费的域名,并用它来映射我的服务器的ElasticIP(用dig工具来检查它是否指向我的IP)。 然后,我更改了服务器上的nginx.conf,并将这些标准行添加到http部分: server { listen 80; server_name mydomain.ml; root /data/www; location / { index index.html; } } 但是,如果我在浏览器中写下我的地址,它不会显示我的东西。 我还需要做些什么呢?

在一台主机上redirect多个域的正确方法 – NGINX

在这个例子中,我有2个不同的CMS和5个不同的域的4个网站。 a.com sub.a.com b.com c.com在CMS1上 d.com在CMS2上 http应该redirect到https a.com www.a.com www.sub.a.com到sub.a.com www.b.com到b.com www.c.com到c.com www.d.com到d.com 每个域名都有自己的独立网站,由其共同的CMS进行处理。 例如,这意味着即使b.com和c.com使用相同的CMS,pipe理面板和根目录, 前台服务的页面是完全不同的。 该function由CMS处理。 由于这个configuration,我有2个用于NGINX的.conf文件,一个用于域ac,一个用于d。 问题来了。 以下是我到目前为止所提出的,但不符合上述的方式。 域名www.a.com – www.c.com似乎都redirect到sub.a.com 。 www.sub.a.com不会redirect到sub.a.com 。 我看着这一切都错了吗? a.com.conf server { listen 80; server_name a.com www.a.com sub.a.com www.sub.a.com b.com www.b.com c.com www.c.dom; return 301 https://$server_name$request_uri; } server { listen 443 ssl; server_name www.a.com www.sub.a.com; return 301 […]