ServerRoot、DocumentRoot 和 Directory 之间的区别

Posted

技术标签:

【中文标题】ServerRoot、DocumentRoot 和 Directory 之间的区别【英文标题】:Difference between ServerRoot, DocumentRoot, and Directory 【发布时间】:2011-08-22 07:42:18 【问题描述】:

在使用 Apache 时,我在没有备份 httpd.config 文件的情况下弄乱了路径。

文件位于 C:\xampp\apache\conf\httpd.config

我想将我的 Web 项目作为虚拟文件夹保存在 D: 驱动器上。这是当前的非工作状态。如何解决此问题或恢复为 xampp 默认值?

ServerRoot "C:\xampp\apache"
DocumentRoot "D:\workspace"
<Directory "D:\workspace\AutionWebSite">

【问题讨论】:

【参考方案1】:

服务器根目录 "/Local" - 指定 Apache 安装的默认目录层次结构。

文档根目录"/Local/WWW/apache22/data" - 您将提供文件的目录。

【讨论】:

【参考方案2】:

我想说对您来说最简单的方法是检查您的 xampp 版本,备份您的文档根目录(可能是“www”或“htdocs”)、您的配置文件并最终转储您的数据库。现在再次安装相同版本的 xammp 就可以了。

至少第一条规则是玩“配置文件”,之前进行备份。第二条规则是,无论如何都要备份整个配置目录,以防万一。最后一个是,如果您是 xammp 用户,则意味着您是 windows 用户,因此您可能没有 unixoid 服务器管理知识,因此您要开始“玩” apache 服务器还有很长的路要走.

您应该知道的唯一想法是,您需要设置方向“AllowOverride All”,如果您使用某些内容管理系统或其他系统,则需要设置方向“AllowOverride All”,这会带来自己的 .htaccess 文件。只要您使用 xammp 而不是在 linux 或其他 unixoid 操作系统上工作,您就无法理解 web 服务器(如 apache)或数据库服务器(如 postgresql)的完整世界以及配置文件的敏感性。

我理解它对于理解整个 Web 应用程序方面的必要性。成为一名全栈 Web 程序员,但在此之前,我以后不会更改默认服务器配置,只需检查“AllowOverride All”行即可。希望这对您有所帮助。

【讨论】:

【参考方案3】: ServerRoot = 网络服务器可执行文件/目录的路径 DocumentRoot = 服务器提供的文件的路径 &lt;Directory&gt; 指令用于配置特定目录的设置。但是,您问题中的&lt;Directory&gt; 命令并不完整。

【讨论】:

【参考方案4】:

XAMPP 的 DocumentRoot 和 Directory 的默认值为“C:\xampp\htdocs”

【讨论】:

以上是关于ServerRoot、DocumentRoot 和 Directory 之间的区别的主要内容,如果未能解决你的问题,请参考以下文章

php5.5.6如何配置

apache学习教程

手动配置apachephp

配置 PHP Apache Msql

PC 上的 Apache 不以未找到 ServerRoot 开头

PC 上的 Apache 不以未找到 ServerRoot 开头