2014-11-03 53 views
0

我曾经有过我的Apache服务器加载它的文件:Apache的新的DocumentRoot

Library/Webserver/CGI-Executables/Location1 

我的新网站是在不同的位置:

Library/Webserver/CGI-Executables/Location2 

我改变了所有路径的httpd.conf链接到location1到location2。然后我重新启动了Apache服务器。首先,我杀了当前正在运行的服务器:

ps -ef | grep "httpd" 

这向我表明我成功地阻止了过程:

sudo apachectl stop 

然后使用检查我的日志。我的下一步是重新启动它:

sudo apachectl start 

再次检查日志,并且在那里有新的进程。 当我进入localhost/index.html(这是位置2的索引文件)时,它不起作用。但是,如果我输入localhost/index.php(位置1的索引文件),该网页的工作原理,这意味着Apache服务器仍然从位置1运行。

当我再次检查httpd.conf时,位置是仍然设置到位置2,所以这是我有点不知所措。从逻辑上看,这看起来应该起作用,但由于某种原因,它仍然指向旧路而不是新路。

我错过了一些至关重要的步骤吗?

+0

根据您的操作系统,Apache可能会读取一个名为apache2.conf的文件,但然后它会奇怪,它以前工作。 .. – SirDarius 2014-11-03 23:04:02

回答

0

检查'别名'....也许你有位置1路径指向某些别名路径,当你正在检查location1路径但不是别名时被选中。大多在httpd.conf cgi脚本路径默认情况下有Alias ....但是这是一个猜测解决方案,因为通常你遵循的步骤是正确的,应该已经工作了。检查'ScriptAlias'指令也为您的location1路径指向任何别名.....