title: Express app serving files from 'public' but not 'bower_components'
body: <p>I have an app built with Express 4. It is serving any files from the <code>public</code> directory fine, but throwing a <code>404</code> when attempting to access files served from <code>bower_components</code>. The dir structure is</p>
  
  <pre><code>|--myApp
      |--bin
      |--bower_components
          |--bootstrap
      |--node_modules
      |--public
          |--user
             |--stylesheets
      |--routes
      |--views
      |--app.js
  </code></pre>
  
  <p>In <code>app.js</code> I configure accordingly</p>
  
  <pre><code>app.use(express.static(path.join(__dirname, 'public')));
  app.use(express.static(path.join(__dirname, 'bower_components')));
  </code></pre>
  
  <p>and then in my <code>layout.jade</code></p>
  
  <pre><code>link(rel='stylesheet', href='/user/stylesheets/myStyle.css')
  link(rel='stylesheet', href='/bootstrap/dist/css/bootstrap.min.css')
  </code></pre>
  
  <p>When the app runs the public assets are served, but not the bower stuff. I look at the <code>Network</code> tab in Chrome Dev Tools, and see for <code>myStyle.css</code></p>
  
  <pre><code>https://localhost:5000/user/stylesheets/myStyle.css
  https://localhost:5000/bower_components/bootstrap/dist/css/bootstrap.min.css
  </code></pre>