Angular应用程序URL与Nginx 403错误的应用程序目录内的实际目录path冲突

我有一个Angular应用程序的文件系统结构如下:

├── README.md ├── app │  ├── mycomp │  │  ├── mycomp.component.js │  │  ├── mycomp.module.js │  │  └── mycomp.template.html │  ├── app.config.js │  ├── app.css │  ├── app.module.js │  ├── app.spec.js │ ├── index.html ├── bower.json ├── e2e-tests ├── karma.conf.js ├── node_modules ├── package.json 

我的app.config.js有一个路由为:

 angular. module('MyApp'). config(['$locationProvider', '$stateProvider', '$urlRouterProvider', function config($locationProvider, $stateProvider, $urlRouterProvider) { $urlRouterProvider.otherwise('/home'); $locationProvider.html5Mode({ enabled: true }); var myCompState = { name: 'myComp', url: '/mycomp', template: '<mycomp></mycomp>' }; $stateProvider.state(myCompState); } ]); 

所以,当我打http://app.localhost/mycomp Nginx抛出403禁止错误,因为mycomp是一个目录,我想作为应用程序path访问它。

app内的mycomp目录只有.js.css.html文件。

我的Nginxconfiguration是:

 server { listen 80; server_name app.localhost; root /usr/local/AngularApp/app; location ~ \.(gif|jpg|jpeg|png|js|css)$ { } location / { try_files $uri $uri/ /index.html =404; } 

我怎样才能使Nginx的规则,如果它的目录像path即没有任何扩展它只使用,只有/index.html来解决它?