目录
Linux安装步骤
安装nginx依赖
安装编译环境gcc g++
Nginx是使用C语言编写的程序,因此想要运行Nginx就需要安装一个编译工具。GCC就是一个开源的编译器集合,用于处理各种各样的语言,其中就包含了C语言,安装成功后,可以通过
gcc --version
来查看gcc是否安装成功。
yum install -y gcc
安装PCRE
Nginx在编译过程中需要使用到PCRE库(perl Compatible Regular Expressoin 兼容正则表达式库),因为在Nginx的Rewrite模块和http核心模块都会使用到PCRE正则表达式语法,可以通过yum命令直接安装,yum install -y pcre pcre-devel ,安装成功后可以通过命令 rpm -qa pcre pcre-devel 测试是否安装成功。下面通过源码方式安装
下载
PCRE功能是让nginx有rewrite功能,下载PCRE:
wget http://downloads.sourceforge.net/project/pcre/pcre/8.35/pcre-8.35.tar.gz
解压
tar zxvf pcre-8.35.tar.gz
编译安装
进入安装包目录:
cd pcre-8.35
编译:
./configure
安装:
make && make install
如果在安装过程中缺少其它依赖,根据报错信息进行安装即可,比如如果缺少 gcc依赖包会报错:
You need a C++ compiler for C++ support
只要安装gcc依赖即可,安装指令如下:
yum install -y gcc gcc-c++
安装zlib
zlib库提供了开发人员的压缩算法,在Nginx的各个模块中需要使用gzip压缩,所以我们也需要提前安装其库及源代码zlib和zlib-devel。
yum install -y zlib zlib-devel 安装
rpm -qa zlib zlib-devel 验证是否安装成功
安装OpenSSl
OpenSSL是一个开放源代码的软件库包,应用程序可以使用这个包进行安全通信,并且避免被窃听。
yum install -y openssl openssl-devel 安装
rpm -qa openssl openssl-devel 验证是否安装成功
安装Nginx
回到root目录: cd /root/
下载
wget http://nginx.org/download/nginx-1.20.2.tar.gz
解压
tar zxvf nginx-1.20.2.tar.gz
编译安装
进入解压目录:
cd nginx-1.20.2
编译:
// stream 模块也是很常用的 这里一起添加上 如果你不需要只执行 ./configure 即可
./configure --with-stream
安装:
make && make install
添加软连:
ln -s /usr/local/nginx/sbin/nginx /usr/local/bin
修改阿里云组策略
阿里云的云服务器实例安全组策略中添加80端口和443端口的开启。
相关命令
进入sbin目录:
cd /usr/local/nginx/sbin
启动:
./nginx
停止:
有两种方式:
方式1:快速停止
./nginx -s stop
此方式相当于先查出nginx进程id再使用kill命令强制杀掉进程。不太友好。
方式2:平缓停止
./nginx -s quit
此方式是指允许 nginx 服务将当前正在处理的网络请求处理完成,但不在接收新的请求,之后关闭连接,停止工作。
重启:
方式1:先停止再启动
./nginx -s quit
./nginx相当于先执行停止命令再执行启动命令。
方式2:重新加载配置文件
./nginx -s reload
通常我们使用nginx修改最多的便是其配置文件 nginx.conf。修改之后想要让配置文件生效而不用重启 nginx,便可以使用此命令。
检查
配置完成后,检查一下nginx配置文件是否可用,有successful表示可用。
nginx -t
使配置生效
配置正确后,重新加载配置文件使配置生效:
nginx -s reload
访问
浏览器访问你的ip地址,如 http://118.112.139.28/ 如下:
Windows安装步骤
下载
安装启动
只需解压就可以,直接运行 nginx.exe 就可以启动,或者你可以通过cmd窗口运行命令 nginx.exe 都是可以的。
检查nginx是否启动成功
直接在浏览器地址栏输入网址 http://localhost:80,回车,出现以下页面说明启动成功:
补充
下载地址
错误处理
nginx: [error] open() "/usr/local/nginx/logs/nginx.pid" failed (2: No such file or directory) 解决方法:
指定nginx.conf重启启动后就会自动生成nginx.pid文件:
/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
版本升级中的错误
执行 make upgrade 命令时报错:
kill -USR2 `cat /usr/local/nginx/logs/nginx.pid`
kill: usage: kill [-s sigspec | -n signum | -sigspec] pid | jobspec ... or kill -l [sigspec]
make: *** [upgrade] Error 1
解决: 指定nginx.conf重启启动,再执行 upgrade 命令。