• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 229
  • Last Modified:

Get server default index files with PHP

On a server it is possible to set default index files, for instance: index.html, default.asp, index.php, etc, etc...

Is there any way to get this list of default files using PHP? Like is there some server variable I can call to get this information.

Hopefully I've explained enough, if not let me know.
0
Hube02
Asked:
Hube02
  • 3
  • 2
1 Solution
 
pmessanaCommented:
Are you saying that if you hit URL http://www.asdfasdf.com/ you want to set the default file rendered?  If so, if you are running Apache you can set this in the httpd.conf file.

It is set with the DirectoryIndex.

eg: DirectoryIndex home.php index.php index.htm index.html

If this is not what you are talking about let me know.
0
 
Roger BaklundCommented:
If you have read access to the httpd.conf file, it could be done with something like this:
$conf = 'C:\Program files\Apache Software Foundation\Apache2.2\conf\httpd.conf';
foreach(file($conf) as $line)
  if(substr(trim($line),0,14)=='DirectoryIndex')
    $defaultfiles = array_filter(explode(' ',substr(trim($line),15)));
var_dump($defaultfiles);

Open in new window

0
 
Hube02Author Commented:
@crx: This is exactly what I'm looking for, sorta... Seems I should have been more specific about my needs. What I'm looking for may not even be possible.

To explain further:

The problem is that this may be an Apache server or IIS and that there is no way for me to know beforehand where the configuration file for the server is. As an example, the path you provided is likely valid for your setup, but on my local machine the file is located at c:\WebServer\Apache2\conf\httpd.conf

And in all likelihood, depending on the environment, the configuration file itself may not be readable by PHP. I would guess that for security measures on a shared hosting environment that the host would make these files inaccessible, at least I would if I were the admin.

I was hoping for a cross platform variable or something that might store this information.
0
[Webinar] Kill tickets & tabs using PowerShell

Are you tired of cycling through the same browser tabs everyday to close the same repetitive tickets? In this webinar JumpCloud will show how you can leverage RESTful APIs to build your own PowerShell modules to kill tickets & tabs using the PowerShell command Invoke-RestMethod.

 
Roger BaklundCommented:
>> I was hoping for a cross platform variable or something that might store this information.

Nothing that I am aware of, sorry.
0
 
Hube02Author Commented:
Not a problem, but you did give me something to think about.

The reason that I ask is that I am working on a user/permissions module for PHP. The system will allow the admin to choose files and folders that require a login and what level of permissions are required to access the folder or file. As this is built in PHP it can only control access to php files. I was looking for some way to detect if some php file, or what the default files and order of those files are. Then I could look into each of the folders on the server and make sure that it would be a php file that is loaded by default for the given folder. This would allow me to display a warning if it is not and direct them to change the default index file on their server (or contact the host to have them do it)

I'm exploring the possibilities.
0
 
Hube02Author Commented:
I have accepted the answer given by crx because, while it may not help me, it does answer the original question and the solution may be of some help to someone else.
0

Featured Post

Free Tool: ZipGrep

ZipGrep is a utility that can list and search zip (.war, .ear, .jar, etc) archives for text patterns, without the need to extract the archive's contents.

One of a set of tools we're offering as a way to say thank you for being a part of the community.

  • 3
  • 2
Tackle projects and never again get stuck behind a technical roadblock.
Join Now