在真正安装nginx前需要先检查是否已经安装好nginx的依赖库, 如果没有的话需要先安装依赖库:

  • NGINX安装(一)PCRE安装
  • NGINX安装(二)zlib安装
  • NGINX安装(三)openssl安装

源码安装

NGINX官网提供三个版本,稳定版(stable version)和开发版(mainline version)还有遗留老版本的稳定版(legacy versions).生产环境一般使用的是稳定版,开发板是NGINX官网当前主力开发的版本.在NGINX官网的首页就有当前最新的各种版本.这里我安装的是当前最新稳定版1.16.0

  • 使用命令行安装NGINX,将其安装到/usr/local/nginx目录中
cd /usr/local/
wget http://nginx.org/download/nginx-1.16.0.tar.gz
tar -zxvf nginx-1.16.0.tar.gz
cd nginx-1.16.0
./configure
make %% make install
  • 配置如下,请注意,从–with-pcre开始,这里及以下的参数是你安装的依赖库的源码路径,如果不是按照我前几篇给的依赖库安装教程中的路径配置的话,可能和我的路径参数不同,要按照你自己安装的源码路径来写(最直观的说法就是你的依赖库解压后的进行make编译及make安装的那个路径)
./configure --sbin-path=/usr/local/nginx/nginx \
--conf-path=/usr/local/nginx/nginx.conf \
--pid-path=/usr/local/nginx/nginx.pid \
--with-http_ssl_module \
--with-pcre=/usr/local/src/pcre-8.43 \
--with-zlib=/usr/local/src/zlib-1.2.11 \
--with-openssl=/usr/local/src/openssl-1.0.2s
  • 需要等待一小会,然后就可以进行make编译及make安装了
make && make install
  • 在这里也是需要一小会时间等待编译完成,编译完成后需要查看一下nginx所需要的80端口是否被占用
netstat -ano|grep 80
  • 确认没有占用后执行以下命令启动NGINX
sudo /usr/local/nginx/nginx
  • 这时候打开浏览器,输入localhost或127.0.0.1也就是本机地址,回车,看见nginx欢迎界面,恭喜你,NGINX已经部署成功啦

常用命令(以下命令必须要在/usr/local/nginx目录下执行)

查看版本号

./nginx -v

服务启动

./nginx

服务停止

./nginx -s stop

服务重新加载

./nginx -s reload

基于apt源安装

sudo apt install nginx

nginx主程序: /usr/sbin/nginx
存放配置文件: /etc/nginx
存放静态文件: /usr/log/nginx
存放日志: /var/log/nginx

这种方式安装会自动创建服务. 在/etc/init.d/nginx新建服务脚本, 使用

sudo service nginx 动作

启动服务

如果没有启动成功, 可以查看一下80端口是否开启了

firewall-cmd --list-all

如果没有开启的话, 设置开启

firewall-cmd --add-service=http -permanent
sudo firewall-cmd --add-port=80/tcp --permanent

例如sudo firewall-cmd --add-port=8080/tcp --permanent

然后重新加载防火墙

firewall-cmd -reload

常用命令

查看版本号
进入主程序的目录(因为安装方式的不一样所以目录也不一样)

cd /usr/sbin/nginx

然后输入以下命令查看版本号

./nginx -v

服务启动

sudo service nginx start

可以使用命令查看nginx是否启动了

ps -ef | grep nginx

服务停止

sudo service nginx stop

服务重加载

sudo service nginx reload

Done.
参考:
http://www.nginx.cn/install (注意,这里面的命令参数可能会有错误,虽然在我这篇安装教程中已经经过整理和解析了,但在参考的时候也请三思,若有什么需要修正的地方请指出)