Nginx ("engine x") is a lightweight, high-performance HTTP server, reverse proxy, TCP stream proxy and mail proxy, released under a BSD-like license.

learn more… | top users | synonyms

11
votes
2answers
4k views

Nginx add_header for a 50* page

I'm currently trying to get nginx to add a header to the response when it is sending some kind of 50* error. I already have an add_header directive on the http block, and that gets respected for all ...
10
votes
3answers
20k views

Understanding this error: apr_socket_recv: Connection reset by peer (104)

So, if I do some benchmarking with apache benchmark (ab), and I use large numbers of requests. Then sometimes in the middle of a test I get this error. I don't even know what it means. So how can I ...
9
votes
1answer
12k views

How do I set a default host for nginx?

I'm trying to figure out how to set a default host for my nginx installation. I found this article in the nginx Wiki: http://wiki.nginx.org/NginxVirtualHostExample#A_Default_Catchall_Virtual_Host ...
9
votes
1answer
17k views

nginx: connect() failed (111: Connection refused) while connecting to upstream

I keep seeing the below error message's in the error log, I can access all of the resources but I'm unsure as to why the error is flagging. error: [error] 13368#0: *449 connect() failed (111: ...
8
votes
1answer
18k views

How to configure php-fpm to log logs to log files configured in nginx virtualhosts

I have Fedora 16 with nginx and php-fpm. Everything is working very good. All logs with php notice,warnig error etc. are in /var/log/php-fpm/www-error.log. Is there a way to configure php-fpm to write ...
6
votes
4answers
6k views

Nginx + PHP 5.3.3 (with php-fpm) - memory usage?

I recently bought Xen VPS (linode.com) with Debian 5.0 Lenny (i386), 512MB RAM. At the moment I have only three small websites (built with Drupal) with about 600 users per day in total running on this ...
6
votes
1answer
5k views

Working Nginx fastcgi_cache php-fpm cache and static file caching configuration?

Nginx wiki is very vague with explanation as to how to properly setup nginx with php-fpm with fastcgi_caching for sites which have cookies i.e. wordpress, drupal, vbulletin etc. I downloaded a ...
6
votes
2answers
14k views

Nginx $document_root$fastcgi_script_name vs $request_filename

I can't notice any difference if in my config file I set fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; Or: fastcgi_param SCRIPT_FILENAME $request_filename; What do ...
6
votes
1answer
6k views

How to extract Only the file name from the request uri

I am trying to rewrite the request uri depending on the extension of the file, then extract only the file name from the uri and store it in another folder. The problem here is no predefined variable ...
5
votes
2answers
5k views

Nginx ignoring client's HTTP 1.0 request and respond by HTTP 1.1

I am testing using nginx/php5-fpm, with the code <?php header($_SERVER["SERVER_PROTOCOL"]." 404 Not Found"); // also tested: header("Status: 404 Not Found"); echo $_SERVER["SERVER_PROTOCOL"]; ...
5
votes
1answer
2k views

NGINX basic auth only for POST

I'm settings up nginx to serve Mercurial repositories. It works when not using basic authentication at all, or when I use basic authentication all over. What I want to do is to just use basic auth on ...
5
votes
1answer
4k views

Mixed IP and Name Based Virtual Hosts with nginx

I set up many domains but I dont know how to configure if only ip address is given. say foo.com I have a setup to go web/foo.com/htdocs, I want to 88.99.66.55 ip address like a domain to web/fook....
4
votes
1answer
9k views

How to use nginx as reverse proxy with multiple IPs and SSL?

I would like to setup nginx reverse proxy with multiple domains and an IP for each of them to use different SSL Certs. I run Ubuntu as OS which is installed on a KVM/Qemu VM. As I understand nginx, ...
4
votes
2answers
3k views

Recompile NGINX with “--with-http_stub_status_module” configure line

I've installed NGINX with sudo apt-get install nginx and now I'd like to recompile it with the configure option --with-http_stub_status_module. How can I do this, and is there a way I can not loose ...
4
votes
2answers
2k views

How to check multiple CRL lists with nginx client authentication?

I have a custom easyrsa setup with a root and three CAs signed by the root. (Three different sub-cas depending on the user type), like this: RootCA +----- AdminUserCA +----- EmployeeCA +----- ...
4
votes
1answer
6k views

Nginx set a variable conditionally

