Mac 非自酿方式安装 nginx 教程 - 注意
1.这里的参数 --with-pcre 要设置为pcre的源码文件目录,而不是pcre的实际安装目录,不然就会报错:
make[1]: *** [/usr/local/include/pcre//Makefile] Error 127
2.上面我们给nginx配置的openssl是Mac自带的,所以会报错:
[/usr/local/openssl//.openssl/include/openssl/ssl.h] Error 127
因此我们还需要安装自定义的openssl。
三、安装openssl
我们使用源码来安装openssl。
1.GitHub官网下载源码
2.解压源码,并上传到目录/usr/local/abc
3.在/usr/local目录创建openssl目录,作为openssl的安装路径
4.配置openssl cd到目录/usr/local/abc/openssl-master,将目录/usr/local/etc/openssl设置为安装目录
sudo ./config --prefix=/usr/local/etc/openssl
5.编译并安装
sudo make
sudo make install
四、继续配置nginx
1.配置 nginx
sudo ./configure --with-pcre=/usr/local/abc/pcre-8.44 --prefix=/usr/local/etc/nginx --with-http_stub_status_module --with-http_ssl_module --with-cc-opt="-Wno-deprecated-declarations" --with-openssl=/usr/local/etc/openssl/
注意
但是还是报错
[/usr/local/openssl//.openssl/include/openssl/ssl.h] Error 127
根据报错信息我们知道,出错是因为Nginx在编译时并不能在/usr/local/openssl/.openssl/ 这个目录找到对应的文件,其实我们打开/usr/local/openssl/这个目录可以发现这个目录下是没有.openssl目录的,因此我们修改Nginx编译时对openssl的路径选择就可以解决这个问题了.
a.打开nginx源文件下的/usr/local/abc/nginx-1.18.0/auto/lib/openssl/conf文件,将:
CORE_INCS="$CORE_INCS $OPENSSL/.openssl/include"
CORE_DEPS="$CORE_DEPS $OPENSSL/.openssl/include/openssl/ssl.h"
CORE_LIBS="$CORE_LIBS $OPENSSL/.openssl/lib/libssl.a"
CORE_LIBS="$CORE_LIBS $OPENSSL/.openssl/lib/libcrypto.a"
CORE_LIBS="$CORE_LIBS $NGX_LIBDL"
改成:
CORE_INCS="$CORE_INCS $OPENSSL/include"
CORE_DEPS="$CORE_DEPS $OPENSSL/include/openssl/ssl.h"
CORE_LIBS="$CORE_LIBS $OPENSSL/lib/libssl.a"
CORE_LIBS="$CORE_LIBS $OPENSSL/lib/libcrypto.a"
CORE_LIBS="$CORE_LIBS $NGX_LIBDL"
这样继续配置nginx,不出意外就可以配置成功了。
5.编译、安装 nginx
sudo. make
sudo make install
6.启动 nginx cd到/usr/local/etc/nginx/sbin,输入命令启动nginx
sudo ./nginx
启动成功后,在浏览器输入localhost,就可以访问nginx。
五、关于nginx的一些常用命令
a.查看nginx是否启动成功
ps -ef|grep nginx
如图表示启动成功。
b.停止nginx
cd到nginx的安装目录/usr/local/nginx下的sbin目录,输入如下命令。
nginx -s stop