Nginx 配置在二级目录下部署的Angular项目

angular nginx angular · ez · 于 4年前 发布 · 2618 次阅读

我们部署一个项目无非是域名(包含子域名)或子目录两种形式。 域名很简单了,直接配置个nginx的server,绑定域名即可。

如果是在已有的server中,挂接某个路径部署项目,通常有两种做法一个是代理服务器,另一个是使用aliasroot指令修改路径。

举个例子: 配置一个 www.bestyii.com 的php项目

server {
    listen 80;
    server_name bestyii.com www.bestyii.com;
    root        /var/html/com.bestyii.www/frontend/web/;
    index       index.php;

    location / {
        # Redirect everything that isn't a real file to index.php
        try_files $uri $uri/ /index.php$is_args$args;
    }

    location ~ \.php$ {
        include fastcgi_params;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        fastcgi_pass 127.0.0.1:9000;
        #fastcgi_pass unix:/var/run/php5-fpm.sock;
        try_files $uri =404;
    }

}

我们想要一个angular项目放在 www.bestyii.com/yii这个地址下 你需要这样配置一下 Nginx 服务器:

 location /yii {
    try_files $uri $uri/ /yii/index.html;
    alias /var/html/angular;
  }
共收到 1 条回复
warm#13年前 0 个赞

有个坑,angular编译的时候,入口文件的base路径要处理一下,一般为相对地址

原始:

<base href="/" />

改成:

<base href="./" />
添加回复 (需要登录)
需要 登录 后方可回复, 如果你还没有账号请点击这里 注册