Munin在一个使用Apache虚拟主机的子域中

我正在尝试在我的服务器上安装Munin,并将Web界面configuration为在子域中工作。 我configuration了子域名stats.mysite.com并创build了文件/etc/apache2/sites-available/stats.mysite.com

 NameVirtualHost *:80 <VirtualHost *:80> ServerAdmin [email protected] ServerName stats.mysite.com ServerAlias www.stats.mysite.com DocumentRoot /var/cache/munin/www <Directory /> Options FollowSymLinks AllowOverride None </Directory> LogLevel notice CustomLog /var/log/apache2/access.log combined ErrorLog /var/log/apache2/error.log ServerSignature On </VirtualHost> 

然后,我使用下面的命令来启用我的网站:

 a2ensite stats.mysite.com 

并重新启动apache:

 sudo /etc/init.d/apache2 restart 

但它不工作。 当我在浏览器上访问stats.mysite.com时,会显示mysite.com的内容。 难道我做错了什么? 如果有人能帮助我,我将非常感激。

/etc/apache2/httpd.conf

 ServerName localhost 

/etc/munin/munin.conf

 # Example configuration file for Munin, generated by 'make build' # The next three variables specifies where the location of the RRD # databases, the HTML output, logs and the lock/pid files. They all # must be writable by the user running munin-cron. They are all # defaulted to the values you see here. # # dbdir /var/lib/munin # htmldir /var/cache/munin/www # logdir /var/log/munin # rundir /var/run/munin # # Where to look for the HTML templates # tmpldir /etc/munin/templates # (Exactly one) directory to include all files from. # includedir /etc/munin/munin-conf.d # Make graphs show values per minute instead of per second #graph_period minute # Graphics files are normaly generated by munin-graph, no matter if # the graphs are used or not. You can change this to # on-demand-graphing by following the instructions in # http://munin.projects.linpro.no/wiki/CgiHowto # #graph_strategy cgi # munin-cgi-graph is invoked by the web server up to very many times at the # same time. This is not optimal since it results in high CPU and memory # consumption to the degree that the system can thrash. Again the default is # 6. Most likely the optimal number for max_cgi_graph_jobs is the same as # max_graph_jobs. # #munin_cgi_graph_jobs 6 # If the automatic CGI url is wrong for your system override it here: # #cgiurl_graph /cgi-bin/munin-cgi-graph # munin-graph runs in parallel, the number of concurrent processes is # 6. If you want munin-graph to not be parallel set to 0. If set too # high it will slow down munin-graph. Some experiments are needed to # determine how many are optimal on your system. On a multi-core # system with good SCSI disks the number can probably be quite high. # #max_graph_jobs 6 # Drop [email protected] and [email protected] an email everytime # something changes (OK -> WARNING, CRITICAL -> OK, etc) #contact.someuser.command mail -s "Munin notification" [email protected] #contact.anotheruser.command mail -s "Munin notification" [email protected] # # For those with Nagios, the following might come in handy. In addition, # the services must be defined in the Nagios server as well. #contact.nagios.command /usr/bin/send_nsca nagios.host.comm -c /etc/nsca.conf # a simple host tree #[localhost.localdomain] # address 127.0.0.1 # use_node_name yes [stats.mysite.com] address 127.0.0.1 # A more complex example of a host tree # ## First our "normal" host. # [fii.foo.com] # address foo # ## Then our other host... # [fay.foo.com] # address fay # ## Then we want totals... # [foo.com;Totals] #Force it into the "foo.com"-domain... # update no # Turn off data-fetching for this "host". # # # The graph "load1". We want to see the loads of both machines... # # "fii=fii.foo.com:load.load" means "label=machine:graph.field" # load1.graph_title Loads side by side # load1.graph_order fii=fii.foo.com:load.load fay=fay.foo.com:load.load # # # The graph "load2". Now we want them stacked on top of each other. # load2.graph_title Loads on top of each other # load2.dummy_field.stack fii=fii.foo.com:load.load fay=fay.foo.com:load.load # load2.dummy_field.draw AREA # We want area instead the default LINE2. # load2.dummy_field.label dummy # This is needed. Silly, really. # # # The graph "load3". Now we want them summarised into one field # load3.graph_title Loads summarised # load3.combined_loads.sum fii.foo.com:load.load fay.foo.com:load.load # load3.combined_loads.label Combined loads # Must be set, as this is # # not a dummy field! # ## ...and on a side note, I want them listen in another order (default is ## alphabetically) # # # Since [foo.com] would be interpreted as a host in the domain "com", we # # specify that this is a domain by adding a semicolon. # [foo.com;] # node_order Totals fii.foo.com fay.foo.com # 

