Ubuntu 下NGINX 的简单使用

1.NGINX的安装与卸载

1.1.安装NGINX

apt-get install nginx

1.2.NGINX操作命令

service nginx start  #启动
service nginx reload #重新加载配置文件
service nginx restart #重启
service nginx status #查看运行状态

1.3.卸载NGINX

apt-get remove nginx nginx-common # 卸载删除除了配置文件以外的所有文件。
apt-get purge nginx nginx-common # 卸载所有,包括删除配置文件。
apt-get autoremove # 在上面命令结束后执行,主要是卸载删除Nginx的不再被使用的依赖包。
apt-get remove nginx-full nginx-common #卸载删除两个主要的包。

2.NGINX配置

2.1.开启gzip压缩

在nginx.conf的http {}块中增加下述配置,则开启gzip压缩

	gzip on;
	# 开启 gzip_static
	# gzip_static 开启后可能会报错,需要安装相应的模块, 具体安装方式可以自行查询
	# 只有这个开启,前端打包的 .gz 文件才会有效果,否则不需要开启 gzip 进行打包
	gzip_static on;
	gzip_proxied any;
	gzip_min_length 1k;
	gzip_buffers 4 16k;
	# 如果 nginx 中使用了多层代理,必须设置这个才可以开启 gzip
	gzip_http_version 1.0;
	gzip_comp_level 2;
	gzip_types text/plain application/javascript application/x-javascript text/css application/xml text/javascript application/x-httpd-php image/jpeg image/gif image/png;
	gzip_vary off;
	gzip_disable "MSIE [1-6]\.";

Ubuntu 下NGINX 的简单使用_第1张图片

 2.2.配置一个网站服务,并且支持跨域访问后台API

server {
    listen 8080; #网站端口
    server_name www.myservice.com; #网站名称
    location / {
        root   /opt/gnss/mysystem/dist; #存储前端打包的文件目录
        index index.html; #默认页面
		try_files $uri $uri/ /index.html; 
    }
	location /api/ {
		proxy_pass http://localhost:8080/; #后台API地址
	}
}

 try_files说明:

  1. 按指定的file顺序查找存在的文件,并使用第一个找到的文件进行请求处理
  2. 查找路径是按照给定的root或alias为根路径来查找的
  3. 如果给出的file都没有匹配到,则重新请求最后一个参数给定的uri,就是新的location匹配
  4. 如果是格式2,如果最后一个参数是 = 404 ,若给出的file都没有匹配到,则最后返回404的响应码

如果我们这里不进行配置,则在系统中执行页面刷新会报404错误。

配置中关于location /api/,这里的api不是我们随意定义的,需要跟前端进行约束,用来匹配前端请求接口的时候指定访问的接口是以:/api/xxxxx为格式,则会将这个请求代理成:

http://localhost:8080/xxxxx

这样以来,前端在请求接口的时候无需设置接口的URL具体地址,只需要通过一个约束的“api”前缀就可以进行接口请求了。

你可能感兴趣的:(运维,前端,nginx,linux,跨域)