我在AWS ec2实例上托管了我的角度项目。 实例已成功完成,网站正常运行。
什么时候提出要求 www.abc.com它可以工作,但是当我向www.abc.com/login提出要求时 它返回nginx错误
404未找到
app.routing.ts
const routes: Routes = [
{
path: '',
loadChildren: './layout/layout.module#LayoutModule',
canActivate: [AuthGuard]
},
{ path: 'signup', loadChildren: './signup/signup.module#SignupModule' },
{ path: 'login', loadChildren: './login/login.module#LoginModule' },
{ path: 'not-found', loadChildren: './not-found/not-found.module#NotFoundModule' },
{ path: '**', redirectTo: 'not-found' },
];
服务器配置nginx(已启用网站)
server {
listen 80 default_server;
listen [::]:80 default_server;
root /var/www/myfolder;
# Add index.php to the list if you are using PHP
index index.html index.htm index.nginx-debian.html;
server_name _;
location / {
try_files $uri $uri/ =404;
}
这是角度代码问题还是服务器配置问题? 怎么解决这个问题?
答案 0 :(得分:0)
我必须使用index.html更改= 404
正确的配置是
server {
listen 80 default_server;
listen [::]:80 default_server;
root /var/www/myfolder;
# Add index.php to the list if you are using PHP
index index.html index.htm index.nginx-debian.html;
server_name www.abc.com;
location / {
try_files $uri $uri/ /index.html;
}