nginx 代理 SPA 单页应用

nginx 配置

/etc/nginx/sites-available/ 目录下创建网站配置文件:

sudo vim /etc/nginx/sites-available/avinzheng.com.conf

插入配置:

# avinzheng.com
server {
  listen 80;
  server_name avinzheng.com;

  location / {
    root /var/webroot/avinzheng.com;
    index index.html;
    try_files $uri $uri/ /index.html;
  }
}
  • listen 为监听的 HTTP 端口,一般为 80。
  • server_name 为绑定的域名,多个域名空格隔开,填写 _ 则表示使用 IP 直接访问。
  • root 为存放静态页面文件的目录,确保每一层目录权限至少为 755。
  • index 为首页文件,确保文件权限至少为 644。

建立符号链接到 /etc/nginx/sites-enabled/ 目录下:

sudo ln -s /etc/nginx/sites-available/avinzheng.com.conf /etc/nginx/sites-enabled/avinzheng.com.conf

重启 nginx 服务

验证 nginx 配置是否正确:

sudo nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

重启 nginx 服务:

sudo systemctl restart nginx