19

我正在尝试遵循一些有关启动 apache2.2 的指南

我是 ubuntu 12.10

什么是 httpd.conf 文件,它与 vhost 文件相同吗?它位于哪里?我使用命令行进行了“查找”,但没有找到。这是否意味着我必须创建它?或者这在 apache 2.2 中已被弃用?我没有 Apache 2.4。我看到的链接似乎都引用了这个文件。

http://httpd.apache.org/docs/2.2/invoking.html

显示 apache 位于 usr/local/apache2,但是当我使用 apt-get 工具安装时,它并没有安装在那里。它在 /etc/apache2 中,这让我很失望。我有正确的目录吗?

我也没有 httpd.conf,也没有 conf 目录,但我有一个 conf.d,但我只是很难确定自己的方向。我还在教程中不断看到诸如“创建新站点”之类的内容,但我会要求更多背景知识,因为我不知道该怎么做。是虚拟主机吗?我找不到我的虚拟主机配置。

谢谢!

好吧,作为更新,我找到了一个很好的信息来源: https ://help.ubuntu.com/12.10/serverguide/httpd.html

我会删除我的问题,但对于其他任何人:

您在 ubuntu 12.10 上的虚拟主机文件,如果您使用sudo apt-get install apache2 的是 /etc/apache2/sites-available/default

它不称为虚拟主机,也没有文件扩展名。

伙计们,这对新手来说非常混乱。如此多的文档要求您查找 httpd.conf 文件,但如果您使用 sudo-apt-get install 安装 apache2,则从命令行执行简单的 find / *.conf 将一无所获。但是,如果您已经从 Apache 站点下载了 .zip 文件,那么您会突然获得大多数教程所讨论的所有内容。这需要解释清楚。/etc/apache2 中是否列出了等效的 httpd.conf 文件?我认为它实际上被称为“默认”?

这里有一些非常有用的链接;我会推荐他们而不是新手的官方文档。它可能会帮助您确定方向(就像我一样),然后文档可能更有意义。

http://articles.slicehost.com/2010/5/19/installing-apache-on-ubuntu

http://articles.slicehost.com/2010/5/19/apache-configuration-files-on-ubuntu

4

1 回答 1

39

这是一些额外的背景,以防万一。(这包含在您链接到的文档中,但它混合了描述、基本原理和一堆有关默认配置的其他信息。)

Debian 和 Ubuntu 中的 Apache 配置系统都会尝试进行设置,这样您就不必编辑基本的 httpd.conf。它设置了一堆你希望不必触及的默认值。相反,额外的配置被分成几个文件目录,所有这些文件都包含在 httpd.conf 中。

很多(可能是大多数)Apache 配置都有虚拟主机,通常不止一个。将特定虚拟主机的所有配置(特定<VirtualHost>配置块中的所有内容)放在一个单独的文件中,仅用于该虚拟主机,这很有用。Debian/Ubuntu 配置将这些文件存储在/etc/apache2/sites-available目录中。“可用”部分的原因是有一个系统可以使用a2ensiteand命令轻松启用和禁用虚拟主机,这些命令在 Apache 配置实际包含a2dissite的并行目录中创建和删除符号链接。/etc/apache2/sites-enabled您不应该sites-enabled正常触摸目录中的文件;相反,编辑或创建它们,sites-available然后使用a2ensitea2dissite启用和禁用特定的虚拟主机。

为了使您的配置保持干净和可维护,通常每个配置文件/etc/apache2/sites-enabled应仅包含一个<VirtualHost>块(如果同一主机有端口 80 和端口 443 配置,则应包含两个块)。任何特定虚拟主机之外的任何全局设置都不应进入该目录,而应进入/etc/apache2/conf.d.

可以从编辑default虚拟主机开始,但是随着您在构建 Apache 配置的路径上走得更远,我建议sites-available您为您正在配置的实际虚拟主机创建一个名为的新文件,并将其default用作模型(和然后使用 ) 禁用默认虚拟主机a2dissite default

于 2013-03-17T22:40:44.457 回答