Server Fault is a question and answer site for system and network administrators. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I have configured Apache to load KnowledgeTree (KT) through a subdomain.

# Part of http.conf file
NameVirtualHost *:80

<VirtualHost *:80>
    DocumentRoot /usr/local/apache2/htdocs

<VirtualHost *:80>
    DocumentRoot /usr/local/apache2/htdocs/knowledgetree

When I enter into the browser, I am supposed to see KT's login page.

Instead, I end up at and get the message:

Not Found

The requested URL /knowledgetree/login.php was not found on this server.

In light of the URL where I end up, the error message is understandable because there is not another knowledgetree folder inside the htdocs/knowledgetree folder.

When I go to, everything works as expected. The index.html file calls the control.php file in the same folder. If the control.php file sees that a login is necessary, it redirects to login.php (which is also in the same folder). Perfetct.

Unfortunately, control.php somehow prefixes 'login.php' with 'knowledgetree/' and spoils everything when is requested.

Is it possible to configure Apache to get around this or is it necessary to make a change in KT's source?

share|improve this question

Looks like this requires a change in the KnowledgeTree config.ini - see here.

Inside the [KnowledgeTree] section, set:

rootUrl = /
share|improve this answer
up vote 0 down vote accepted

In the knowledgetree database, in the config_settings table, change the value of rootUrl to an empty string and restart Apache.

Changing the values in config.ini has no effect. It is only used during setup.

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.