This is strange: my Apache is configured with DirectoryIndex index.html,index.php
so when I type http://gustavopi-macmini.local/ it searches for index.php
and loads it ok if there is only html tags in the file.
But if I put some php script in index.php
, it loads index.html.en
instead (It Works!). However, if I type http://gustavopi-macmini.local/index.php it loads and executes the script.
Also, if I put an index.php
file in a subdirectory and type http://gustavopi-macmini.local/somesubdirectory/ it loads and executes index.php
normally as it should...
Why this strange behavior of "jumping" from a php script in the root occurring?
The order of the defined 'directory index' files also determine their priority.
In your situation, if both an index.html
and a index.php
are present, Apache will pick the index.html
.
To change this, change the order of the 'directory index' files;
DirectoryIndex index.php index.html
Read the documentation here:
http://httpd.apache.org/docs/2.2/mod/mod_dir.html
Don't put comma (,) between index.html and index.php and as it is said by "thaJeztah" the order in the directive DirectoryIndex is important and it defines the file that will be served if there is the two files index.html and index.php in the requested directory:
If you want to give priority to index.html write this:
DirectoryIndex index.html index.php
If you want to give priority to index.php write this:
DirectoryIndex index.php index.html