文章目录

  • 1. apt安装
  • 2. 编译安装
  • 2.1 启动Nginx
  • 3. 防火墙问题


1. apt安装

# 默认版本安装
apt-get update
apt-get install nginx

# 选择版本安装
apt-get update
apt-cache show nginx
apt-get install nginx=1.18.0-0ubuntu1.3
# 启动
service nginx start

# 重启
service nginx restart
# 热重载
nginx -s reload 

# 检查配置文件是否正确
nginx -t
# 重新加载配置文件
nginx -s reload

# 查看安装nginx时使用的命令
nginx -V

# 快速停止
service nginx stop

# 处理完当前请求后停止
service nginx quit

ubuntu nginx 改为非80端口号 ubuntu部署nginx_nginx

默认安装目录

/usr/sbin/nginx:主程序
/etc/nginx:存放配置文件
/usr/share/nginx:存放项目文件
/var/log/nginx:存放日志
或
/var/www/html:存放项目目录
/var/log/nginx:存放日志   

一般自动安装配置文件目录和主程序目录不变,因为版本原因,其它目录可能会变,但是都可以从配置文件里ngxin.conf里找到对应的位置。

2. 编译安装

Nginx常用版本

  1. Nginx开源版:http://nginx.org/
  2. Nginx plus 商业版:https://www.nginx.com
  3. openresty:http://openresty.org/cn/
  4. Tengine:http://tengine.taobao.org/

以开源版为例。

下载并解压后可以看到安装包结构。

wget http://nginx.org/download/nginx-1.13.7.tar.gz
tar -xvf nginx-1.13.7.tar.gz

ubuntu nginx 改为非80端口号 ubuntu部署nginx_配置文件_02

1.先安装依赖包

apt-get install gcc
apt-get install libpcre3 libpcre3-dev
apt-get install zlib1g zlib1g-dev
# Ubuntu14.04的仓库中没有发现openssl-dev,由下面openssl和libssl-dev替代
#apt-get install openssl openssl-dev
sudo apt-get install openssl 
sudo apt-get install libssl-dev

2.安装nginx
--prefix=后面的是安装目录,也可以不指定。

# 依次执行以下命令
./configure --prefix=/usr/local/nginx
make
make install

不指定安装目录时,默认位置为

/usr/sbin/nginx:主程序
/etc/nginx:存放配置文件
/usr/share/nginx:存放项目文件
/var/log/nginx:存放日志

一般自动安装配置文件目录和主程序目录不变,因为版本原因,其它目录可能会变,但是都可以从配置文件里ngxin.conf里找到对应的位置。

2.1 启动Nginx

进入安装好的目录 /usr/local/nginx/sbin

./nginx 启动
./nginx -s stop 快速停止
./nginx -s quit 在退出前完成已经接受的连接请求
./nginx -s reload 重新加载配置

ps -ef | grep nginx 查看有关nginx的进程

网页输入ip地址,访问成功,即安装完成。

ubuntu nginx 改为非80端口号 ubuntu部署nginx_配置文件_03

3. 防火墙问题

ubuntu
Ubuntu默认使用ufw来管理防火墙,系统已经默认安装,若没有可重新安装。

1.安装
sudo apt-get install ufw

2.启用
sudo ufw enable
sudo ufw default deny
运行以上两条命令后,开启了防火墙,并在系统启动时自动开启。
关闭所有外部对本机的访问,但本机访问外部正常。
# 1.查看防火墙状态
ufw status
# 2.防火墙版本
ufw version

# 3.开启/禁用
sudo ufw allow|deny [service]
# 举例
ufw allow smtp #允许所有的外部IP访问本机的25/tcp (smtp)端口
ufw deny smtp #禁止外部访问smtp服务
ufw allow 22/tcp #允许所有的外部IP访问本机的22/tcp (ssh)端口
ufw allow 53 #允许外部访问53端口(tcp/udp)
ufw allow from 192.168.1.100 # 允许此IP访问本机所有端口
ufw delete allow smtp #删除上面建立的某条规则

# 4.开启/关闭防火墙
ufw enable|disable

# 5.开启/关闭日志
ufw logging on|off

Centos

# 1.防火墙状态查看
systemctl status firewalld

# 2.关闭防火墙
systemctl stop firewalld.service

# 3.开启防火墙
systemctl start firewalld.service

# 4.查看开机是否启动防火墙服务
systemctl is-enabled firewalld

# 5.禁止防火墙开机启动
systemctl disable firewalld.service

# 6.开机自动启动
systemctl enable firewalld.service

# 7.放行端口
firewall-cmd --zone=public --add-port=80/tcp --permanent

# 8.重启防火墙
firewall-cmd --reload