前端与Nginx的不解之缘——Nginx配置和Code部署

nginx.png

这是我参与新手入门的第一篇文章html

人的一辈子总会与不一样的人或者不一样的物结下不解之缘,而与咱们前端开发结下不解之缘的就有Nginx。
这篇文章不会告诉你详细的使用,只会让你完成Nginx环境的配置和项目代码的部署,我想这足以知足大部分人的需求。
复制代码

简单了解 Nginx

Nginx 究竟是什么?前端

  • Nginx (engine x) 是一个高性能的HTTP和反向代理web服务器,同时也提供了IMAP/POP3/SMTP服务。
  • Nginx是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,在BSD-like 协议下发行。

Nginx 特色:ios

  • 占有内存少
  • 并发能力强

Nginx 说白了就是咱们前端须要部署代码的服务器,在这个服务器上咱们能够两件事:1.获取数据的时候,能够对请求地址进行代理配置;2.把代码放在这个服务器上,别人就能够经过地址来访问咱们的项目。 固然这个有个前提:网络环境要容许别人访问。nginx

Nginx 环境配置

Windows 系统下,咱们能够随便放在一个位置,解压文件夹,经过双击nginx.exe启动,此过程简单易学,就不加以赘述。下面是Linux系统的配置状况:c++

安装依赖

俗话说,工欲善其事,必先利其器。在环境配置以前咱们要下载好须要的依赖。web

yum -y install make zlib zlib-devel gcc-c++ libtool  openssl openssl-devel
复制代码

下载压缩包(nginx的某个版本.tar.gz),Nginx 下载地址axios

建议下载稳定版本(Stable version),下面所讲内容以nginx-1.18.0为例
复制代码

安装步骤

  1. 进入到安装目录
cd /usr/local
复制代码
  1. 上传文件,选择下载的压缩包
rz
复制代码
  1. 解压压缩包
tar -zxvf nginx-1.18.0.tar.gz
复制代码
  1. 进入解压后的文件夹
cd nginx-1.18.0
复制代码
  1. 明确接下来编译文件的安装位置
./configure --prefix=/usr/local/nginx-1.18.0
复制代码
  1. 编译
make
make install
复制代码

编译成功会出现sbin文件夹,若未出现,需检查是否报错。vim

启动服务

进入sbin文件夹,启动服务api

cd sbin	
./nginx
复制代码

执行以上命令后,一般会报如下错误,表示缺乏日志文件。bash

nginx:  open() "/usr/local/nginx-1.18.0/logs/error.log" failed (2: No such file or directory)
open() "/usr/local/nginx-1.18.0/logs/access.log" failed (2: No such file or directory)
复制代码

解决方案以下(经过以上报错,咱们须要回退到nginx-1.18.0文件夹):

mkdir logs		建立logs文件夹
touch error.log		建立error.log文件
touch access.log	建立access.log文件
复制代码

再次进入 sbin 文件夹,输入 ./nginx 后就启动成功了。

代理配置

  1. 配置步骤
cd /usr/local/nginx-1.18.0/conf    
vim nginx.conf		编辑nginx.conf文件
按键盘 a 键		开始编辑
按键盘 esc 键	        退出编辑
:wq			保存并退出
复制代码
  1. 配置内容(sever里面的部分配置,但这些足以知足大多数人的需求)
server {
	# 端口号修改
        listen       8088;
        
	# 域名修改 默认:localhost
        server_name  xxx.yyy.com;

        location / {
            root   html;
            index  index.html index.htm;
        }

        # 配置代理 
	# /var 发送请求以此开头 例:axios.get(/var/api路径)  var是个变量,能够取任意名字
	# http://ip:port 代理地址
        location /var {
            rewrite  ^.+var/?(.*)$ /$1 break;
            include  uwsgi_params;
            proxy_pass   http://ip:port;
        }
}
复制代码
  1. 验证配置是否正确
cd /usr/local/nginx-1.18.0/sbin
./nginx -t
复制代码

如出现如下信息,则表示配置成功,不然须要检查错误缘由

nginx.conf syntax is ok
nginx.conf test is successful
复制代码

Code 部署

  1. 首先找到部署目录
cd /usr/local/nginx-1.18.0/html
或
利用文件传输工具直接进入
复制代码
  1. 部署代码
rz   上传项目压缩包 xxx.zip
unzip xxx.zip
复制代码

总结

  1. 若是缺乏命令,须要下载对应的命令
  2. 经常使用的 Nginx 命令
./nginx -s stop			中止
./nginx -s quit			退出
./nginx -s reload		重启加载
复制代码
  1. 我实际碰到的问题,但愿能够给你带来参考
  • ping ip 机器是否能够ping通访问机器
  • 防火墙 端口号是否容许被访问,默认80有防火墙设置
  • 最基础的一点:ip地址有没有配置到可访问虚拟机上,好比阿里云,华为云等。!!!我当时由于这个缘由校验了好久,其余的配置都是通的,而后外部机器不能访问,后来被通知,ip没有配置。
相关文章
相关标签/搜索