使用nginx从dist文件夹提供angular-cli

时间:2017-07-12 11:27:48

标签: angular nginx deployment production-environment

我尝试使用nginx从dist文件夹中提供angular-cli应用程序我使用此命令生成dist

ng build --prod

然后我将dist文件夹移动到我的服务器,这是我的nginx配置:

server {
    listen 80;

    server_name x.x.x.x;


    location /angular {

        proxy_http_version 1.1;
        root /usr/share/nginx/html/dist;
        index index.html index.htm;
        try_files $uri $uri/ angular/dist/index.html;
    }

}

现在,当我尝试达到x.x.x.x / angular时,我得到了404 Not Found

我的配置有什么问题?

1 个答案:

答案 0 :(得分:1)

  • 确保index.html head标记中包含<base href="/">

  • 您必须使用以下命令进行构建:

    ng build --prod --base-href http://x.x.x.x

  • 现在检查你的nginx服务器配置并重新启动nginx。

    server {
    
        listen 80;
    
        server_name http://x.x.x.x;
    
        root /path/to/your/dist/location;
    
        index index.html index.htm;
    
        location / {
    
            try_files $uri $uri/ /index.html;
    
            # This will allow you to refresh page in your angular app. Which will not give error 404.
    
        }
    
    }
    

有关详细信息,请查看this answer

希望它会有所帮助。