Angular ssr nginx 部署

![][0.7334094848489678]

Angular ssr nginx 部署

  1. 安装 node linux下载: Linux Binaries (x64) node下载不用编译直接设置环境变量即可,node安装好默认就安装了npm. node -v npm -v 来查看版本。
  2. 安装 pm2 使用这个来管理angular ssr 生成的服务器脚本main.js, 生成命令:npm run build:ssr 生成完后会在angular的根目录下生成dist/angular(这个是在你创建angular项目是的名称)/browser 和 server 目录, 在server里有个main.js 就是用来启动的js.
安装Pm2
npm install pm2 -g
使用Pm2 启动项目 (更多使用方式请参考pm2官网)
# 启动命令
pm2 start dist/angular/server/main.js --name angular.fujuhao.com

配置nginx (以下配置包含了ssl的配置)
server{
    listen 443 ssl http2;
    server_name angular.fujuhao.com;
    error_page 404 /;
    
    location / {
        proxy_set_header Host $host;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_pass http://127.0.0.1:4000/;
    }
    client_max_body_size 30m;

    # SSL-START SSL相关配置
    ssl_certificate /xxxx/ssl.pem;
    ssl_certificate_key /xxx/ssl.key;
    ssl_protocols TLSv1.1 TLSv1.2 TLSv1.3;
    ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;
    ssl_prefer_server_ciphers on;
    ssl_session_cache shared:SSL:10m;
    ssl_session_timeout 10m;
    error_page 497  https://$host$request_uri;
    #SSL-END
}
server {
    listen 80;
    server_name angular.fujuhao.com;
    rewrite ^/(.*)$ https://$host$request_uri;
}