菜单

系统Nginx+Varnish+Angular universal实现服务端页面渲染缓存

2019年7月25日 - 皇家赌场系统

//检查陈设是或不是有误
Linux code: nginx -t

4.启动nginx
service nginx
start/restart/reload(修改配置后无需重启,reload就能够)/stop

2.装置证书
./certbot-auto certonly –webroot –agree-tos -v -t –email 邮箱地址 -w
网址根目录 -d 网址域名

//展开nginx.conf文件配置三个server
server {
 listen      80;  //监听的端口
 server_name  yourdiamond.com; //域名
 root        /usr/local/web/Panoramic; //文件路径
 location / {
  index  index.html; //主页
 }
}

//查看总计日志

//可相同的时候存在多少个backend,完成多域名还要选取varnish缓存
backend pcbeta {
    .host = “127.0.0.1”;
    .port = “4001”; 
}
//对无需动用cookie的页面屏蔽cookie检查,进步命中率,cookie差异varnish会感觉是例外的页面,这里只对蕴含home路径的页面进行检查

2.配备nginx以安装SSL证书 (
使用varnish时,无需nginx监听80端口,nginx监听443端口然后倒车到80端口即可)
//找到nginx配置文件所在目录
Linux code: nginx -t

正文永远更新链接地址

pm2 start /usr/local/web/PCbeta/server.js –watch -n PC_SSR_beta

1.修改varnish配置
//找到varnish所在目录
Linux code: whereis varnish

3.pm2命令
pm2 list  //列出装有应用
pm2 stop all  //甘休全体应用
pm2 stop name|app_id  //结束钦点的利用
pm2 restart name|app_id  //重启钦点的施用
pm2 logs  //查看日志

总的思路
1.nginx监听80端口将http重定向到https
2.nginx监听443端口,并将443端口的伸手转载到8080端口
3.varnish监听8080端口的乞请,借使与缓存中的页面相配,则赶回页面,若无相称的页面,则呼吁pm2开发银行的服务

varnishstat:总结未命中、命中、存款和储蓄消息、线程创制、删除对象等

3.证书的保藏期为七个月,需求更新证书
./certbot-auto renew

//停止
service varnish stop

系统 1

4.对此angular
universal应用,供给将转移的dist目录、dist-server目录、server.js一并复制到项目文件夹中

Nginx的设置与安插

Certbot证书配置

1.安装pm2
npm install pm2 -g

N的值和垂直比例尺展现在左上角的职位。水平刻度是对数的,命中标识是“|”,未命中标志是“#”。

Varnish

varnishtop:读取分享内部存款和储蓄器中的日志,同临时间会显得二个不断更新的列表

1.在nginx.conf文件中,新加贰个server,将443端口转载到8080端口
server {
    listen 443 ssl;
    server_name yourdiamond.com;
   
//将ssl证雅士成后的pem路线复制到ssl_certificate、ssl_certificate_key
    ssl_certificate /etc/******/fullchain.pem;
    ssl_certificate_key /etc/******/privkey.pem;
    location / {
        proxy_pass http://127.0.0.1:8080;
        proxy_set_header X-Real-IP  $remote_addr;
        proxy_set_header X-Forwarded-For
$proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto https;
        proxy_set_header X-Forwarded-Port 443;
        proxy_set_header Host $host;
    }
}

3.开启gzip
//在config文件中加入以下代码
gzip on;
gzip_min_length 1k;
gzip_buffers 4 16k;
gzip_comp_level 5;
gzip_types text/plain application/x-javascript text/css application/xml
text/javascript application/x-httpd-php;

//张开varnish.params,修改varnish监听的端口为8080,接收该端口的http诉求
VARNISH_LISTEN_PORT=8080

2.varnish命令
//启动
service varnish start

//打开 default.vcl
//修改指向服务器的地方和端口(pm2运营的端口)
backend pc {
    .host = “127.0.0.1”; //指向地面服务器
    .port = “伍仟”;  //监听陆仟端口运行的次序
}

Nginx配置SSL

git clone
cd certbot

varnishhist:读取varnishd分享内部存款和储蓄器日志,相同的时间生成二个老是不断更新的柱状图呈现最后N 个央浼的分布。

1.安装nginx
yum install nginx

PM2

//安装成功后会看到如此的音讯,在安排nginx时会用上
Congratulations! Your certificate and chain have been saved at:
  /etc/******/fullchain.pem
  Your key file has been saved at:
  /etc/******/privkey.pem
  Your cert will expire on 2018-06-28. To obtain a new or tweaked
  version of this certificate in the future, simply run certbot-auto
  again. To non-interactively renew *all* of your certificates, run
  “certbot-auto renew”

1.下载certbot
//安装git
yum install git

2.启动pm2
//运转参数
–watch 监视项目,如有改换自动重启
-n 为品种命名

总的流程
1.安装与布置nginx
2.安装SSL证书,nginx配置SSL
3.设置与开发银行PM2
4.装置与安顿varnish

sub vcl_recv{
    if (!(req.url ~ “^/home/”)) {
     unset req.http.Cookie;
    }
}

类型应用angular
universal达成服务端渲染,为了缓慢解决服务器的压力,需求将用户频仍寻访的页面进行缓存,那样就不要每一趟都去渲染同样的页面(举个例子首页),angular
universal在features中有提到记挂参加缓存,但就当前来讲,varnish是个不错的采用,可是varnish不帮助https,所以还要求用nginx实行端口的转化

相关文章

发表评论

电子邮件地址不会被公开。 必填项已用*标注

网站地图xml地图