/etc/munin-node.conf

 # # Example config-file for munin-node # log_level 4 log_file /var/log/munin/munin-node.log pid_file /var/run/munin/munin-node.pid background 1 setsid 1 user root group root # Regexps for files to ignore ignore_file ~$ #ignore_file [#~]$ # FIX doesn't work. '#' starts a comment ignore_file DEADJOE$ ignore_file \.bak$ ignore_file %$ ignore_file \.dpkg-(tmp|new|old|dist)$ ignore_file \.rpm(save|new)$ ignore_file \.pod$ # Set this if the client doesn't report the correct hostname when # telnetting to localhost, port 4949 # #host_name localhost.localdomain # A list of addresses that are allowed to connect. This must be a # regular expression, since Net::Server does not understand CIDR-style # network notation unless the perl module Net::CIDR is installed. You # may repeat the allow line as many times as you'd like allow ^127\.0\.0\.1$ allow ^123\.45\.67\.89$ #the external ip of my server # If you have installed the Net::CIDR perl module, you can use one or more # cidr_allow and cidr_deny address/mask patterns. A connecting client must # match any cidr_allow, and not match any cidr_deny. Note that a netmask # *must* be provided, even if it's /32 # # Example: # # cidr_allow 127.0.0.1/32 # cidr_allow 192.0.2.0/24 # cidr_deny 192.0.2.42/32 # Which address to bind to; #host * host 127.0.0.1 # And which port port 4949 

/ etc / hosts文件

 127.0.0.1 localhost 127.0.1.1 ubuntu 123.45.67.89 nemo.mysite.com nemo 123.45.67.89 nemo.stats.mysite.com 

编辑

输出sudo apache2ctl -S

 [Fri May 03 11:46:39 2013] [warn] NameVirtualHost *:80 has no VirtualHosts VirtualHost configuration: wildcard NameVirtualHosts and _default_ servers: *:80 is a NameVirtualHost default server stats.mysite.com (/etc/apache2/sites-enabled/stats.mysite.com:3) port 80 namevhost stats.mysite.com (/etc/apache2/sites-enabled/stats.mysite.com:3) port 80 namevhost www.mysite.com (/etc/apache2/sites-enabled/mysite.com:4) 

从stats.mysite.com conf文件中删除NameVirtualHost *:80后:

 VirtualHost configuration: wildcard NameVirtualHosts and _default_ servers: *:80 is a NameVirtualHost default server stats.mysite.com (/etc/apache2/sites-enabled/stats.mysite.com:1) port 80 namevhost stats.mysite.com (/etc/apache2/sites-enabled/stats.mysite.com:1) port 80 namevhost www.mysite.com (/etc/apache2/sites-enabled/mysite.com:4) Syntax OK 

看看apache2ctl -S输出中的[WARN]并查看你的configuration文件中的stats.mysite.com,我猜测你有多于一次的NameVirtualHost *:80 ,这很可能导致这个问题。

从你的stats.mysite.com conf文件和任何其他特定于站点的文件中删除NameVirtualHost *:80 ,并将它放在/ etc / apache2的主apache2.conf文件的末尾附近。