I have a usual php/angular.js project, where my index.php file is in root / and the other files are in folders like /css or /bower-components and so on.
When I zip this and upload it to Elastic Beanstalk, I get a strange problem: AWS finds my index.php file, but for all other files like .js and .css Elastic Beanstalk inserts an extra folder in the url. I have absolutely no idea why.
Chances are this is due to how you are zipping up your code. But if you want to fix this without changing your zip all you need to do is tell Beanstalk what your "document root" is.
Using the Elastic Beanstalk web console:
Click on environment -> Configuration -> Software Configuration (Gear icon) -> Document Root. First option on page.
Set to: projectname