Skip to content

Instantly share code, notes, and snippets.

@beatfactor
Last active December 3, 2023 13:20
Show Gist options
  • Star 67 You must be signed in to star a gist
  • Fork 16 You must be signed in to fork a gist
  • Save beatfactor/a093e872824f770a2a0174345cacf171 to your computer and use it in GitHub Desktop.
Save beatfactor/a093e872824f770a2a0174345cacf171 to your computer and use it in GitHub Desktop.
Install Nginx on Mac OS from source (without brew)

Install Nginx on Mac OS from source

no Homebrew required

1. Download Nginx

$ cd /usr/local/src
$ curl -OL http://nginx.org/download/nginx-1.12.2.tar.gz
$ tar -xvzf nginx-1.12.2.tar.gz && rm nginx-1.12.2.tar.gz

2. Download the PCRE library

The PCRE library distribution (version 4.4 — 8.41) needs to be downloaded from the PCRE site and extracted. The rest is done by nginx’s ./configure and make. PCRE is required for the http_rewrite_module, and also for regular expressions support in the location directive.

$ curl -OL https://ftp.pcre.org/pub/pcre/pcre-8.41.tar.gz
$ tar xvzf pcre-8.41.tar.gz && rm pcre-8.41.tar.gz

3. Configure Nginx

See the full list of ./configure options: http://nginx.org/en/docs/configure.html.

$ cd nginx-1.12.2/

Compile nginx without SSL support

$ ./configure --with-pcre=../pcre-8.41/ 

with SSL support

Download OpenSSL sources and extract:

$ curl -OL https://www.openssl.org/source/openssl-1.1.0.tar.gz
$ tar xvzf openssl-1.1.0.tar.gz && rm openssl-1.1.0.tar.gz 

Compile Nginx:

$ cd ../nginx-1.12.2/
$ ./configure --with-pcre=../pcre-8.41/ --with-http_ssl_module --with-openssl=/usr/local/src/openssl-1.1.0

4. Install Nginx

$ [sudo] make && make install

Add the nginx binary to $PATH:

export PATH="/usr/local/nginx/sbin:$PATH"
@Albertocrypto
Copy link

when installing Nginx with sudo gives me this error, can anybody help me please:

/Library/Developer/CommandLineTools/usr/bin/make -f objs/Makefile
cd ../pcre-8.41/
&& if [ -f Makefile ]; then /Library/Developer/CommandLineTools/usr/bin/make distclean; fi
&& CC="cc" CFLAGS="-O2 -pipe "
./configure --disable-shared
/bin/sh: line 0: cd: ../pcre-8.41/: No such file or directory
make[1]: *** [../pcre-8.41//Makefile] Error 1
make: *** [build] Error 2

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment