--现在阅读的你,如果是个FE,相信你不是个纯切图仔。反之,如果是,该进阶了,老铁!
前端的我们,已经不仅仅是做页面,写样式了,我们还需要会做相关的服务器部署。废话不多说,下面就从前端的角度来讲以下nginx的相关使用。
  • 给我们的静态资源启一个web 服务
  • 给我们的nodejs 的项目设置反向代理,80端口访问
  • 给我们的接口做转发
  • 设置跨域请求
  • 配置https服务的请求接口

一、登录云服务器

 
首先你得有一台linux服务器(用你电脑起个本地服务也OK,这里不做这个介绍,我们用的是云服务器),如果没有,你可以上相关的云服务实验室开 1、2个小时的服务器玩玩也行,这里推荐 阿里云的 https://edu.aliyun.com/lab/ ,和腾讯云的 https://cloud.tencent.com/developer/labs/gallery 。下面是取阿里云开放实验室的服务器演示:
 

登录服务器:

 

二、安装nginx (源码编译安装)

1、安装nginx 的相关依赖

yum -y install gcc pcre pcre-devel zlib zlib-devel openssl openssl-devel
 

2. 下载nginx包

wget http://nginx.org/download/nginx-1.15.8.tar.gz
 
解压:
tar -zxvf nginx-1.15.8.tar.gz
 
 

3.编译安装

3.1、 配置nginx安装选项

./configure --prefix=/usr/local/nginx
 

3.2、编译安装

make && make install
 
 

3.3、启动、查看进程

/usr/local/nginx/sbin/nginx 
ps -ef | grep nginx
 
 
查看网页,nginx 启动成功。
 
补充命令:
/usr/local/nginx/sbin/nginx -t // 查看nginx 配置文件是否语法正确
/usr/local/nginx/sbin/nginx -s reload // 重新加载nginx 配置
/usr/local/nginx/sbin/nginx -s stop // 停止nginx
 
