Articles of nginx

“低地址位是无意义的”是什么意思?

我试图限制从互联网访问我的博客上的login页面,只能从我的内部网提供。 因此,我已经定义了以下位置 location ~/ghost/signing { allow 192.168.0.1/24; deny all; } 当我重新启动Nginx时,我得到以下警告: 192.168.0.1/24低地址位在/etc/nginx/sites-enabled/site中没有意义 此外,我无法访问我的内部网的位置。 所以,我想allow语句不是“加载”,我最终拒绝所有访问/ghost/signin页面。 为什么低地址位没有意义,我应该如何表述语句才能按照我的意图工作? 我试图谷歌低地址位是没有意义的,但我最终只能在我认为是俄罗斯的职位,我不知道如何从俄文翻译。

Nginx将所有旧域子域名redirect到新域名

我有一个很长的领域,所以我决定把它改为更短,更友好的。 但是由于我有很多子域(实际上,我有一个子域通配符),我想保留子域而只更改域的一部分。 所以,我做了以下规则: server { listen 80; server_name ~^(\w+)\.olddomain\.com$; rewrite ^ $scheme://$1.doma.in$request_uri? permanent; } 我已经阅读了很多其他的问题,这段代码解决了这个问题。 但对我来说,Nginx总是redirect到.domain.in ,没有任何子域名。 我错过了什么? 我已经testing了正则expression式对regex101和例子工作正常,Nginx似乎无法redirect。

如何configurationnginx从RAM提供静态内容?

我想设置nginx作为我的networking服务器。 我想有图像文件caching在内存(RAM),而不是磁盘。 我正在服务一个小页面,并希望从RAM中总是提供几个图像。 我不希望使用清漆(或任何其他这样的工具),因为我相信nginx有能力caching内容到RAM中。 我不知道如何configurationnginx呢? 我曾尝试过几种组合,但都没有奏效。 nginx一直使用磁盘来获取图像。 例如,当我尝试使用以下命令testingapache基准testing: ab -c 500 -n 1000 http://localhost/banner.jpg 我得到以下错误: socket: Too many open files (24) 我想这意味着nginx试图从磁盘同时打开许多文件,操作系统不允许这个操作。 任何人都可以请build议我一个正确的configuration?

基于主机名的dynamicnginx域根path?

我试图设置我的开发nginx / PHP服务器与一个基本的主/全部捕获vhostconfiguration,以便我可以根据需要创build无限___.framework.loc域 。 server { listen 80; index index.html index.htm index.php; # Test 1 server_name ~^(.+)\.frameworks\.loc$; set $file_path $1; root /var/www/frameworks/$file_path/public; include /etc/nginx/php.conf; } 然而,nginx响应此设置的404错误。 我知道nginx和PHP正在工作,并有权限,因为我使用的localhostconfiguration工作正常。 server { listen 80 default; server_name localhost; root /var/www/localhost; index index.html index.htm index.php; include /etc/nginx/php.conf; } 我应该检查什么来发现问题? 这里是他们都加载的php.conf的副本。 location / { try_files $uri $uri/ /index.php$is_args$args; } location ~ […]

在负载均衡器后面用ngnix重写http到https

我正在使用Rackspace负载平衡器,它使我能够在pipe理面板中设置我的ssl键/ pem。 一切工作正常,我可以使用http和https协议。 但是,如果我尝试使用以下方法将httpredirect到https: server{ listen *:80; server_name mydomain.com www.mydomain.com; rewrite ^ https://mydomain.com$request_uri? permanent; …我得到一个redirect循环。 我意识到我没有听443端口,但那是因为负载平衡器为我处理。 我也尝试包装重写if ($scheme ~* http){无效。 我的问题的另一部分是,我想从url中删除www,我可以做一个单一的重写? 上面的重写不应该照顾这个吗? 谢谢你的帮助!

我应该如何检查SSL会话恢复是否正常工作?

我正在使用nginx,并希望实现SSL会话恢复。 我们应该如何testing它是否工作? 我已启用这些设置: ssl_session_cache shared:SSL:10m; ssl_session_timeout 10m;

PHP的FPM授予权限被拒绝?

我读了几篇关于为什么PHP-FPM可能会拒绝我的权限的问题,但是我无法解决这个问题。 错误日志如下所示: 2013/04/20 23:33:28 [crit] 15479#0: *6 open() "/var/lib/nginx/tmp/fastcgi /2/00/0000000002" failed (13: Permission denied) while reading upstream, client: 99.999.999.999, server: example.net, request: "GET /wp-admin/ HTTP/1.1", upstream: "fastcgi://unix:/tmp/php-fpm.sock:", host: "example.net", referrer: "http://example.net/" 我有点失落: 我已经设置了/ var / lib / nginx / tmp到ec2-user(我甚至要检查一切+777) 我已经将/tmp/php-fpm.sock设置为ec2用户 nginx conf文件被设置为ec2-user php-conf被设置为用户和组ec2用户 ps aux给所有php-fpm和nginx进程提供ec2用户 我的Nginxconfiguration包含很多文件,基本的configuration是: user ec2-user ec2-user; worker_processes 5; error_log /opt/nginx/error.log; pid […]

nginx HTTPS WWWredirect到非WWW

我的SSL证书是为mydomain.com,所以我试图将所有www.mydomain.comredirect到没有www。 现在,所有这些工作: http://www.mydomain.com http://mydomain.com https://mydomain.com 但https://www.mydomain.com是给浏览器的“网站不安全”的警告…我试图设置一个像下面的redirect,但请告诉我在哪里我的脚本是越野车… server { listen 80; server_name www.mydomain.com mydomain.com; rewrite ^(.*) https://mydomain.com$1 permanent; client_max_body_size 100M; location / { index index.htm index.html index.php; } location ~ \.php$ { include fastcgi_params; fastcgi_index index.php; fastcgi_pass 127.0.0.1:9000; fastcgi_param SCRIPT_FILENAME /var/www/mysite$fastcgi_script_name; } } server { listen 443; ssl on; ssl_certificate /usr/local/nginx/conf/public.crt; ssl_certificate_key /usr/local/nginx/conf/server.key; server_name www.mydomain.com; rewrite […]

使用cloudflare的灵活sslredirect循环

我正在尝试将CloudFlare提供的Flexible SSL实现到我的站点。 这是我的nginxconfiguration: # PHP-FPM upstream; change it accordingly to your local config! upstream php-fpm { server 127.0.0.1:9000; } server { listen 80; server_name example.com www.example.com; return 301 https://$server_name$request_uri; } server { ## Listen ports listen 443; # use _ if you want to accept everything, or replace _ with domain server_name example.com www.example.com; location […]

Nginx + PHP-FPM产生502错误的网关,而不是致命的错误?

我目前正在用Nginx和PHP-FPMtestingSymfony2。 我也使用Xdebug。 Symfony2带有一个Demo包,我想通过在Acme / Demo包中创build一个语法错误来testingSymfony 2.2.0附带的致命错误的新处理。 为什么我这样做,服务器响应是502坏的网关。 但是,如果我在文件app_dev.php中发生语法错误(所以在框架被触发之前),那么Xdebug会告诉我有关致命错误的信息。 令人惊讶的是,如果我解决了这个错误,然后在Acme / Demo包中重新创build语法错误,那么Symfonyerror handling程序就会像预期的那样出现。 最后,如果修复所有拼写错误(页面工作),然后再次创build相同的错字(再次在Acme / Bundle),我得到一个坏的网关。 你有什么线索吗?