有没有办法改变Apache VirtualHosts首先加载的顺序?

有没有办法改变Apache VirtualHosts首先加载的顺序?,apache,apache2,Apache,Apache2,我使用一个通配符子域来管理我的大多数请求,但我遇到了一个问题,即首先加载我的一个子域(比如wiki.domain.com) 我知道,在httpd.conf或其他文件中加载该文件只是一种先加载哪个虚拟主机的情况,但我使用的是一个敏感的站点来管理我的域(每个域的单独文件),据我所知,这意味着我没有真正的方法来确定哪些域是先“加载”的 我正在运行Ubuntu Hardy。我相信加载顺序是从/etc/apache2/sites enabled目录中的配置文件名开始的。因此,如果您想先加载一个,您可以将文

我使用一个通配符子域来管理我的大多数请求,但我遇到了一个问题,即首先加载我的一个子域(比如wiki.domain.com)

我知道,在httpd.conf或其他文件中加载该文件只是一种先加载哪个虚拟主机的情况,但我使用的是一个敏感的站点来管理我的域(每个域的单独文件),据我所知,这意味着我没有真正的方法来确定哪些域是先“加载”的


我正在运行Ubuntu Hardy。

我相信加载顺序是从/etc/apache2/sites enabled目录中的配置文件名开始的。因此,如果您想先加载一个,您可以将文件命名为000-wiki.domain.com(或a2ensite 000 wiki.domain.com)

出于好奇,为什么顺序对您很重要?

(因为这个问题与系统管理有关,所以它更适合您。)


在Debian和Ubuntu的默认配置下,站点按字母顺序加载(使用Apache指令),因此您可以通过更改站点名称来更改站点加载的顺序。(例如,Debian提供的默认站点实际上被命名为
000 default
,以便它很可能首先加载。)

要检查当前加载的虚拟主机(及其加载顺序):

在Ubuntu操作系统上,您还可以使用以下功能:

apache2ctl -S

老实说,我不能完全肯定。我只是想弄明白为什么通配符子域会遮蔽静态子域,这似乎是一个合乎逻辑的结论。而且,你的建议解决了这个问题!谢谢(顺便说一句,我会投票支持你,但我还没有15个代表:/me=newbie)顺序很重要,因为第一个Vhost配置具有最高优先级,并且将在其他人的名字无法匹配时使用:这是对OP问题的古老但完美的回答。但是,为什么要问“为什么顺序很重要”?他的问题表明他正在为一个v主机域进行“通配符”。这可能是对conf文件(000-、001-…等)进行排序/添加前缀的一个可能原因,尽管有其他方法可以实现这一点。@bshea四年前的一条评论已经指出这是
sudo apache2ctl-s
——除非您喜欢追踪错误消息。
apache2ctl -S