OnOpenBSD

Install the PCRE library
It is advised you be familiar with installing packages on OpenBSD before proceeding. You can find OpenBSD's package documentation here. $ sudo pkg_add -v pcre

Download and extract the nginx sources
Make sure to appropriately substitute the version numbers below: $ wget http://sysoev.ru/nginx/nginx-X.X.XX.tar.gz $ tar -xzvf nginx-X.X.XX.tar.gz

Configure the Makefile
$ cd nginx-X.X.XX/

$ ./configure --sbin-path=/usr/local/sbin/nginx \ --conf-path=/etc/nginx/nginx.conf \ --pid-path=/var/run/nginx.pid \ --with-http_ssl_module \ --http-log-path=/var/log/nginx.log \ --error-log-path=/var/log/nginx-error.log \ --http-fastcgi-temp-path=/var/tmp/fastcgi_tmp \ --http-proxy-temp-path=/var/tmp/proxy_tmp \ --http-client-body-temp-path=/var/tmp/client_body_temp \ --with-http_stub_status_module \ --user=www --group=www

Compile and install
$ make && sudo make install After nginx has been installed, make sure to edit /etc/nginx/nginx.conf according to your needs.

Log files
By default, nginx saves its logs as /var/log/nginx.log and /var/log/nginx-error.log. You may wish to configure nginx so that it saves its logs on a per-host basis.

Initializing Mongrel Cluster from your path/to/app/rails/
You can take the sample nginx.conf file from http://wiki.codemongers.com/NginxRubyonRailsMongrel and adjusting it to app

$ cd /var/www/rails_app/ $ sudo mongrel_rails cluster::configure $ sudo mongrel_rails cluster::start

Starting nginx
$ sudo /usr/local/sbin/nginx

Testing, appoint your browser to rails app (localhost, default here)
$ lynx http://localhost

Restarting nginx
$ sudo kill -HUP $(head -1 /var/run/nginx.pid)

Shutting down nginx
$ sudo kill -QUIT $(cat /var/run/nginx.pid)

Final notes
The initial motivation for this article was a rapid introduction to install and setup nginx on OpenBSD. Currently exist a port under /usr/ports/www/nginx. It can be the best way to install and handle new nginx versions on this Operating System.

Whenever it article is nice and functional.