尝试将Vue项目部署到Linux,顺便学一下Nginx
Nginx
Nginx (“engine x”) 是一个高性能的 HTTP 和反向代理服务器,特点是占有内存少,并发能力强,有报告表明能支持高达 50,000 个并发连接数。
Linux下安装
安装依赖
yum -y install gcc zlib zlib-devel pcre-devel openssl openssl-devel
到usr/local创建nginx,这是nginx默认安装位置
cd /usr/local
mkdir nginx
cd nginx
wget http://nginx.org/download/nginx-1.13.7.tar.gz
tar -xvf nginx-1.13.7.tar.gz
解压完进入
cd nginx-1.13.7
//执行命令 考虑到后续安装ssl证书 添加两个模块
./configure --with-http_stub_status_module --with-http_ssl_module
//执行make命令
make
//执行make install命令
make install
启动nginx
/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
配置
vi /usr/local/nginx/conf/nginx.conf
配置监听80端口、本地域名
当访问 80:/xx 就在/codeying/dist找 index.html
配置/api/,当监听到请求/api/** ,转向Springboot项目(9004)端口
listen 80;
server_name localhost;
#charset koi8-r;
#access_log logs/host.access.log main;
location / {
root /codeying/dist;
try_files $uri $uri/ /index.html;
index index.html index.htm;
}
location /api/{
proxy_pass http://42.192.67.888:9004/
}
重启
/usr/local/nginx/sbin/nginx -s reload
访问端口你配置的端口试试即可
如果不进行以上配置,则会返回以下页面,成功
命令
- 查看版本
./nginx -v - 启动
./nginx - 停止 nginx
./nginx -s stop - 重新加载 nginx
./nginx -s reload
配置文件
包含三部分内容
- (1)全局块:配置服务器整体运行的配置指令
比如worker_processes 1;
处理并发数的配置 - (2)events 块:影响 Nginx 与用户的网络连接
events {
worker_connections 1024; # 支持的最大连接数为 1024
}
- (3)http 块
还包含两部分:
http 全局块
server 块
正向代理
反向代理
如何让www.cying.com跳转到自己服务器的tomcat?
- 配置host,添加行
xx.xx.xx.xx www.cying.com
xx.xx.xx.xx是服务器地址- 在 nginx 进行请求转发的配置(反向代理配置)
location 指令说明
该指令用于匹配 URL。
语法如下:
1、= :用于不含正则表达式的 uri 前,要求请求字符串与 uri 严格匹配,如果匹配
成功,就停止继续向下搜索并立即处理该请求。
2、~:用于表示 uri 包含
正则表达式,并且区分
大小写。
3、~*:用于表示 uri 包含
正则表达式,并且不区分
大小写。
4、^~:用于不含正则表达式的 uri 前,要求 Nginx 服务器找到标识 uri 和请求字
符串匹配度最高的 location 后,立即使用此 location 处理请求,而不再使用 location
块中的正则 uri 和请求字符串做匹配。
注意:如果 uri 包含正则表达式,则必须要有 ~ 或者 ~* 标识。
负载均衡
将原先请求集中到单个服务器上的情况改为将请求分发到多个服务器上,将负载分发到不同的服务器,分发策略:
- 1.轮询,按照顺序分配
- 2.weight, 代表权,默认为 1,权重越高被分配的客户端越多
- 3.ip_hash,根据访问ip计算hash决定访问哪个服务器,可以解决session问题。
- 4.fair 按后端服务器的响应时间来分配请求,响应时间短的优先分配。
动静分离
为了加快网站的解析速度,可以把动态页面和静态页面由不同的服务器来解析,加快解析速度。降低原来单个服务器的压力。
高可用
防止宕机,多搞几个nginx呗
…