I have a site where Ruby on Rails is running at the root directory via Phusion Passenger.  Some Apache Alias directives serve static HTML directories.
If you request an exact URL of a file from one of the static directories, Apache returns it as expected.  However, there are a few cases where I'm not getting the expected behavior.  Consider the alias Alias /functional /path/to/functional, where the functional directory contains index.php and hello.jpg.
- A request for https://example.com/functional/hello.jpg returns the JPEG file as expected.
- A request for https://example.com/functional/index.php runs the PHP script and prints the resulting HTML document as expected.
- A request for https://example.com/functional/ results in a 404 in the Rails stack.
- A request for https://example.com/functional (without the trailing slash) also results in a 404 in the Rails stack. Ideally this URL should return a 301 redirecting the user to http://example.com/functional/
If I add an index.html file into the functional directory (in addition to the index.php that is already there), paths #3 and #4 return that file as expected.
Here's the relevant parts from my Apache configuration file for Passenger:
LoadModule passenger_module /path/to/mod_passenger.so
LoadModule ssl_module modules/mod_ssl.so
<IfModule mod_passenger.c>
    # ... passenger setup stuff omitted ...
    Listen 443
    <VirtualHost *:443>
        ServerName ...
        DocumentRoot /path/to/rails/public
        PassengerRuby /path/to/ruby
        <Directory /path/to/rails/public>
            Allow from all
            Options -MultiViews
        </Directory>
        #  ... ssl setup omitted ...
    </VirtualHost>
</IfModule>
And for the static directories:
Alias /functional /path/to/functional/
Alias /phpMyAdmin /path/to/phpMyAdmin/
# ... other aliases omitted ...
<Directory /path/to/functional>
    DirectoryIndex index.php
    AllowOverride all
</Directory>
I've tried most of the answers in index.php not loading by default to make index.php load, to no prevail.  I shouldn't even need to specify DirectoryIndex index.php since that line is already in conf.d/php.conf.
Any ideas on how to solve this issue where Rails is giving 404s on URLs which are supposed to be going elsewhere in the Apache stack?
 
     
     
     
    