2013-08-21 85 views
3

我正試圖與流浪漢和廚師握手。如果我從混帳,結賬最新標籤下載Opscode公司的Apache2食譜,做我的Vagrantfile如下:流浪漢廚師和Apache2(404找不到)

# -*- mode: ruby -*- 
# vi: set ft=ruby : 

Vagrant::Config.run do |config| 
    config.vm.box = "precise64" 
    config.vm.box_url = "http://files.vagrantup.com/precise64.box" 
    config.vm.forward_port 80, 8080 

    config.vm.provision :chef_solo do |chef| 
    chef.cookbooks_path = "chef/cookbooks" 
    chef.add_recipe("apt") 
    chef.add_recipe("apache2") 
    chef.add_recipe("apache2::mod_rewrite") 
    end 
end 

...我結束了安裝和工作,但阿帕奇一個VM(一些挖後,我發現, )/ var/www不是documentroot它實際上是/ etc/apache2/htdocs

我是否需要向我的Vagrantfile添加一行來配置文檔根目錄?

任何幫助,將不勝感激!

遊客的Ubuntu 12.04

回答

6

該解決方案適合於Vagrantfile:

Vagrant.configure("2") do |config| 

    config.vm.box = "precise32" 
    config.vm.box_url = "http://files.vagrantup.com/precise32.box" 

    config.vm.network :forwarded_port, host: 8080, guest: 80 

    config.vm.provision "chef_solo" do |chef| 

     chef.add_recipe "apt" 
     chef.add_recipe "apache2" 

     chef.json = { 
      "apache" => { 
       "default_site_enabled" => true, 
       "docroot_dir" => "/vagrant" 
      } 
     } 

    end 

end 

這樣做的話你就不必每次推出一個網站通過SSH「流浪漢」起來。

+0

Thankyou非常簡潔,正是我所需要的。 – Tomeh

2

號在Vagrantfile您配置的虛擬機(如內存,主機名,端口),並且應該(在供給部件)上運行的食譜。但更改apache文檔根目錄需要更改apache配方。檢查出attributes/default.rb並更改所需的路徑。

+2

指向attributes/default.rb的錯誤鏈接=> https:// github。com/opscode-cookbooks/apache2/blob/master/attributes/default.rb –

1

這取決於你的Linux發行版,適用於Debian/Ubuntu的DocumentRoot的默認/var/www而對於RHEL/CentOS的/甲骨文/ Fedora的/ SUSE默認爲/var/www/html,爲Arch Linux的默認設置爲/srv/http

假設您使用的是標籤1.7.0。

可以

  1. (容易)編輯default['apache']['docroot_dir']attributes/default.rb
  2. 使用Custom JSON dataVagrantfile(相當於Node.js的一個廚師,單刀赴會),以覆蓋默認值。

注意:請確保編輯正確的分佈有關塊

0

我已經找到了解決方案,它實際上是相當基礎,在期間無業遊民了輸出粗略地看一眼給了回答。

[2013-08-25T14:30:51+00:00] INFO: execute[a2dissite default] sending restart action to service[apache2] (delayed) 

默認情況下,apache禁用默認站點。 ssh進入實例並運行

sudo a2ensite default 
sudo service apache2 restart 

修復了一些問題。

看着屬性/ default.rb我發現這行:

default['apache']['default_site_enabled'] = false 

現在,我不知道對改變這一屬性的最佳方法。 (?直接在這個文件我對此表示懷疑)