Articles of nginx

这是我需要拒绝IP在Nginx吗?

我试图阻止和redirect到网站的所有stream量。 这是正确的方法吗? 编辑:我想阻止一些IP地址范围,并将其redirect到一个URL。 编辑:通过在nginx中阻止这是否阻止所有访问后端Apache,所以不再受到打击? server { error_log /var/log/nginx/vhost-error_log warn; listen 1.2.3.4:80; server_name domain.com www.domain.com; access_log /usr/local/apache/domlogs/domain.com-bytes_log bytes_log; access_log /usr/local/apache/domlogs/domain.com combined; root /home/user/public_html; location / { deny 220.181.0.0/16; deny 124.115.0.0/16; deny 1.202.0.0/16; deny 208.115.0.0/16; deny 199.58.0.0/16; deny 220.181.0.0/16; deny 124.115.0.0/16; deny 83.149.0.0/16; deny 178.77.0.0/16; deny 65.55.0.0/16; deny 123.125.0.0/16; deny 82.128.0.0/16; deny 157.55.0.0/16; deny 199.0.0.0/8; deny 212.90.0.0/16; […]

nginx只有一个主机名的ssl代理

我想让nginx作为一个ssl代理,但对于主机: “ssl.example.com” 同时我想让nginx为主机“ssl-check.example.com”服务“nginx is ok”网站(这只是个例子,请不要在这里提供任何监控工具) 为其他主机指向我的IP我想服务404或任何其他。 – 我不在乎证书不匹配 – 所以SNI不是我想要的。 – 我不想使用描述为陷阱的解决scheme,并使用类似的东西 if ($host != $server_name) { root /var/www/errors/404 所有这些在单个IP上。 我有工作的SSL server { 与server_name ssl.example.com – 工作,我想要的。 另一个ssl server { 用server_name ssl_check.example.com – 显示“nginx是好的” 和最后一个服务器(也是SSL)没有server_name(或与“_”作为名称)应该服务404,但它不工作… 解决了 我的configuration使用该解决scheme看起来(和工程),如: 有“listen 443 ssl”的服务器 服务代理 有“listen 443 ssl”的服务器 服务“nginx是好的” 服务器“listen 443 ssl default_server;” 和“位置/返回404” 如果这个configuration可以以任何方式危险 – 不要犹豫,让我感到羞耻。 Thans

用php-fpm设置一个Nginxconfiguration文件导致502坏的网关

我正在按照指南设置一个Ubuntu的VPS作为一个Nginx的networking服务器的WordPress。 当设置Nginx和PHP我正在使用的指南build议我取消/etc/nginx/sites-available/default这一行注释: fastcgi_pass 127.0.0.1:9000; 这样做,尽pipe服务器的欢迎页面工作,当我去创build一个php文件(包含phpinfo)时,我得到一个502错误的网关错误, 但是,当我取消注释这条线: fastcgi_pass unix:/var/run/php5-fpm.sock; php文件似乎载入成功 任何人都可以解释每行是干什么的,为什么我使用的是一个工作,但在教程中没有?

在一个域上禁用SSL

我有一个ISPconfig和nginx的服务器,有两个域设置。 我在一个域上有一个SSL证书,另一个域上我禁用了SSL,但是仍然可以通过https将其redirect到domain1来访问domain2。 是否有可能使https无法访问域2?

nginx虚拟主机redirect到本地主机

我有一个虚拟主机不断redirect到本地主机的nginxconfiguration。 我已经testing并重新加载configuration,/ etc / hosts正在做当前的名称parsing,并且已经清除了浏览器caching。 这是我的nginx.conf user www-data www-data; worker_processes 4; pid /var/run/nginx.pid; events { worker_connections 1024; # multi_accept on; } http { sendfile on; tcp_nopush on; tcp_nodelay on; keepalive_timeout 65; types_hash_max_size 2048; include /etc/nginx/mime.types; default_type application/octet-stream; access_log /var/log/nginx/access.log; error_log /var/log/nginx/error.log; gzip on; gzip_disable "msie6"; include /etc/nginx/conf.d/*.conf; include /etc/nginx/sites-enabled/*; } 这是我的idu-lms.mainconfiguration server { root /var/www/wordpress/htdocs; […]

如何使git智能http传输工作在nginx上?

我尝试过很多不同的方式。 这可能是我设法实现的最好的configuration。 nginx : server { server_name git.domain.com; access_log /var/log/nginx/git.domain.com-access.log; error_log /var/log/nginx/git.domain.com-error.log; include common; location / { fastcgi_pass unix:/var/run/fcgiwrap.socket; # fastcgi_param DOCUMENT_ROOT /home/yuri/git; # fastcgi_param SCRIPT_NAME /1.pl; fastcgi_param DOCUMENT_ROOT /usr/lib/git-core; fastcgi_param SCRIPT_NAME /git-http-backend; include fastcgi_params; fastcgi_param DOCUMENT_ROOT /home/yuri/git; fastcgi_param GIT_HTTP_EXPORT_ALL ""; fastcgi_param GIT_PROJECT_ROOT /home/yuri/git; fastcgi_param PATH_INFO $request_uri; } } 我写了一个脚本来拦截fcgiwrap和git-http-backend之间的数据。 这里是: #!/usr/bin/perl use Data::Dumper; my […]

nginx没有caching页面

我有nginx作为反向代理的FreeBSD服务器。 当我用ab util来testing时,我会看到一些奇怪的东西,比如: 内部页面不被caching。 主页面被高速caching,但是有时会返回非高速caching的版本。 我不知道我犯了什么错误。 请帮忙。 这是configuration的一部分: worker_processes 4; events { worker_connections 4096; } http { proxy_connect_timeout 90; proxy_send_timeout 90; proxy_read_timeout 200; proxy_buffer_size 4m; proxy_buffers 24 1m; proxy_busy_buffers_size 8m; proxy_temp_file_write_size 4m; proxy_cache_path /var/cache/nginx levels=1:2 keys_zone=all:512m; keepalive_timeout 65; reset_timedout_connection on; aio sendfile; directio 1M; output_buffers 64 256k; server { listen < hidden >; server_name < […]

为什么使用wordpress启用php_fpm fastcgi_cache,NGINX运行缓慢?

我有一点麻烦。 我在rtcamp.com上一步一步的按照教程一步步的做了wordpress多站点,只是把“example.com” 改成了我的域名。 我安装了nginx helper插件,它看起来像整个网站,一切都很好。 (这是一个由LAMP设置移动的大约40个站点​​的networking) 我有一个问题,但。 即使使用fastcgi_cache进行configuration,我的页面加载时间也非常高。 这是当我查看源代码时间戳时读取的内容: <!–Cached using Nginx-Helper on 2013-03-12 00:21:19. It took 62 queries executed in 13.000 seconds. Visit http://wordpress.org/extend/plugins/nginx-helper/faq/ for more details –> 这不会发生在根网站上,只与子目录网站发生。 这里是我的configuration:这是网站可用/ example.com #move next 3 lines to /etc/nginx/nginx.conf if you want to use fastcgi_cache across many sites fastcgi_cache_path /var/run/nginx-cache levels=1:2 keys_zone=WORDPRESS:500m inactive=60m; fastcgi_cache_key "$scheme$request_method$host$request_uri"; fastcgi_cache_use_stale […]

NGINX / PHP-FPM CPU峰值和失控进程

最近我切换到NGINX / PHP-FPM来运行我的论坛。 大多数时候,网站运行精美,认真快速,我真的很高兴。 它在一个13核心/ 30 + GB的内存实例与AWS,如此充足的资源(在8核心,16GB之前与Apache。) 那么,会发生什么呢,大多数时候我们有6到7个PHP-FPM进程,并且都和世界一样好; PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 27676 apache 20 0 499m 34m 19m R 49.2 0.1 0:06.33 php-fpm 27669 apache 20 0 508m 48m 24m R 48.2 0.1 0:10.84 php-fpm 27661 apache 20 0 534m 75m 26m R 45.9 0.2 […]

http连接隧道代理服务器前面的websockets?

这个我很难过。 我们在myserver.com/wsDemo?ID=12上的端口80上有一个websocket服务器。 我们需要通过代理连接到这个服务器来testing一个客户端程序。 我正在尝试nginx 1.2.7作为在代理服务器上运行的端口8080上的代理。 我们希望客户端使用http连接方法连接到代理,然后让代理创build到myserver.com/wsDemo?ID=12 websocket应用程序服务器的隧道。 这是我的nginxconfiguration: http { include /etc/nginx/mime.types; default_type application/octet-stream; log_format main '$remote_addr – $remote_user [$time_local] "$request" ' '$status $body_bytes_sent "$http_referer" ' '"$http_user_agent" "$http_x_forwarded_for"'; access_log /var/log/nginx/access.log main; sendfile on; #tcp_nopush on; #keepalive_timeout 0; keepalive_timeout 65; gzip on; server{ listen 8080; listen 80; location /wsDemo?ID=12 { proxy_pass http://myserver.com:80/wsDemo?ID=12; proxy_http_version 1.1; proxy_set_header Upgrade […]