I want to allow 1GB uploads on a specific subdomain of my site called upload.xxx.xx.xx. Currently I am trying something like: server { if ( $host = 'upload.xxx.xx.xx' ) { ...
4
votes
2answers
2k views

How soon does nginx's token bucket replenish when limiting at requests per minute?

We've decided that we want to experiment and limit requests per minute instead of requests per second on our sites. However, I am confused by the burst parameter in this context. I am under the ...
4
votes
5answers
6k views

Curl development headers with SSL support for Phusion Passenger 3

I'm trying to install phusion passenger nginx module, but it fails # passenger-install-nginx-module * Curl development headers with SSL support... not found ... yum install curl-devel Setting up ...
4
votes
2answers
6k views

Setting up a reverse proxy to cache images

I wrote a quick Python server to serve resampled images. For example, a URL might look something like http://images.domain.com/resample/100x100/9f362e1994264321.jpg. Being that resampling images is ...
4
votes
6answers
24k views

How do I make Nginx redirect all requests for files which do not exist to a single php file?

I have the following nginx vhost config: server { listen 80 default_server; access_log /path/to/site/dir/logs/access.log; error_log /path/to/site/dir/logs/error.log; root /path/to/...
4
votes
1answer
6k views

gzip compression doesn't work in nginx reverse proxy setup

We have nginx in front of an Apache server in reverse proxy mode. We initially had Apache compressing files using mod_deflate, however that proved to cause problems with some instances of Internet ...
3
votes
1answer
1k views

Can't get Nginx to serve correct certificate chain

I'm trying to set up Nginx (1.4.6-1ubuntu3.1) with a StartSSL certificate. I've been following the documentation to get it working, but Nginx only serves the server certificate, not the intermediate. ...
3
votes
1answer
6k views

Nginx - basic http authentication on PHP-script

I added a PHP-Script that serves as "cgi-bin", Configuration: location ~^/cgi-bin/.*\.(cgi|pl|py|rb) { gzip off; fastcgi_pass 127.0.0.1:9000; fastcgi_index cgi-bin.php; ...
3
votes
2answers
1k views

In Nginx, block user based on X header value

I have 6 Nginx servers behind load balancer. Of course, if I just try to "deny" based on IP address it does not work as the app servers just see the load balancer IP. However, I learned about the ...
2
votes
2answers
4k views

nginx deny user agent causes error when not encapsulated in quotes

I'm trying to deny some user agents I constantly see probing my nginx web server. If I have this in my .conf file ## Block http user agent - morpheus fucking scanner ## if ($http_user_agent ~* ...
2
votes
3answers
12k views

Set nginx.conf to deny all connections except to certain files or directories

I am trying to set up Nginx so that all connections to my numeric ip are denied, with the exception of a few arbitrary directories and files. So if someone goes to my IP, they are allowed to access ...
2
votes
1answer
6k views

Nginx: route to index.php within alias for specific path component

I'm trying to make nginx route to the index.php within an alias for a specific path. It would be easier to just use subdomains (and add serverblocks with different names), but my project requires this ...
2
votes
1answer
2k views

Algorithm behind nginx etag generation

What is the algorithm used to generate etags in Nginx? They look something like "554b73dc-6f0d" now. Are they generated from timestamp only?
2
votes
1answer
930 views

Is it possible to configure Nginx to allow for new domains to be added without me having to add a VirtualHost for each?

I have a SaaS application wherein users can enter their domain names. The application uses the hostname of incoming requests to determine the account based on the domain they entered for their account,...
2
votes
1answer
3k views

(111: Connection refused) while connecting to upstream - Opsworks Rails 4

I deployed a rails 4 application in OpsWorks (Ubuntu 14.04, nginx and unicorn), when I open the homepage I'm getting a 502 Bad Gateway error. In nginx/error.log I can see this error: 2015/01/25 06:19:...
2
votes
6answers
7k views

Get list of user-agents from nginx log

I have nginx log file, and I want to find out market share for each major version of browsers. I am not interested in minor versions and operating systems. I would like to get something like this: ...
1
vote
2answers
3k views

What IP does nginx use for ip_hash sticky sessions?

Does nginx use the direct client's IP for ip_hash, or does it also observe X-forwarded-for HTTP header to use as the IP address to ip_hash? For example, in a situation where some clients using a ...
1
vote
1answer
378 views

Set global handling for PHP scripts in NGINX + PHP-FPM

I have to define fastcgi_pass for every virtual host. How do I define it global-wise? server { listen 80; server_name www.domain.tld; location / { root /home/user/www....
1
vote
3answers
2k views

My webserver is getting flooded with invalid requests

My webserver (nginx) keeps getting requests like this: 23.244.104.206 - - [15/Jun/2014:21:21:47 -0400] "GET http://ib.adnxs.com/ttj?id=2947236&size=300x250&cb={CACHEBUSTER}&referrer={...
0
votes
2answers
4k views

Trouble in Nginx hotlink protection

I am trying to implement image hotlink protection problem in nginx and I need help. I have a huge issue of my site's images being submitted to social networks like StumbleUpon with a direct link like ...
0
votes
1answer
5k views

PHP Errors (via FastCGI) with Nginx on Ubuntu Linode

I setup LEMP (Linux, Nginx, MySQL, and PHP) on a Ubuntu 10.04 server from Linode with the following guide: http://library.linode.com/lemp-guides/ubuntu-10.04-lucid Essentially, I uploaded my PHP ...
0
votes
1answer
3k views

nginx reverse proxy, ssl offloading, caching and pagespeed all in one.

We currently host everything on windows IIS 7 servers. We just moved to Azure, and like many clouds hosting windows is more expensive than hosting linux. Azure has its own limitations for virtual ...
0
votes
2answers
734 views

Nginx how to disable multithread downloads

I was wondering if its possible to disable multithread downloads on nginx. Right now users can use download managers to download a file by splitting a file and I was wondering how I can prevent that ...
9
votes
2answers
1k views

API Management Solutions [closed]

I'm currently building an API and am looking for a tool to allow me to monitor (in a GUI) and rate-limit usage. I've come across a few enterprise solutions including: http://apigee.com/ http://...
8
votes
1answer
2k views

nginx use $server_name on ssl_certificate path

How I can use a variable name in file path ? ssl_certificate /home/ec2-user/.certificados/$server_name.crt; ssl_certificate_key /home/ec2-user/.certificados/$server_name.key;
8
votes
1answer
635 views

What is the size of an atomic write to disk on my system?

In the documentation for the access_log directive, the nginx documentation says The buffer size must not exceed the size of an atomic write to a disk file. How can I determine what this size is ...
8
votes
2answers
2k views

Deploying Django App with Nginx, Apache, mod_wsgi

I have a django app which can run locally using the standard development environment. I want to now move this to EC2 for production. The django documentation suggests running with apache and ...
8
votes
1answer
2k views

What causes a 400 Bad Request error for null (“”) and why would our nginx logs have so many?

Daily logs from Logwatch regularly report 400 Bad Request, null: 1744 Time(s) from our nginx logs. The log entries look like: 123.123.123.123 - - [25/Jan/2011:14:44:19 -0500] "-" 400 173 "-" "-" ...
8
votes
1answer
17k views

How to quick and easy remove part of an URL in Nginx with HttpRewriteModule?

I know about the HttpRewriteModule, but I don't really know how to handle regex and I would need to redirect all URLs within a certain directory to another, specifically example.com/component/tag/...
7
votes
4answers
3k views

Nginx. How do I reject request to unlisted ssl virtual server?

I have a wildcard SSL certificate and several subdomains on the same ip. Now I want my nginx to handle only mentioned server names and drop connection for others so that it'd look like nginx is not ...
7
votes
3answers
10k views

How do you conditionally include files in Nginx vhost?

In the lines below, I might have a site-specific configuration file that contains additional fastcgi_params unique to that site. If this file exists I want to load it. server { listen 80 ...
7
votes
1answer
5k views

Nginx : strip header on HTTP, add header on HTTPS

I'm configuring an Nginx server so as to serve as a reverse proxy to serve a Django app (run on Gunicorn). My problem is that I want my site secured with HTTPS, and so I want my Django app to be able ...
6
votes
3answers
8k views

Nginx + Php5-fpm not rendering php files

I've spent hours figuring out how to install Nginx + Ruby Enterprise Edition + PHP5-fpm and MYSQL, finally it is all installed and all seems to have started fine. But for some reason php files are ...
6
votes
1answer
9k views

nginx rewrite or internal redirection cycle

Im banging my head against a table trying to figure out what is causing redirection cycle in my nginx configuration when trying to access URL which does not exist Configuration goes as follows: ...
6
votes
2answers
484 views

Why might a 413 not be flushed to the client immediately?

I have my local development server returning status 413 for oversized file uploads and the client is receiving these immediately - as I require. My remote server is the same version of Nginx and more-...