Las rutas de Angular.js no funcionan en WAMP

Estoy trabajando en la configuración de una aplicación de página única Angular.js creada con una pila Express, Node, mySQL. He configurado el siguiente código para las rutas:

angular.module('myApp', ['myApp.filters', 'myApp.services', 'myApp.directives']).
  config(['$routeProvider', '$locationProvider', function ($routeProvider, $locationProvider) {
     $routeProvider
      .when('/', {
        templateUrl: 'partials/index',
        controller: IndexCtrl
      })
      .when('/addPost', {
        templateUrl: 'partials/addPost',
        controller: AddPostCtrl
      })
      .when('/readPost/:id', {
        templateUrl: 'partials/readPost',
        controller: ReadPostCtrl
      })
      .when('/editPost/:id', {
        templateUrl: '/partials/editPost',
        controller: EditPostCtrl
      })
      .when('/deletePost/:id', {
        templateUrl: 'partials/deletePost',
        controller: DeletePostCtrl
      })
      .when('/todos', {
        templateUrl: 'partials/todos',
        controller: TodosCtrl
     })
     .otherwise({
        redirectTo: '/'
     });

    $locationProvider.html5Mode(true);
  }]);

Cuando voy a mi aplicación localhost: 3000 y luego hago clic en un enlace para localhost: 3000 / todos, todo funciona, sin embargo, cuando actualizo la página aparece el error "No se puede OBTENER / todos". Después de algunas investigaciones, descubrí que el problema es que cuando actualiza el servidor intenta cargar / todos y, dado que el recurso no existe, se produce un error. La solución parece ser configurar mod_rewrite para redirigir cualquier página al índice para que angular pueda enrutarla correctamente.

Así que me aseguré de que mod_rewrite no esté confirmado en httpd.conf y actualicé la siguiente sección:

<Directory />
    AllowOverride all
    Order Allow,Deny
    Allow from all
</Directory>

Luego creé un archivo .htaccess dentro de mi directorio raíz con app.js. Dentro del archivo .htaccess que creé, agregué el siguiente código:

<IFModule mod_rewrite.c>
    RewriteEngine on
    RewriteRule ^(.*)$ '/'
</IFModule>

Luego reinicié Apache y presioné actualizar en localhost: 3000 / todos y recibí el mismo mensaje "No se puede obtener / todos". ¿Qué estoy haciendo mal aquí?

Algunos pensamientos que tengo son

No sé en qué directorio poner .htaccess, así que lo puse en la raíz.No estoy seguro de que '/' sea el lugar correcto para enviar al usuario, quiero que vaya al índice, pero como solo tengo un archivo index.jade dentro de /public/index.jade, me pregunto si necesito señalarlo de alguna manera, pero la extensión de jade parece incorrecta.¿La RewriteRule que escribí va a llevar al usuario a la página de destino o la página correcta que actualizaron / marcaron, es decir, actualizar en localhost: 3000 / todos debería llevarlo a la página de todos, no a la página de inicio

Respuestas a la pregunta(2)

Su respuesta a la pregunta