我已在 Ubuntu 20.04 笔记本电脑上成功安装了 Apache 网络服务器。
现在我需要知道如何更改配置文件,以便我可以放置我的 CGI 脚本(将在 Perl 中)。
从我在 Windows 10 下使用 Apache2.4 的经验来看,这很容易。我只是对文件进行了必要的更改httpd.conf
。在这种配置下,情况非常不同,所以我不确定如何进行必要的更改。我查看了文件apache2.conf
,发现该指令的声明ServerRoot
已被注释掉。
当我阅读有关如何安装 apache 的文章时,我看到了这样一句话:“如果此服务器上安装了 apache2-doc 软件包,则可以通过访问“手册”找到 Web 服务器本身的文档”。我运行了一个apt
命令并安装了该apache2-doc
软件包,但我该如何使用它呢?
我需要知道如何更改配置文件,以便我可以定义包含所有 Perl CGI 脚本的目录的位置。
答案1
在 Ubuntu(以及其他发行版)中,Apache 配置被组织在多个文件中,以便于维护和升级。您会发现:
/etc/apache2/apache2.conf
:全局配置的主配置文件,通常不鼓励修改此文件。/etc/apache2/conf-available/
:您可以在其中添加不同的配置文件以使一切井然有序。/etc/apache2/conf-enabled/
:包含来自/etc/apache2/conf-available
目录的符号链接的目录。此目录中的每个文件或符号链接都自动包含在内apache2.conf
。/etc/apache2/sites-available/
:保存站点配置文件的目录。如果您的 Apache 上托管了多个网站,则可以在此处保存多个文件,每个网站一个。否则,您只需使用000-default.conf
那里已经存在的文件即可。/etc/apache2/sites-enabled/
:包含来自/etc/apache2/sites-available
目录的符号链接的目录。此目录中的每个文件或符号链接都自动包含在内apache2.conf
。/etc/apache2/mods-available/
:存储所有可用 Apache 模块及其配置文件的目录。/etc/apache2/mods-enabled/
:包含来自/etc/apache2/mods-available
目录的符号链接的目录。此目录中的每个文件或符号链接都自动包含在内apache2.conf
。
有一些命令可以使创建和删除这些符号链接变得*-available
更*-enabled
容易一些,例如:
a2ensite
:通过创建符号链接来启用站点sites-enabled
。a2dissite
:通过从中删除符号链接来禁用站点sites-enabled
。a2enmod
:通过创建符号链接来启用模块mods-enabled
。a2dismod
:通过从中删除符号链接来禁用模块mods-enabled
。a2enconf
:通过创建符号链接来启用配置conf-enabled
。a2disconf
:通过从中删除符号链接来禁用配置conf-enabled
。
如果您的要求很简单,您很可能只需要使用站点配置修改文件/etc/apache2/sites-enabled/000-default.conf
。对于更复杂的场景,建议您使用自己的站点配置。