我有一个Angular 4应用程序部署在带有Nginx的远程服务器上,可以使用以下地址访问:http://xx.xx.xx.xx/app
。该应用程序运行良好,我可以在我的网站中导航,但是当我刷新一个页面时,例如http://xx.xx.xx.xx/app/page1
,它会显示nginx的索引.html页面。
Nginx的页面位于/usr/share/nginx/html
,我的应用程序的页面位于/var/www/app
。
nginx.conf
server {
listen 80 default_server;
listen [::]:80 default_server;
server_name _;
root /usr/share/nginx/html;
include /etc/nginx/default.d/*.conf; */
location /app {
root /var/www;
try_files $uri $uri/ /index.html;
}
}
刷新期间似乎未考虑行root /var/www
。
我听说了一些关于try_files错误的事情,似乎我需要在某处添加重写。感谢您的帮助。
尝试在AppModule 中添加以下内容:
import { HashLocationStrategy, LocationStrategy } from '@angular/common';
@NgModule({
// ...
providers: [{provide: LocationStrategy, useClass: HashLocationStrategy}],
// ...
})
export class AppModule {}