我们要修改nginx 的基本配置, 做以下步骤:
cd /usr/local/nginx
mkdir vhosts
cd vhosts
vim active.conf
按 esc
在按 :wq 保存并退出
修改nginx.conf
vim /usr/local/nginx/nginx.conf
在倒数第二行添加 include vhosts/*.conf
(以上nginx 的安装路径,可以自己自由选择),
 
⬆️⬆️⬆️⬆️⬆️⬆️⬆️⬆️⬆️⬆️⬆️⬆️⬆️⬆️⬆️
注意:下面具体的演示案例,是我个人的服务器,使用的是域名访问, 上面的实验服务器的时长限制,没办法做很多的业务操作。
====到这里基本上配置好nginx 的使用和扩展,下面就是我们要利用 nginx 实现一些功能了。====

三、使用nginx

1、给我们的静态资源启一个web 服务

vim /usr/local/nginx/vhosts/active.conf ,将server 模块写进去,
server  {
        listen 8008;
        server_name localhost;
        root /usr/myfile/dist;
        index index.html;
}
 
访问:
 

2、接口转发, 跨域请求

server {

        server_name vue.wtodd.wang;
        charset utf-8;
        location /nodejsapi/ {
            proxy_pass http://localhost:5000/;
        }
 
}
实际请求 http://localhost:5000/ 的接口,被代理到请求该域名de /nodejsapi/ 下
访问:
 
 

3、给我们其他端口启动的nodejs 项目设置反向代理到80端口访问

server	{
	listen 80;
	server_name csa.scampus.cn;
	location / {
		proxy_pass http://127.0.0.1:8000;
	}
}
页面访问:
实际项目访问地址:
 

4、配置https服务的请求接口

这里涉及到了https 证书的配置,这里不牵涉这个话题,这里https://help.aliyun.com/document_detail/28548.html?spm=a2c4g.11186623.6.556.31ae62aaoYIZQr 是阿里云的免费https 证书,可参照该步骤。
有人说,前端为什么还要https 的服务? 微信小程序的服务接口,需要走https 的哇!我们做demo,不要自己会配置一下吗,省得找后台哇

nginx,作为前端的你会多少?的更多相关文章

  1. Nginx与前端开发

    Nginx与Node.js "Nginx是一款轻量级的HTTP服务器,采用事件驱动的异步非阻塞处理方式框架,这让其具有极好的IO性能,时常用于服务端的反向代理和负载均衡." 作为前 ...

  2. 测试 Nginx 作为前端下各种模式的性能

    测试环境: 1:Nginx 独立处理静态面页请求 5000,开了60个线程 2:Nginx作为前端请求转给 Weblogic 12c 处理 (Spring 4.0平台下的动态面页效果如图) 3:Ngi ...

  3. Nginx 是前端工程师的好帮手

    Nginx [engine x] 是俄罗斯的 Igor Sysoev 编写的一个 强大的 HTTP 和反向代理服务器,而且也推出了 Windows 版本.Windows 版本使用 select 模型, ...

  4. Nginx部署前端代码实现前后端分离

    实现前后端分离,可以让前后端独立开发.独立部署.独立单测,双方通过JSON进行数据交互. 对于前端开发人员来说,不用每次调试都需要启动或配置Java/Tomcat运行环境:对于后端开发人员来说 ,也不 ...

  5. 通过nginx部署前端代码实现前后端分离

    实现前后端分离,可以让前后端独立开发.独立部署.独立单测,双方通过JSON进行数据交互. 对于前端开发人员来说,不用每次调试都需要启动或配置Java/Tomcat运行环境:对于后端开发人员来说 ,也不 ...

  6. Nginx处理前端跨域(补充)

    在之前的博客中提到了用nginx来处理前后端跨域问题,用Nginx代理请求,处理前后端跨域 ,虽然解决当时了问题,但是在实际使用中还是不好用,当时应对的只是对单接口的处理,如果一个页面需要调用两个不同 ...

  7. 在docker中使用nginx部署前端项目

    前言 部署了三个nginx用于前端项目, 并使用keepalived部署好热备, 所以总共有5个nginx 创建好nginx的文件和配置 根据上面的指令创建好目录 mkdir /home/web/ng ...

  8. Nginx做前端Proxy时TIME_WAIT过多的问题

    我们的DSP系统目前基本非凌晨时段的QPS都在10W以上,我们使用Golang来处理这些HTTP请求,Web服务器的前端用Nginx来做负载均衡,通过Nginx的proxy_pass来与Golang交 ...

  9. Keepalived+Nginx提供前端负载均衡+主从双机热备+自动切换

    原文链接:http://unun.in/linux/156.html 方案: 采用两台Nginx服务器作为前端,提供静态web内容,分发web请求,一主一从,Keepalived实现状态监测,保证 N ...

随机推荐

  1. RMQ 问题 ST 算法(模板)

    解决区间查询最大值最小值的问题 用 $O(N * logN)$ 的复杂度预处理 查询的时候只要 $O(1)$ 的时间  这个算法是 real 小清新了   有一个长度为 N 的数组进行 M 次查询 可 ...

  2. Linux 安装多个版本JDK并设置默认版本

    1 官网下载JDK版本 jdk-8u181-linux-x64.tar.gz 2 利用ssh工具上传安装包到Linux系统 传至:/usr/local 3 Linux用户安装的程序一般放在 /usr/ ...

  3. DAY20、垃圾回收机制,正则模块

    一.垃圾回收机制1.不能被程序访问到的数据,就称之为垃圾2.引用计数:每一次对值地址的引用都可以使该值得引用计数加1 每一次对值地址的释放都可以使该值得引用计数减一 当一个值的引用计数为0时,该值就会 ...

  4. Python基础:第一个Python程序(2)

    1.Python Shell 1.1 Windows命令 (1)[开始]|[运行],输入cmd回车,进入Windows命令界面. (2)输入python,回车,进入Python Shell. 1.2 ...

  5. json打不开

  6. python高级编程和算法

    import copy #a = ("a","b","c") #a = ["a","b"," ...

  7. C++继承(一) 三种继承方式

    继承定义 继承是使代码可以复用的重要手段,也是面向对象程序设计的核心思想之一. 继承就是不修改原有的类,直接利用原来的类的属性和方法并进行扩展.原来的类称为基类,继承的类称为派生类,他们的关系就像父子 ...

  8. Codeforces 1093D Beautiful Graph(二分图染色+计数)

    题目链接:Beautiful Graph 题意:给定一张无向无权图,每个顶点可以赋值1,2,3,现要求相邻节点一奇一偶,求符合要求的图的个数. 题解:由于一奇一偶,需二分图判定,染色.判定失败,直接输 ...

  9. java 11 实现RFC7539中指定的ChaCha20和Poly1305两种加密算法, 代替RC4

    实现 RFC 7539的ChaCha20 and ChaCha20-Poly1305加密算法 RFC7748定义的秘钥协商方案更高效, 更安全. JDK增加两个新的接口 XECPublicKey 和 ...

  10. C语言博客作业06——结构体&文件

    C语言博客作业06--结构体&文件 1.本章学习总结 1.1思维导图 1.2.本章学习体会 在本周的学习中,我们学习了关于结构体和文件的内容.结构体的本身并不难,但以结构体为基础的链表还是让我 ...