1、添加Nginx到yum源

在终端执行指令

rpm -Uvh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm

添加成功示例:

centos7 net转发_80端口

2、安装Nginx

在终端执行

yum install -y nginx

安装成功示例:

centos7 net转发_配置文件_02

使用以上指令安装成功后文件是保存在 /etc/nginx 目录下。

3、进入/etc/nginx目录:

cd /etc/nginx

在当前目录可以对nginx进行开启、关闭等操作。

如果想自定义存放nginx的目录,可以用 mv

  (1)切换到/etc/nginx目录

cd /etc/nginx

  (2)移动文件。把整个nginx文件夹移动到 /usr/local目录下

mv nginx /usr/local/

  (3)修改配置。因为修改了nginx的存放目录。它的配置文件也要跟着改变。需要修改的配置文件:服务单元配置文件 (nginx.service),nginx配置文件(nginx.conf)

   修改服务单元配置文件(nginx.service)

   执行指令进入编辑器编辑nginx.service:

vi /usr/lib/systemd/system/nginx.service

按下字母 i 进入输入状态修改nginx的存放目录。如 /usr/local/nginx/ 

centos7 net转发_80端口_03

按下 esc 键 退出输入状态,然后输入 :wq

    修改nginx配置文件(nginx.conf):

    执行指令:

vi /usr/local/nginx/nginx.conf

按下字母 i 进入输入状态修改nginx的存放目录。如 /usr/local/nginx/  

centos7 net转发_配置文件_04

按下 esc 键 退出输入状态,然后输入 :wq

4、查看端口占用

开启nginx服务之前先看看80端口有没有被占用,nginx的端口号默认是80端口。

执行指令查询80端口有没有被占用:

fuser -u -n tcp 80

被占用示例:

centos7 net转发_centos7 net转发_05

杀死端口占用进程:图中13808(root) [13808是进程号]

执行指令:

kill -9 进程号

5、nginx基础指令

# 运行nginx指令
systemctl start nginx.service

# 关闭nginx指令
systemctl stop nginx.service

# 重启nginx指令
systemctl reload nginx.service

# 查看nginx运行状态指令
systemctl stauts nginx.service

6、运行nginx

执行指令:

systemctl start nginx.service

运行指令后在浏览器输入自己服务器的公网IP地址,无需输入端口号,直接输入公网ip就可以。如果出现以下页面说明nginx安装成功。 

centos7 net转发_运维_06

7、配置域名转发

编辑nginx.conf配置文件(注意要在nginx存放目录下)

执行指令:

vi nginx.conf

进入配置文件编辑示例页面: 

centos7 net转发_运维_07

按字母 i 进入输入状态编辑添加以下内容:

注意:要转发的项目必须是能够正常访问的项目。

server
    {
        listen 80;
        server_name 127.0.0.1;
        location / {
            proxy_redirect off;
            proxy_set_header Host $host;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_pass http://127.0.0.1:8086;   # 修改成要转发的项目端口路径
        }
   
    }

添加内容后的配置文件示例:

centos7 net转发_centos7 net转发_08

添加完成后按 esc 键退出输入状态 。然后输入 :wq 退出编辑器

输入指令重启nginx:

systemctl reload nginx.service

在浏览器输入公网ip不加端口访问显示的不再是 welcome to nginx 而是项目运行界面说明配置转发成功。

转发成功示例:

centos7 net转发_centos7 net转发_09

如果想要域名访问而不是公网ip可以自己选择一个域名服务商购买域名并在域名控制台添加解析记录就可以实现域名访问。前提是域名要备案成功。