如何使用 a2ensite 启用所有站点配置(同时传递 000-default.conf && default-ssl.conf)?

15 configuration automation virtualhost apache2

我将 Ubuntu 服务器 16.04.2 与 Apache2 一起使用,我在其上存储我的个人网站。

为了启用/etc/apache2/sites-available(除了000-default.confssl-default.conf)下的所有 conf 文件,我转到/var/www/html并执行a2ensite.

然后我被告知:

Your choices are: 
000-default default-ssl domain.tld1 domain.tld2 domain.tld3 domain.tld4 
Which site(s) do you want to enable (wildcards ok)?
Run Code Online (Sandbox Code Playgroud)

然后我做了Ctrl+C旨在执行其他事情。

我正在寻找一种方法来自动启用所有站点 conf,而无需注意特定的 --- 我只想运行一个命令来启用我自己添加的所有站点 conf。

Zia*_*zis 24

也可以只在您的配置目录中使用 find 。

find /etc/apache2/sites-available/ -type f -and -not -name "*default*" -exec a2ensite {} \;
Run Code Online (Sandbox Code Playgroud)

这会找到名称中没有“default”的所有配置文件并激活它们。

  • 您还应该搜索具有“*.conf”扩展名的文件。否则 a2ensite 会抱怨该站点不存在 (2认同)

Sha*_*yal 11

您需要导航到/etc/apache2/sites-available然后运行命令:

sudo a2ensite *
Run Code Online (Sandbox Code Playgroud)

它将启用目录中的所有站点。(这些文件应该类似于 xxx.conf)

然后使用sudo service apache2 reload.

所以你的命令序列应该是这样的:

cd /etc/apache2/sites-available
sudo a2ensite *
sudo service apache2 reload
Run Code Online (Sandbox Code Playgroud)